Это старая версия документа!
Во первых необходимо создать пользователя для управления asterisk. Для этого достаточно внести соответствующую запись в /etc/asterisk/manager.conf, в примере ниже добавлен пользователь 1cami с паролем PASSWORD. Важно также в секцию general добавить опции указанные в примере.
[general] enabled = yes port = 5038 bindaddr = 0.0.0.0 allowmultiplelogin = yes webenabled = yes httptimeout = 60 [1cami] secret = PASSWORD deny=0.0.0.0/0.0.0.0 permit=0.0.0.0/0.0.0.0 read = call,user,cdr write = system,call,command,agent,user,dtmf,originate
Для публикации ajam интерфейса, через который и работает компонент, необходимо после настройки manager.conf, настроить файл /etc/asterisk/http.conf Существует 2 варианта публикации.
Если мы хотим опубликовать ajam интерфейс на порту 8088 в режиме http, файл http.conf должен выглядеть примерно так:
[general] enabled=yes enablestatic=yes bindaddr=0.0.0.0 bindport=8088 prefix=asterisk
Если мы хотим опубликовать ajam интерфейс на порту 4443 в режиме https, файл http.conf должен выглядеть примерно так:
Для астериск версии 1.6
[general] enabled=yes bindaddr=0.0.0.0 bindport=8088 prefix=asterisk enablestatic=yes sslenable=yes sslbindaddr=0.0.0.0 sslbindport=4443 sslcert = /etc/asterisk/ssl/ajam.pem
Для астериск версии 1.8 и выше
[general] enabled=yes bindaddr=0.0.0.0 bindport=8088 prefix=asterisk enablestatic=yes tlsenable=yes tlsbindaddr=0.0.0.0:4443 tlscertfile= /etc/asterisk/ssl/ajam.pem tlsprivatekey= /etc/asterisk/ssl/ajam.pem
Также для https режима необходимо сгенерировать сертификат, которым будут шифроваться передаваемые данные. Самый простой способ, это генерация самоподписанного сертификата на серврере Asterisk коммандой:
cd /tmp openssl req -new -x509 -days 365 -nodes -out /tmp/foo.pem -keyout /tmp/foo.pem mkdir /etc/asterisk/ssl mv /tmp/foo.pem /etc/asterisk/ssl/ajam.pem
При правильной настройке после перезагрузки Asterisk, мы должны видеть такую страницу по адресу http://ipadress_asteriska:8088/asterisk/httpstatus
Asterisk™ HTTP Status Prefix /asterisk Bind Address 0.0.0.0 Bind Port 8088 SSL Bind Port 4443
Не забудьте открыть на фаерволе порт 4443 или 8088 чтобы интерфейс ajam был доступен из вне.
Например для iptables под управлением CENTOS это делается добавлением строчки в файл /etc/sysconfig/iptables
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 8088 -j ACCEPT -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 4443 -j ACCEPT