Установка Asterisk на Ubuntu

Давайте рассмотрим как происходит установка Asterisk на Ubuntu. Последние события об отказе IBM от дальнейшей поддержки Centos подталкивают к выбору другой ОС. Из самых популярных и поддерживаемых это конечно Ubuntu, вот её и возьмем для наших экспериментов. Тестировать буду на самой свежей версии на данный момент Ubuntu 20.04 LTS и Asterisk 18.

Для удобства сразу перейдем в режим root

sudo su
Установка необходимого ПО

Установим необходимые пакеты для компиляции приложений

apt-get install build-essential git

Далее необходимо установить библиотеку PJSIP

cd /opt/
git clone https://github.com/pjsip/pjproject.git
cd pjproject
./configure CFLAGS="-DNDEBUG -DPJ_HAS_IPV6=1" --prefix=/usr --libdir=/usr/lib64 --enable-shared --disable-video --disable-sound --disable-opencore-amr
make dep
make
make install
ldconfig
Открываем порты в брандмауэре

Если у вас активирован брандмауэр необходимо открыть стандартные порты используемые asterisk

ufw allow 5060/udp
ufw allow 5060/tcp
ufw allow 10000:20000/udp

Предварительная подготовка закончена можно перейти к установке самой Asterisk

Установка Asterisk
cd /opt
wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-18-current.tar.gz
tar -xvf asterisk-*.tar.gz
cd asterisk-*/

Установим зависимости

./contrib/scripts/install_prereq install

По окончанию установки будет сообщение

install completed

Очистим систему от временных файлов установочного пакета

make distclean

Добавим возможность использования mp3

./contrib/scripts/get_mp3_source.sh

Конфигурация исходника Asterisk

./configure --libdir=/usr/lib64

После завершения работы команды конфигурации исходника будет изображение как на картинке ниже

Завершение конфигурации

Приступим к выбору дополнительных параметров Asterisk

make menuselect

В первом пункте меню Add-ons отмечаем * все записи под —Extended—

Make menu — addons

Переходим в пункт Codec Translators и выбираем все кодеки

Make menu — Codec Translators

Заходим в Core Sound Packages и выделяем звуковые пакеты с нужным вам языком, в моем случае это русский RU

Make menu — Core Sound Packages

И последним пунктом заходим в меню Music On Hold File Packages и отмечаем все пункты

Make menu — Music On Hold File Packages

Нажимаем кнопку Save & Exit

Перейдем к компиляции Asterisk из исходников

make

По окончанию отработки команды будет сообщение об успешном завершении

Asterisk Build Complete

Следом запустим

make install

Понять что все закончилось хорошо можно по сообщению

Asterisk Installation Complete

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

make samples

Выполним make config

make config

Создаем файл конфигурации

nano /etc/ld.so.conf.d/asterisk.conf

Добавляем в него путь к библиотекам Asterisk

/usr/lib64

Необходимо сохранить файл и выполнить команду

ldconfig

Включим ротацию логов Asterisk

make install-logrotate
Создаём пользователя asterisk

Для работы Asterisk необходимо создать пользователя и дать ему права

groupadd asterisk
useradd -r -d /var/lib/asterisk -g asterisk asterisk
usermod -aG audio,dialout asterisk

Поменяем владельца папок asterisk на вновь созданного пользователя

chown -R asterisk.asterisk /etc/asterisk
chown -R asterisk.asterisk /var/lib/asterisk
chown -R asterisk.asterisk /var/log/asterisk
chown -R asterisk.asterisk /var/spool/asterisk
chown -R asterisk.asterisk /usr/lib64/asterisk
Запуск сервиса от пользователя asterisk

Укажем сервису asterisk от какого пользователя запускаться. Откроем на редактирование файл asterisk.conf

nano /etc/asterisk/asterisk.conf

Найдем следующие строки и раскомментируем их

runuser = asterisk
rungroup = asterisk
runuser-asterisk

Сохраним файл и запустим asterisk

systemctl start asterisk

Проверить что сервис запустился можно узнав его статус

systemctl status asterisk
Asterisk status

Выделенный зеленым цветом статус active говорит о том что сервис запущен.

Добавим сервис asterisk в автозагрузку

systemctl enable asterisk
Проверка работы

Запустим консоль asterisk и удостоверимся что все работает

asterisk -r
pjsip show version

Как видно на картинке выше мы успешно вошли в консоль и выполнили команду pjsip show version сообщающую нам о версии библиотеки PJSIP.

Видео процесса установки asterisk на ubuntu смотрите ниже

Хотите отблагодарить автора статьи? Это даст ему дополнительный стимул к написанию новых статей.
Поделиться:
Подписаться
Уведомить о
guest
0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии