Пытаюсь подключиться к звездочке через телнет. Чтобы PHPAGI мог использовать определенные команды, он должен иметь возможность делать то же самое. Итак, я вырезаю среднего человека и тестирую его вручную. Я определил, что звездочка не позволяет никому подключаться к нему через localhost.
Я следую инструкциям в http://the-asterisk-book.com/1.6/asterisk-manager-api.html на моем сервере.
Вот что я получаю:
> телнет 127.0.0.1 5038
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
Asterisk Call Manager/1.3
Action: Login
ActionID: 1
Username: admin
Password: abc123
Response: Error
ActionID: 1
Message: Authentication failed
Мой файл /etc/asterisk/manager.conf содержит:
[general]
enabled = yes
port = 5038
bindaddr = 127.0.0.1
#include "manager.d/*.conf"
И /etc/asterisk/manager.d/admin.conf содержит:
[admin]
secret = abc123
#Trying just about everything...
permit = 127.0.0.1/255.255.255.255
permit = 127.0.0.1/255.255.255.0
permit = 23.239.27.80/255.255.255.255
permit = 23.239.27.80/255.255.255.0
permit = 192.168.0.1/255.255.255.0
permit = 192.168.0.1/255.255.255.255
read = system,call,log,verbose,command,agent,user,config,command,dtmf,reporting,cdr,dialplan,originate
write = system,call,log,verbose,command,agent,user,config,command,dtmf,reporting,cdr,dialplan,originate
Я не уверен, почему он не проходит аутентификацию. На ум приходят какие-то догадки? (Примечание: я перезапустил звездочку после изменения моих файлов .conf)
Получил ответ. Теперь мой manager.conf выглядит так:
[general]
enabled=yes
port=5038
bindaddr=0.0.0.0
displayconnects=yes ;only effects 1.6+
[admin]
secret = abc123
deny=0.0.0.0/0.0.0.0
permit=127.0.0.1/255.255.255.0
read = system,call,log,verbose,command,agent,user,originate
write = system,call,log,verbose,command,agent,user,originate
Также при аутентификации я сбросил «ActionID». Таким образом:
> телнет 127.0.0.1 5038
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
Asterisk Call Manager/1.3
Action: Login
Username: admin
Secret: abc123
Response: Success
Message: Authentication accepted
Event: FullyBooted
Privilege: system,all
Status: Fully Booted