Установка Asterisk 16 на Debian 9 Stretch
Рассмотрим как выполнить установку из исходников Asterisk 16 на Debian 9 Stretch.
Подготовка системы
JUQwJTlGJUQwJUI1JUQxJTgwJUQwJUI1JUQwJUI0JTIwJUQwJUJEJUQwJUIwJUQxJTg3JUQwJUIwJUQwJUJCJUQwJUJFJUQwJUJDJTIwJUQxJTgzJUQxJTgxJUQxJTgyJUQwJUIwJUQwJUJEJUQwJUJFJUQwJUIyJUQwJUJBJUQwJUI4JTIwJUQwJUJFJUQwJUIxJUQwJUJEJUQwJUJFJUQwJUIyJUQwJUJCJUQxJThGJUQwJUI1JUQwJUJDJTIwJUQxJTgxJUQwJUI4JUQxJTgxJUQxJTgyJUQwJUI1JUQwJUJDJUQxJTgzJTIwJUQwJUI0JUQwJUJFJTIwJUQwJUIwJUQwJUJBJUQxJTgyJUQxJTgzJUQwJUIwJUQwJUJCJUQxJThDJUQwJUJEJUQwJUJFJUQwJUIzJUQwJUJFJTIwJUQxJTgxJUQwJUJFJUQxJTgxJUQxJTgyJUQwJUJFJUQxJThGJUQwJUJEJUQwJUI4JUQxJThGJTNB
apt-get update && apt-get upgrade -y
Устанавливаем необходимые зависимости:
apt-get install linux-headers-amd64 gcc make autoconf libtool libical-dev pkg-config default-libmysqlclient-dev -y
Устанавливаем DAHDI, LibPRI, libSTRP
Скачиваем исходники (dahdi, libpri, libstrp, asterisk) и распаковываем их:
wget http://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/dahdi-linux-complete-current.tar.gz wget http://downloads.asterisk.org/pub/telephony/libpri/libpri-current.tar.gz wget https://github.com/cisco/libsrtp/archive/v2.2.0.tar.gz wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-16-current.tar.gz tar -zxvf dahdi-linux-complete-current.tar.gz tar -zxvf libpri-current.tar.gz tar -zxvf v2.2.0.tar.gz tar -zxvf asterisk-16-current.tar.gz
Собираем (dahdi, libpri, libstrp, jansson) из исходников и устанавливаем:
cd dahdi-linux-complete-3.* make all make install make config cd ..
cd libpri-1.6.0/ make make install cd ..
cd libsrtp-2.2.0/ ./configure make make runtest make install cd ..
Установка Asterisk
Выполняем скрипт, который проверит какие еще необходимо установить зависимости, для работы Asterisk:
cd asterisk-16.* ./contrib/scripts/install_prereq install -y
В процессе установки, необходимо будет задать телефонный код, оставляем по-умолчанию 7 (Россия).
Выполняем конфигурацию с поддержкой pjproject, mysqlclient, добавляем поддержку mp3 и запускаем меню выбора устанавливаемых компонентов:
./configure --with-pjproject-bundled --with-jansson-bundled --with-mysqlclient ./contrib/scripts/get_mp3_source.sh make menuselect
Выбираем:
- Add-ons — поддержка format_mp3, res_config_mysql, app_mysql, cdr_mysq.
- Core Sound Packeges — CORE-SOUNDS-EN-ULAW, CORE-SOUNDS-EN-ALAW, CORE-SOUNDS-EN-GSM, CORE-SOUNDS-EN-G729, CORE-SOUNDS-RU-ULAW, CORE-SOUNDS-RU-ALAW, CORE-SOUNDS-RU-GSM, CORE-SOUNDS-RU-G729
JUQwJTlFJUQxJTgxJUQxJTgyJUQwJUIwJUQwJUJCJUQxJThDJUQwJUJEJUQwJUJFJUQwJUI1JTIwJUQxJThGJTIwJUQwJUJFJUQxJTgxJUQxJTgyJUQwJUIwJUQwJUIyJUQwJUJCJUQxJThGJUQxJThFJTIwJUQwJUJGJUQwJUJFLSVEMSU4MyVEMCVCQyVEMCVCRSVEMCVCQiVEMSU4NyVEMCVCMCVEMCVCRCVEMCVCOCVEMSU4RS4=
Выполняем компиляцию исходников asterisk, затем выполняем установку astersik, создание шаблонов файлов конфигурации asterisk и завершаем установку asterisk:
make make install make samples make config ldconfig update-rc.d -f asterisk remove cd ..
Добавляем asterisk в автозагрузку:
systemctl enable asterisk
JUQwJUExJUQwJUJFJUQwJUI3JUQwJUI0JUQwJUIwJUQwJUI1JUQwJUJDJTIwJUQwJUJGJUQwJUJFJUQwJUJCJUQxJThDJUQwJUI3JUQwJUJFJUQwJUIyJUQwJUIwJUQxJTgyJUQwJUI1JUQwJUJCJUQxJThGJTIwKGFzdGVyaXNrKSUyQyUyMCVEMCVCRSVEMSU4MiUyMCVEMCVCQSVEMCVCRSVEMSU4MiVEMCVCRSVEMSU4MCVEMCVCRSVEMCVCMyVEMCVCRSUyMCVEMCVCMSVEMSU4MyVEMCVCNCVEMCVCNSVEMSU4MiUyMCVEMSU4MCVEMCVCMCVEMCVCMSVEMCVCRSVEMSU4MiVEMCVCMCVEMSU4MiVEMSU4QyUyMGFzdGVyaXNrLiUyMCVEMCU5RCVEMCVCMCVEMCVCNyVEMCVCRCVEMCVCMCVEMSU4NyVEMCVCMCVEMCVCNSVEMCVCQyUyMCVEMCVCRiVEMSU4MCVEMCVCMCVEMCVCMiVEMCVCMCUyMCVEMCVCRCVEMCVCMCUyMCVEMCVCQSVEMCVCMCVEMSU4MiVEMCVCMCVEMCVCQiVEMCVCRSVEMCVCMyVEMCVCOCUyMGFzdGVyaXNrJTNB
adduser asterisk --no-create-home --disabled-password --gecos "Asterisk User" chown asterisk. /var/run/asterisk chown -R asterisk. /etc/asterisk chown -R asterisk. /var/{lib,log,spool}/asterisk chown -R asterisk. /usr/lib/asterisk
В файле конфигурации asterisk (/etc/default/asterisk), укажет от какого пользователя будет выполнятся запуск asterisk:
AST_USER=«asterisk» AST_GROUP=«asterisk»
JUQwJTkyJUQxJThCJUQxJTgxJUQxJTgyJUQwJUIwJUQwJUIyJUQwJUJCJUQxJThGJUQwJUI1JUQwJUJDJTIwJUQwJUJGJUQxJTgwJUQwJUIwJUQwJUIyJUQwJUIwJTIwJUQwJUJEJUQwJUIwJTIwJUQxJTg0JUQwJUIwJUQwJUI5JUQwJUJCJTIwYXN0ZXJpc2suY3RsJTIwJUQwJUIyJTIwJUQxJTg0JUQwJUIwJUQwJUI5JUQwJUJCJUQwJUI1JTIwKCUyRmV0YyUyRmFzdGVyaXNrJTJGYXN0ZXJpc2suY29uZiklMjAlRDAlQjIlMjAlRDElODAlRDAlQjAlRDAlQjclRDAlQjQlRDAlQjUlRDAlQkIlRDAlQjUlMjAlNUJmaWxlcyU1RCUyMCVEMCVCMiVEMSU4QiVEMSU4MSVEMSU4MiVEMCVCMCVEMCVCMiVEMCVCQiVEMSU4RiVEMCVCNSVEMCVCQyUyMCVEMSU4MSVEMCVCQiVEMCVCNSVEMCVCNCVEMSU4MyVEMSU4RSVEMSU4OSVEMSU4MyVEMSU4RSUyMCVEMCVCQSVEMCVCRSVEMCVCRCVEMSU4NCVEMCVCOCVEMCVCMyVEMSU4MyVEMSU4MCVEMCVCMCVEMSU4NiVEMCVCOCVEMSU4RSUzQQ==
[files] astctlpermissions = 0660 astctlowner = asterisk astctlgroup = asterisk astctl = asterisk.ctl
JUQwJUEzJUQwJUJBJUQwJUIwJUQwJUI2JUQwJUI1JUQwJUJDJTIwJUQwJUJBJUQwJUJFJUQxJTgwJUQxJTgwJUQwJUI1JUQwJUJBJUQxJTgyJUQwJUJEJUQxJThCJUQwJUI5JTIwJUQwJUJGJUQxJTgzJUQxJTgyJUQxJThDJTIwJUQwJUJBJTIwJUQxJTg0JUQwJUIwJUQwJUI5JUQwJUJCJUQxJTgzJTIwJUQwJUJBJUQwJUJFJUQwJUJEJUQxJTg0JUQwJUI4JUQwJUIzJUQxJTgzJUQxJTgwJUQwJUIwJUQxJTg2JUQwJUI4JUQwJUI4JTIwUkFESVVTJTIwJUQwJUIyJTIwJUQxJTg0JUQwJUIwJUQwJUI5JUQwJUJCJUQwJUIwJUQxJTg1JTIwKCUyRmV0YyUyRmFzdGVyaXNrJTJGY2RyLmNvbmYpJTIwJUQwJUI4JTIwKCUyRmV0YyUyRmFzdGVyaXNrJTJGY2VsLmNvbmYpJTNB
[radius] radiuscfg => /etc/radcli/radiusclient.conf
JUQwJTk1JUQxJTgxJUQwJUJCJUQwJUI4JTIwJUQwJUJEJUQwJUI1JTIwJUQxJTgxJUQwJUJBJUQwJUJFJUQxJTgwJUQxJTgwJUQwJUI1JUQwJUJBJUQxJTgyJUQxJTgwJUQwJUI4JUQxJTgwJUQwJUJFJUQwJUIyJUQwJUIwJUQxJTgyJUQxJThDJTIwJUQwJUJGJUQxJTgzJUQxJTgxJUQxJTgyJUQxJThDJTIwJUQwJUJBJTIwJUQxJTg0JUQwJUIwJUQwJUI5JUQwJUJCJUQxJTgzJTIwJUQwJUJBJUQwJUJFJUQwJUJEJUQxJTg0JUQwJUI4JUQwJUIzJUQxJTgzJUQxJTgwJUQwJUIwJUQxJTg2JUQwJUI4JUQwJUI4JTIwUkFEVUlTJTJDJTIwJUQxJTgyJUQwJUJFJTIwJUQwJUJGJUQxJTgwJUQwJUI4JTIwJUQwJUI3JUQwJUIwJUQwJUJGJUQxJTgzJUQxJTgxJUQwJUJBJUQwJUI1JTIwQXN0ZXJpc2slMjAlRDAlQjElRDElODMlRDAlQjQlRDElODMlRDElODIlMjAlRDAlQkYlRDAlQkUlRDElOEYlRDAlQjIlRDAlQkIlRDElOEYlRDElODIlRDElOEMlRDElODElRDElOEYlMjAlRDElODElRDAlQkIlRDAlQjUlRDAlQjQlRDElODMlRDElOEUlRDElODklRDAlQjglRDAlQjUlMjAlRDAlQkUlRDElODglRDAlQjglRDAlQjElRDAlQkElRDAlQjglM0E=
● asterisk.service - LSB: Asterisk PBX Loaded: loaded (/etc/init.d/asterisk; generated; vendor preset: enabled) Active: active (running) since Sun 2019-12-08 18:10:50 MSK; 6s ago Docs: man:systemd-sysv-generator(8) Process: 30643 ExecStop=/etc/init.d/asterisk stop (code=exited, status=0/SUCCESS) Process: 30651 ExecStart=/etc/init.d/asterisk start (code=exited, status=0/SUCCESS) Tasks: 81 (limit: 4915) CGroup: /system.slice/asterisk.service └─30666 /usr/sbin/asterisk -U asterisk -G asterisk дек 08 18:10:50 sysos systemd[1]: Stopped LSB: Asterisk PBX. дек 08 18:10:50 sysos systemd[1]: Starting LSB: Asterisk PBX... дек 08 18:10:50 sysos asterisk[30651]: Starting Asterisk PBX: asterisk. дек 08 18:10:50 sysos systemd[1]: Started LSB: Asterisk PBX. дек 08 18:10:51 sysos asterisk[30666]: radcli: rc_read_config: rc_read_config: can't open /usr/local/etc/radiusclient-ng/radiusclient.conf: No such file or directory дек 08 18:10:51 sysos asterisk[30666]: radcli: rc_read_config: rc_read_config: can't open /etc/radiusclient-ng/radiusclient.conf: No such file or directory
Перезапускаем asterisk и входим в его консоль управления:
systemctl stop asterisk systemctl start asterisk asterisk -rv
Если все сделали правильно, то увидите следующее:
Asterisk 16.6.2, Copyright (C) 1999 - 2018, Digium, Inc. and others. Created by Mark Spencer <markster@digium.com> Asterisk comes with ABSOLUTELY NO WARRANTY; type 'core show warranty' for details. This is free software, with components licensed under the GNU General Public License version 2 and other licenses; you are welcome to redistribute it under certain conditions. Type 'core show license' for details. ========================================================================= Connected to Asterisk 16.6.2 currently running on sysos (pid = 30796) Asterisk Ready
JUQwJTlEJUQwJUIwJTIwJUQxJThEJUQxJTgyJUQwJUJFJUQwJUJDJTIwJUQxJTgzJUQxJTgxJUQxJTgyJUQwJUIwJUQwJUJEJUQwJUJFJUQwJUIyJUQwJUJBJUQwJUIwJTIwQXN0ZXJpc2slMjAxNiUyMCVEMCVCRCVEMCVCMCUyMERlYmlhbiUyMDklMjBTdHJldGNoJUMyJUEwJUQwJUI3JUQwJUIwJUQwJUIyJUQwJUI1JUQxJTgwJUQxJTg4JUQwJUI1JUQwJUJEJUQwJUIwLg==
Понравилась или оказалась полезной статья, поблагодари автора
ПОНРАВИЛАСЬ ИЛИ ОКАЗАЛАСЬ ПОЛЕЗНОЙ СТАТЬЯ, ПОДДЕРЖИ АВТОРА ДОНАТОМ
cd dahdi-linux-complete-3.0.0+3.0.0 это ошибочный путь, должно быть cd dahdi-linux-complete-3.1.0+3.1.0
По всей видимости просто новая версия dahdi в репозитории выложили, поэтому и ругается на путь. На момент написания статьи версия была dahdi-linux-complete-3.0.0+3.0.0.
Актуализировал в статье. Спасибо!