В этой статье мы проведем вас через установку Asterisk на Debian 9 VPS . Asterisk — самая популярная программная реализация АТС. Она включает в себя как классическую функциональность УАТС и многие дополнительные функции, такие как: Конференц-связь, регистратор вызовов, голосовая почта, интерактивный голосовой ответ, автоматическое распределение вызовов, мониторинг в реальном времени, консоль отладки и поддерживает большинство стандартных протоколов voice over IP (VOIP), включая SIP, D H. 323 и MGCP.
Убедитесь, что ваша серверная ОС полностью обновлена:
apt-get update apt-get upgrade
Установите все необходимые пакеты на Asterisk VPS со следующими командами:
apt-get install build-essential apt-get install git-core subversion libjansson-dev sqlite autoconf automake libxml2-dev libncurses5-dev libtool
На момент написания последней версии Asterisk 15.5.0. Перейдите в каталог /usr/src/
с помощью:
cd /usr/src/
и загрузите архив asterisk tar со следующей командой wget:
wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-15-current.tar.gz
Когда загрузка будет завершена, запустите следующую команду, чтобы извлечь файл asterisk-15-current.tar.gz:
tar -zxvf asterisk-15-current.tar.gz
После того, как архив asterisk будет извлечен, перейдите в каталог asterisk-15.5.0
со следующей командой:
cd /usr/src/asterisk-15.5.0
Используйте скрипт install_prereq
для установки всех недостающих пакетов:
./contrib/scripts/install_prereq install
В зависимости от количества отсутствующих пакетов установка может занять некоторое время, после ее завершения вывод будет выглядеть следующим образом:
############################################# ## install completed successfully #############################################
Следующий шаг — запустить скрипт ./configure
, который проверит вашу систему на отсутствие библиотек и двоичных файлов и подготовит исходный код Asterisk для процесса сборки:
./configure
Результат успешного завершения должен выглядеть следующим образом:
configure: Menuselect build configuration successfully completed .$$$$$$$$$$$$$$$=.. .$7$7.. .7$$7:. .$$:. ,$7.7 .$7. 7$$$$ .$$77 ..$$. $$$$$ .$$$7 ..7$ .?. $$$$$ .?. 7$$$. $.$. .$$$7. $$$$7 .7$$$. .$$$. .777. .$$$$$$77$$$77$$$$$7. $$$, $$$~ .7$$$$$$$$$$$$$7. .$$$. .$$7 .7$$$$$$$7: ?$$$. $$$ ?7$$$$$$$$$$I .$$$7 $$$ .7$$$$$$$$$$$$$$$$ :$$$. $$$ $$$$$$7$$$$$$$$$$$$ .$$$. $$$ $$$ 7$$$7 .$$$ .$$$. $$$$ $$$$7 .$$$. 7$$$7 7$$$$ 7$$$ $$$$$ $$$ $$$$7. $$ (TM) $$$$$$$. .7$$$$$$ $$ $$$$$$$$$$$$7$$$$$$$$$.$$$$$$ $$$$$$$$$$$$$$$$. configure: Package configured for: configure: OS type : linux-gnu configure: Host CPU : x86_64 configure: build-cpu:vendor:os: x86_64 : pc : linux-gnu : configure: host-cpu:vendor:os: x86_64 : pc : linux-gnu :
Теперь, когда конфигурация завершена, запустите процесс компиляции с помощью команды make
:
make
В зависимости от ваших системных ресурсов процесс сборки может занять несколько минут, и как только он будет завершен, на консоли будет напечатано следующее сообщение, что означает, что Asterisk был успешно скомпилирован:
+--------- Asterisk Build Complete ---------+ + Asterisk has successfully been built, and + + can be installed by running: + + + + make install + +-------------------------------------------+
Следующий шаг — запустить команду make install
, которая установит Asterisk и все скомпилированные модули Asterisk:
make install
После успешной установки Asterisk вам будет представлено следующее сообщение на вашем экране:
+---- Asterisk Installation Complete -------+ + + + YOU MUST READ THE SECURITY DOCUMENT + + + + Asterisk has successfully been installed. + + If you would like to install the sample + + configuration files (overwriting any + + existing config files), run: + + + + For generic reference documentation: + + make samples + + + + For a sample basic PBX: + + make basic-pbx + + + + + +----------------- or ---------------------+ + + + You can go ahead and install the asterisk + + program documentation now or later run: + + + + make progdocs + + + + **Note** This requires that you have + + doxygen installed on your local system + +-------------------------------------------+
Запустите команду make samples для установки файлов конфигурации образца Asterisk:
make samples
Установите сценарий инициализации, чтобы вы могли управлять своим сервисом Asterisk с помощью команды systemctl:
make config
В приведенной выше команде не будет выводиться.
Затем установите скрипт logrotation с помощью следующей команды:
make install-logrotate
Вы увидите следующий вывод, указывающий, что конфигурация лотереи была успешно создана:
if [ ! -d "/etc/asterisk/../logrotate.d" ]; then \ /usr/bin/install -c -d "/etc/asterisk/../logrotate.d" ; \ fi sed 's#__LOGDIR__#/var/log/asterisk#g' < contrib/scripts/asterisk.logrotate | sed 's#__SBINDIR__#/usr/sbin#g' > contrib/scripts/asterisk.logrotate.tmp /usr/bin/install -c -m 0644 contrib/scripts/asterisk.logrotate.tmp "/etc/asterisk/../logrotate.d/asterisk" rm -f contrib/scripts/asterisk.logrotate.
Теперь, когда на вашем Debian 9 VPS установлена Asterisk, вы можете запустить службу Asterisk с помощью следующей команды:
systemctl start asterisk
Вы можете проверить, запущена ли служба Asterisk с помощью команды systemctl status
:
systemctl status asterisk
Если служба запущена, вы увидите следующее сообщение:
● asterisk.service - LSB: Asterisk PBX Loaded: loaded (/etc/init.d/asterisk; generated; vendor preset: enabled) Active: active (running) since Thu 2018-08-09 01:26:50 CDT; 29s ago Docs: man:systemd-sysv-generator(8) Process: 4996 ExecStart=/etc/init.d/asterisk start (code=exited, status=0/SUCCESS) CGroup: /system.slice/asterisk.service └─5008 /usr/sbin/asterisk
Наконец, включите службу Asterisk при загрузке системы с помощью следующей команды:
systemctl enable asterisk
Вот и все. Завершена установка Asterisk на вашем сервере под управлением Debian 9.
Спасибо, очень хороший мануал.
Nov 28 15:42:18 pi0 asterisk[427]: radcli: rc_read_config: rc_read_config: can’t open /etc/radiusclient-ng
https://bugs.launchpad.net/raspbian/+bug/1754306.
radiusclient.conf не существует, поэтому, предполагая, что вы хотите использовать RADIUS в качестве CDR Backend, убедитесь, что библиотека Radiusclient установлена правильно
подскажите, вам удалось решить эту проблему?
Эту: can’t open /etc/radiusclient-ng?
Да, эту проблему.
Как ее решить, чтобы systemctl status asterisk выводила статус работы без ошибок.
Заранее спасибо.
Укажем корректный путь к файлу конфигурации RADIUS в файлах (/etc/asterisk/cdr.conf) и (/etc/asterisk/cel.conf):
1
2
[radius]
radiuscfg => /etc/radcli/radiusclient.conf