
Asterisk — самая популярная и широко распространённая платформа с открытым исходным кодом для разработки коммуникационных приложений. Её используют частные лица, малый бизнес, крупные корпорации и государственные учреждения по всему миру.
Возможности Asterisk включают конференц-связь, голосовую почту, музыку при удержании вызова, перевод вызовов, организацию очереди вызовов, запись вызовов, хранение/извлечение из базы данных и многое другое.
В этом руководстве мы покажем вам, как установить Asterisk 15 на Debian 9.
Более старая версия Asterisk (версия 13) доступна в репозитории программного обеспечения Debian и может быть установлена с помощью apt install asterisk .
Предпосылки
Прежде чем продолжить работу с этим руководством, убедитесь, что вы вошли в систему как пользователь с привилегиями sudo .
Обновите свой сервер Debian и установите пакеты, необходимые для загрузки и сборки Asterisk:
sudo apt update && sudo apt upgradesudo apt install wget build-essential subversion
Загрузка Asterisk
На момент написания статьи последней стабильной версией Asterisk является версия 15.
Перейдите в каталог /usr/src и загрузите исходный код Asterisk с помощью следующей команды wget :
cd /usr/src/sudo wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-15-current.tar.gz
После завершения загрузки используйте команду tar для извлечения архива:
sudo tar zxf asterisk-15-current.tar.gz
Прежде чем продолжить выполнение следующих шагов, обязательно перейдите в исходный каталог Asterisk:
cd asterisk-15.*/
Установка зависимостей Asterisk
Запустите следующий скрипт, чтобы загрузить исходные файлы MP3, необходимые для сборки модуля MP3 и использования файлов MP3:
sudo contrib/scripts/get_mp3_source.sh
Затем запустите скрипт install_prereq , чтобы разрешить все зависимости в вашей системе Debian:
sudo contrib/scripts/install_prereq install
Скрипт установит все необходимые пакеты и после успешного завершения выведет следующее сообщение:
############################################# ## install completed successfully #############################################
Здесь вы увидите телефонный код ITU-T по умолчанию — 61. Но в нашем случае, если вы находитесь в Северной Америке, как и я, вам нужно будет изменить его на 1.
Установка Asterisk
Запустите скрипт configure , который подготовит код Asterisk к компиляции:
sudo ./configure
После успешного завершения вы увидите следующий результат:

Следующий шаг — выбрать модули для компиляции и установки. Для доступа к системе Menuselect введите:
sudo make menuselect
Мы уже загрузили исходные файлы MP3, и теперь нам нужно указать Asterisk создать модуль MP3, выбрав format_mp3 :

После завершения нажмите F12 , чтобы сохранить изменения и выйти, или переключитесь на кнопку Save and Exit и нажмите Enter .
Запустите процесс компиляции с помощью команды make :
sudo make -j2
Компиляция может занять некоторое время в зависимости от вашей системы. Вы можете изменить флаг -j в соответствии с количеством ядер вашего процессора.
После завершения процесса сборки вы увидите следующее сообщение:

Установите Asterisk и его модули, введя:
sudo make install
После завершения установки вы увидите следующее сообщение:

Теперь, когда Asterisk установлен, следующим шагом будет установка примеров файлов конфигурации.
Вы можете установить общие файлы конфигурации с примерами документации, выполнив:
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/asterisksudo 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 по умолчанию:

Введите exit или нажмите CTRL+C чтобы выйти из Asterisk CLI.
Последний шаг — включить запуск службы Asterisk при загрузке:
sudo systemctl enable asterisk
Настройка брандмауэра
По умолчанию SIP использует UDP-порт 5060, для открытия порта выполните:
iptables -A INPUT -p udp -m udp --dport 5060 -j ACCEPT
Если вы включили протокол реального времени (RTP), вам также необходимо открыть следующий диапазон портов:
iptables -A INPUT -p udp -m udp --dport 10000:20000 -j ACCEPT
Вы можете свободно настраивать брандмауэр в соответствии со своими потребностями.
Заключение
В этом руководстве мы показали вам, как установить последнюю версию Asterisk из исходного кода в вашей системе Debian.
Теперь вам следует ознакомиться с документацией Asterisk и узнать больше о настройке и использовании Asterisk.
Если у вас возникла проблема или вы хотите оставить отзыв, оставьте комментарий ниже.
debian asterisk Не используете Debian 9?
Выберите другую ОС: центос 7 убунту 18.04 убунту 20.04
Связанные руководства
- Как добавить пространство подкачки в Debian 9
- Как установить Apache Maven на Debian 9
- Как настроить FTP-сервер с VSFTPD в Debian 9
- Как установить и настроить Redis в Debian 9
- Как установить Tomcat 9 на Debian 9
- Как установить Django на Debian 9 Linux
- Как установить и защитить phpMyAdmin с помощью Apache в Debian 9