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

Установить Asterisk на Ubuntu

Asterisk — популярная платформа АТС с открытым исходным кодом для разработки коммуникационных приложений, таких как серверы конференций и шлюзы VoIP. Она используется частными лицами, малым бизнесом, крупными корпорациями и государственными учреждениями по всему миру.

К возможностям Asterisk относятся голосовая почта, музыка при удержании вызова, конференц-связь, очередь вызовов, запись вызовов, интерактивный голосовой ответ, отправка SMS-сообщений и многое другое.

В этом руководстве объясняется, как установить Asterisk в Ubuntu 20.04.

В репозиториях Ubuntu есть старая версия Asterisk. Мы установим последнюю версию Asterisk из исходного кода.

Предпосылки

Установите следующие пакеты, необходимые для загрузки и сборки Asterisk:

 sudo apt update sudo apt install wget build-essential git autoconf subversion pkg-config libtool

Установка DAHDI и LibPRI

DAHDI — это набор драйверов и утилит, позволяющий Asterisk взаимодействовать с аналоговыми и цифровыми телефонами. Библиотека LibPRI позволяет Asterisk взаимодействовать с ISDN-соединениями. Если эти библиотеки вам не нужны, пропустите этот раздел.

Перейдите в каталог /usr/src , загрузите и установите DAHDI:

 cd /usr/src/ sudo git clone -b next git://git.asterisk.org/dahdi/linux dahdi-linux cd dahdi-linux sudo make sudo make install
 cd /usr/src/ 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 /usr/src/ sudo git clone https://gerrit.asterisk.org/libpri libpri cd libpri sudo make sudo make install

Установка Asterisk

Клонируйте исходный код Asterisk в каталог /usr/src :

 cd /usr/src/ sudo git clone -b 18 https://gerrit.asterisk.org/asterisk asterisk-18

На момент написания статьи последняя версия Asterisk — 18.x. Если доступна более новая версия, измените номер ветки в команде выше.

Прежде чем продолжить выполнение следующих шагов, перейдите в исходный каталог Asterisk:

 cd asterisk-18/

Загрузите исходные файлы MP3, необходимые для сборки модуля MP3 и использования файлов MP3 в Asterisk:

 sudo contrib/scripts/get_mp3_source.sh

Запустите скрипт install_prereq для установки необходимых зависимостей:

 sudo contrib/scripts/install_prereq install

Скрипт configure выполняет несколько проверок, чтобы убедиться в наличии всех зависимостей в вашей системе. Запустите скрипт, введя:

 sudo ./configure

Следующий шаг — выбрать модули, которые вы хотите скомпилировать и установить. Для доступа к menuselect введите:

 sudo make menuselect

Выберите опцию «format_mp3», чтобы указать Asterisk на необходимость создания модуля MP3:

звездочка mp3

После завершения перейдите к кнопке «Сохранить и выйти» и нажмите «Ввод».

Запускаем процесс компиляции:

 sudo make -j2

Компиляция может занять некоторое время в зависимости от вашей системы. Вы можете изменить флаг -j в соответствии с количеством ядер вашего процессора.

После завершения установите Asterisk и его модули, введя:

 sudo make install

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

 sudo make samples

Или установите базовые файлы конфигурации АТС:

 sudo make basic-pbx

Последний шаг — установка сценария инициализации Asterisk, для чего введите:

 sudo make config

Также рекомендуется запустить ldconfig для обновления кэша общих библиотек:

 sudo ldconfig

Создание пользователя Asterisk

По умолчанию Asterisk работает от имени пользователя root. В целях безопасности мы создадим нового системного пользователя и настроим Asterisk для работы от имени этого пользователя.

Выполните следующую команду, чтобы создать нового системного пользователя с именем asterisk :

 sudo adduser --system --group --home /var/lib/asterisk --no-create-home --gecos "Asterisk PBX" asterisk

Чтобы настроить Asterisk для работы от имени пользователя asterisk , откройте файл /etc/default/asterisk и раскомментируйте следующие две строки:

 sudo nano /etc/default/asterisk

/etc/default/asterisk

 AST_USER="asterisk" AST_GROUP="asterisk"

Добавьте пользователя asterisk в группы dialout и audio :

 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

Вы увидите приглашение командной строки Asterisk по умолчанию:

 Connected to Asterisk GIT-18-263f906af4 currently running on ubuntu2004 (pid = 91303) ubuntu2004*CLI>

Последний шаг — включить запуск службы Asterisk при загрузке с помощью:

 sudo systemctl enable asterisk

Настройка брандмауэра

Брандмауэр защитит ваш сервер от нежелательного трафика.

Если на вашем сервере не настроен брандмауэр, вы можете ознакомиться с нашим руководством по настройке брандмауэра с помощью UFW в Ubuntu.

По умолчанию SIP использует UDP-порт 5060, для открытия порта выполните:

 sudo ufw allow 5060/udp

Если вы включили протокол реального времени (RTP), вам также необходимо открыть следующий диапазон портов:

 sudo ufw allow 10000:20000/udp

Вы можете свободно настраивать брандмауэр в соответствии со своими потребностями.

Заключение

Мы показали вам, как установить последнюю версию Asterisk из исходного кода на Ubuntu 20.04.

Чтобы узнать больше о настройке и использовании Asterisk, ознакомьтесь с официальной документацией и

Если у вас возникла проблема или вы хотите оставить отзыв, оставьте комментарий ниже.

ubuntu asterisk Не используете Ubuntu 20.04?
Выберите другую ОС:
центос 7 дебиан 9 убунту 18.04

Связанные руководства

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *