Как установить Asterisk 18 в Ubuntu 20.04 | Ubuntu 18.04
Asterisk — это популярная платформа PBX с открытым исходным кодом для разработки шлюзов VoIP. Это онлайн-телефонное решение, используемое частными лицами, малым и крупным бизнесом, предприятиями и правительствами различных стран.
Asterisk использует протокол VoIP для звонков через Интернет с использованием TCP / IP вместо традиционной наземной телефонной линии. Его функции включают голосовую почту, музыку на удержании, конференц-связь, постановку вызовов в очередь, запись вызовов, интерактивный голосовой ответ, обмен SMS-сообщениями, автоматическое распределение вызовов и многое другое. Asterisk можно установить в нескольких операционных системах, в том числе в Linux, NetBSD, macOS и Solaris.
В этом руководстве мы узнаем, как установить Asterisk 18 на Ubuntu 20.04 .
Предпосылки
В репозиториях Ubuntu мы можем найти пакет Asterisk, но это более старая версия. Чтобы получить последнюю версию, вам необходимо установить Asterisk из исходников.
Сначала обновите вашу систему Ubuntu:
$ sudo apt update
Затем установите необходимые пакеты, необходимые для компиляции Asterisk из исходников:
$ sudo apt install wget build-essential git autoconf subversion pkg-config libtool
Установка DAHDI и LibPRI
DAHDI — это дополнительный инструмент, который позволяет Asterisk обмениваться данными с аналоговыми и цифровыми телефонами. Библиотека LibPRI используется для связи с соединениями ISDN. Если вам не нужны эти библиотеки, игнорируйте этот раздел.
$ sudo git clone -b next git://git.asterisk.org/dahdi/linux dahdi-linux
$ cd dahdi-linux
$ sudo make
$ sudo make install
$ cd ..
$ sudo git clone -b next git://git.asterisk.org/dahdi/tools dahdi-tools
$ cd dahdi-tools
$ sudo autoreconf -i
$ sudo ./configure
$ sudo make install
$ sudo make install-config
$ sudo dahdi_genconf modules
Выполните следующие команды для компиляции и сборки LibPRI:
$ cd ..
$ sudo git clone https://gerrit.asterisk.org/libpri libpri
$ cd libpri
$ sudo make
$ sudo make install
Установите Asterisk на Ubuntu
Сначала клонируйте репозиторий исходного кода Asterisk (это может занять некоторое время):
$ sudo git clone -b 18 https://gerrit.asterisk.org/asterisk asterisk-18
На момент написания этого руководства последней версией Asterisk была 18.7.2, которую мы собираемся скомпилировать и установить.
Затем загрузите исходники MP3 с помощью сценария оболочки, который необходим для сборки модуля MP3 и использования файлов MP3 в Asterisk:
$ sudo contrib/scripts/get_mp3_source.sh
Запустите install_prereq
скрипт для установки необходимых зависимостей (этот шаг также займет некоторое время):
$ sudo contrib/scripts/install_prereq install
В середине процесса вам будет предложено ввести телефонный код вашего региона:
Когда он завершится, вывод должен быть:
Processing triggers for libglib2.0-0:amd64 (2.64.6-1~ubuntu20.04.4) … Processing triggers for libc-bin (2.31-0ubuntu9.2) … Processing triggers for systemd (245.4-4ubuntu3.13) … Processing triggers for man-db (2.9.1-1) … Processing triggers for install-info (6.7.0.dfsg.2-5) … Setting up libgmime-2.6-dev (2.6.23+dfsg1-4) … Setting up libgmime-3.0-dev:amd64 (3.2.7-1) … ####################################### ## install completed successfully #######################################
Теперь нам нужно проверить, присутствуют ли все зависимости в вашей системе, чтобы скомпилировать исходный код. Затем выполните следующую команду:
$ sudo ./configure
В конце вас встретит красивый логотип ASCII Asterisk.
Затем выберите модули, которые вы хотите скомпилировать и установить. Чтобы получить доступ к меню, введите следующее:
$ sudo make menuselect
Выберите в меню опцию «format_mp3», чтобы создать модуль MP3. Перемещайтесь с помощью клавиш со стрелками, затем нажмите Enter, чтобы выбрать параметр. Выберите любой другой вариант, который хотите включить. Теперь нажмите F12, чтобы сохранить и закрыть экран.
Вы должны увидеть аналогичный вывод терминала:
menuselect changes saved!
make[1]: Leaving directory '/home/infoit/asterisk-18'
Чтобы начать компиляцию исходного кода, выполните команду make:
$ sudo make -j2
В зависимости от того, сколько ядер ЦП у вашего компьютера, вы можете настроить параметр -j в соответствии с количеством ядер вашего ПК, чтобы ускорить время компиляции.
Если все прошло успешно, вы должны получить:
+--------- Asterisk Build Complete ---------+
+ Asterisk has successfully been built, and +
+ can be installed by running: +
+ +
+ make install +
+-------------------------------------------+
После завершения компиляции установите Asterisk и его модули, набрав:
$ sudo make install
Вы можете установить общие файлы конфигурации:
$ sudo make samples
Также установите базовые файлы конфигурации АТС:
$ sudo make basic-pbx
Наконец, запустите следующее, чтобы установить сценарий инициализации Asterisk и обновить кеш общих библиотек:
$ sudo make config
$ sudo ldconfig
Создать пользователя Asterisk
По соображениям безопасности рекомендуется создать пользователя без полномочий root для запуска Asterisk. Мы создадим нового системного пользователя, от имени которого будет работать Asterisk. Выполните следующую команду, чтобы создать нового пользователя с именем asterisk
:
$ sudo adduser --system --group --no-create-home --gecos "Asterisk PBX" asterisk
Результат должен быть:
Adding system user asterisk' (UID 114) ... Adding new groupasterisk' (GID 120) …
Adding new user asterisk' (UID 114) with groupasterisk' …
Чтобы настроить Asterisk для запуска от имени вновь созданного пользователя, откройте /etc/default/asterisk
файл и раскомментируйте следующие две строки в начале (удалите # перед строками):
$ sudo nano /etc/default/asterisk
AST_USER="asterisk"
AST_GROUP="asterisk"
Затем добавьте asterisk
пользователя в следующие группы:
$ sudo usermod -a -G dialout,audio asterisk
Нам также необходимо изменить владельца и все файлы и папки звездочки, чтобы Asterisk могла получить доступ к этим файлам:
$ sudo chown -R asterisk: /var/{lib,log,run,spool}/asterisk /usr/lib/asterisk /etc/asterisk
$ sudo chmod -R 750 /var/{lib,log,run,spool}/asterisk /usr/lib/asterisk /etc/asterisk
Запуск Asterisk
Все, что осталось сделать, это запустить службу Asterisk с помощью следующей команды:
$ sudo systemctl start asterisk
Убедитесь, что Asterisk работает, подключившись к интерфейсу командной строки Asterisk (CLI), набрав:
$ sudo asterisk -vvvr
Вы должны увидеть результат, подобный этому:
Connected to Asterisk GIT-18-804b1987fb currently running on infoit (pid = 31426)
infoit*CLI>
Теперь включите запуск службы при загрузке:
$ sudo systemctl enable asterisk
Настроить брандмауэр
Если у вас настроен брандмауэр, откройте порты HTTP и порты 5060,5061:
$ sudo ufw allow 5060/udp
$ sudo ufw allow 10000:20000/udp
Заключение
Поздравляю! Вы успешно установили и настроили сервер Asterisk в Ubuntu 20.04.
Для получения дополнительной информации вы можете посетить официальный сайт Asterisk