Как установить Asterisk 18 в Ubuntu 20.04 | Ubuntu 18.04

Как установить 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

В середине процесса вам будет предложено ввести телефонный код вашего региона:

Как установить Asterisk 18 в Ubuntu 20.04

Когда он завершится, вывод должен быть:

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

Как установить Asterisk 18 в Ubuntu 20.04

Выберите в меню опцию «format_mp3», чтобы создать модуль MP3. Перемещайтесь с помощью клавиш со стрелками, затем нажмите Enter, чтобы выбрать параметр. Выберите любой другой вариант, который хотите включить. Теперь нажмите F12, чтобы сохранить и закрыть экран.

Как установить Asterisk 18 в Ubuntu 20.04

Вы должны увидеть аналогичный вывод терминала:

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