Asterisk — это популярная платформа АТС с открытым исходным кодом для использования VoIP — шлюзов. Одним словом это онлайн-телефонное решение, используемое частными лицами, малым и крупным бизнесом, предприятиями и различными правительствами.
Asterisk использует протокол VoIP для совершения звонков через Интернет по протоколу TCP/IP вместо традиционной телефонной линии. Его функции включают голосовую почту, удержание с музыкой, конференц-связь, очередь вызовов, запись вызовов, интерактивный голосовой ответ, SMS-сообщения, автоматическое распределение вызовов и многое другое. Asterisk может быть установлен в операционных системах Linux, NetBSD, macOS и Solaris.
В этой статье подробно описано как выполняется установка Asterisk 18 на Ubuntu 20.04.
Возможно вас заинтересует:
ОГРАНИЧЕНИЕ НА ЗВОНКИ ДЛЯ ГРУППЫ НОМЕРОВ В ASTERISK
Установка 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 со звездочкой.
Далее выберите модули, которые вы хотите скомпилировать и установить. Чтобы получить доступ к меню, введите следующее:
$ sudo make menuselect
Выберите опцию “format_mp3” в меню, чтобы создать модуль MP3. Перейдите с помощью клавиш со стрелками, затем нажмите клавишу Ввод (Enter), чтобы выбрать нужный параметр. Выберите другие опции, которые вы хотите включить. Далее нажмите F12, чтобы сохранить и выйти из меню установки Asterisk.
Вы должны увидеть такой ответ терминала:
menuselect changes saved!
make[1]: Leaving directory '/home/linoxide/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 в Ubuntu
Мы создадим нового пользователя, от имени которого будет работать Asterisk. Выполните следующую команду, чтобы создать нового пользователя с именем asterisk
:
$ sudo adduser --system --group --home /var/lib/asterisk --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' …
Not creating home directory `/var/lib/asterisk'.
Чтобы настроить Asterisk для запуска от имени вновь созданного пользователя, откройте файл /etc/default/asterisk
и раскомментируйте следующие две строки в начале (просто удалите # перед строками).:
$ sudo nano /etc/default/asterisk
AST_USER="asterisk"
AST_GROUP="asterisk"
Затем добавьте пользователя asterisk
в следующие группы:
$ sudo usermod -a -G dialout,audio asterisk
Нам также необходимо изменить владельца всех файлов и папок 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 запущен, подключившись к интерфейсу командной строки (CLI) Asterisk, введя:
$ sudo asterisk -vvvr
Вы должны увидеть результат, аналогичный этому:
Connected to Asterisk GIT-18-804b1987fb currently running on linoxide (pid = 31426)
linoxide*CLI>
Теперь включите запуск службы при старте системы:
$ sudo systemctl enable asterisk
Настройка брандмауэра
Если у вас настроен брандмауэр, откройте порты HTTP и порты 5060,5061:
$ sudo ufw allow 5060/udp
$ sudo ufw allow 10000:20000/udp
Заключение
Поздравляю! Вы успешно установили и настроили сервер Asterisk в Ubuntu 20.04
Для получения дополнительной информации вы можете посетить официальный веб-сайт Asterisk.
А dahdi-tool я так понимаю нет здесь?