VIDEOCHAT  ::   FAQ  ::   Поиск  ::   Регистрация  ::   Вход

не проходит авторизация Asterisk

Проблемы Asterisk без вэб-оболочек и их решения

Модераторы: april22, Zavr2008

segods
Сообщения: 7
Зарегистрирован: 29 сен 2014, 23:21

не проходит авторизация Asterisk

Сообщение segods »

В инете все пишут что мол смотри manager.conf, у тебя такого юзера нет.
так же нашел топики где у людей тоже с manager.conf все нормально, но ошибка присутствует...

В чем может быть дело?

uname -a и asterisk -V

Код: Выделить всё

[root@localhost asterisk]# uname -a
Linux localhost.localdomain 3.14.8-100.fc19.i686.PAE #1 SMP Mon Jun 16 22:06:57 UTC 2014 i686 i686 i386 GNU/Linux
[root@localhost asterisk]# asterisk -V
Asterisk 11.10.2
/var/log/asterisk/messages:

Код: Выделить всё

...
[Oct  1 00:35:48] NOTICE[9295] manager.c: 127.0.0.1 tried to authenticate with nonexistent user 'webcallback'
[Oct  1 00:35:48] NOTICE[9295] manager.c: 127.0.0.1 failed to authenticate as 'webcallback'
...
manager.conf

Код: Выделить всё

[general]
enabled = yes
port = 5038
bindaddr = 0.0.0.0
;displayconnects=no ;only effects 1.6+

[webcallback]
secret = ****
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,config,command,dtmf,reporting,cdr,dialplan,originate
write = system,call,log,verbose,command,agent,user,config,command,dtmf,reporting,cdr,dialplan,originate
writetimeout = 5000

#include manager_additional.conf
#include manager_custom.conf
Подключаюсь php скриптом:

Код: Выделить всё

$oSocket = fsockopen($strHost, 5038, $errnum, $errdesc) or die("Connection to host failed");
fputs($oSocket, "Action: login\r\n");
fputs($oSocket, "Events: off\r\n");
fputs($oSocket, "Username: $strUser\r\n");
fputs($oSocket, "Secret: $strSecret\r\n\r\n");
fputs($oSocket, "Action: originate\r\n");
fputs($oSocket, "Channel: $strChannel\r\n");
fputs($oSocket, "WaitTime: $strWaitTime\r\n");
fputs($oSocket, "CallerId: $strCallerId\r\n");
fputs($oSocket, "Exten: $strExten\r\n");
fputs($oSocket, "Context: $strContext\r\n");
fputs($oSocket, "Priority: $strPriority\r\n\r\n");
fputs($oSocket, "Action: Logoff\r\n\r\n");
sleep (1);
fclose($oSocket,128);

ded
Сообщения: 15628
Зарегистрирован: 26 авг 2010, 19:00

Re: не проходит авторизация Asterisk

Сообщение ded »

Код: Выделить всё

*CLI> 
*CLI> manager reload 
*CLI> manager show users

username
--------
webcallback
-------------------
1 manager users configured.
Есть такое?
awsswa
Сообщения: 2390
Зарегистрирован: 09 июн 2012, 10:52
Откуда: Россия, Пермь skype: yarick_perm

Re: не проходит авторизация Asterisk

Сообщение awsswa »

в manager.conf в части авторизации зачем все блокируете ?
пароль точно верный ? failed to authenticate as 'webcallback'

[webcallback]
secret=СУПЕРПАРОЛЬ
deny=0.0.0.0/0.0.0.0
permit=192.168.0.0/255.255.0.0
read=system,call,log,verbose,command,agent,user,originate
write=system,call,log,verbose,command,agent,user,originate
платный суппорт по мере возможностей
segods
Сообщения: 7
Зарегистрирован: 29 сен 2014, 23:21

Re: не проходит авторизация Asterisk

Сообщение segods »

ded писал(а):

Код: Выделить всё

*CLI> 
*CLI> manager reload 
*CLI> manager show users
...
Есть такое?

Во!! Уже что-то.

Код: Выделить всё

Connected to Asterisk 11.10.2 currently running on localhost (pid = 9259)
localhost*CLI> manager reload
[Oct  5 15:01:56] ERROR[13866]: config.c:1481 process_text_line: The file 'manager_addition                           al.conf' was listed as a #include but it does not exist.
[Oct  5 15:01:56] NOTICE[13866]: manager.c:7665 __init_manager: Unable to open AMI configur                           ation manager.conf, or configuration is invalid.
localhost*CLI> manager show users
There are no manager users.
Получается косяк в том что в manager.conf инклудятся несуществующие конфиги, я правильно понял?:

Код: Выделить всё

#include manager_additional.conf
#include manager_custom.conf
Проверил, их действительно нет в этой дире. Закомментировал.
Ребутаю Астер и проверяю:

Код: Выделить всё

[root@localhost asterisk]# service asterisk restart
Redirecting to /bin/systemctl restart  asterisk.service
[root@localhost asterisk]# asterisk -r
Asterisk 11.10.2, Copyright (C) 1999 - 2013 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 11.10.2 currently running on localhost (pid = 17022)
localhost*CLI> manager reload
localhost*CLI> manager show users

username
--------
webcallback
-------------------
1 manager users configured.
localhost*CLI>
Во! Вижу, что юзер появился. Повторяю попытку авторизации, и смотрю в лог:

Код: Выделить всё

[root@localhost asterisk]# tail /var/log/asterisk/messages
[Oct  5 15:12:07] NOTICE[17022] pbx_ael.c: AEL load process: parsed config file name '/etc/asterisk/extensions.ael'.
[Oct  5 15:12:07] NOTICE[17022] pbx_ael.c: AEL load process: checked config file name '/etc/asterisk/extensions.ael'.
[Oct  5 15:12:07] NOTICE[17022] pbx_ael.c: AEL load process: compiled config file name '/etc/asterisk/extensions.ael'.
[Oct  5 15:12:07] NOTICE[17022] pbx_ael.c: AEL load process: merged config file name '/etc/asterisk/extensions.ael'.
[Oct  5 15:12:07] NOTICE[17022] pbx_ael.c: AEL load process: verified config file name '/etc/asterisk/extensions.ael'.
[Oct  5 15:12:07] WARNING[17026] db.c: Error executing SQL: database is locked
[Oct  5 15:14:15] NOTICE[17549] manager.c: 127.0.0.1 tried to authenticate with nonexistent user 'webcallback'
[Oct  5 15:14:15] NOTICE[17549] manager.c: 127.0.0.1 failed to authenticate as 'webcallback'
[Oct  5 15:14:16] ERROR[17549] utils.c: fwrite() returned error: Broken pipe
[Oct  5 15:14:16] ERROR[17549] utils.c: fwrite() returned error: Broken pipe
[root@localhost asterisk]#
Опять тоже самое...
Единственное меня смутила эта строчка: [Oct 5 15:12:07] WARNING[17026] db.c: Error executing SQL: database is locked
Хотя юзеры то в конфиге, а не в БД. Так что для проверки авторизации ей БД и не нужна должна быть...по логике...

Есть идеи, в чем дело?
Аватара пользователя
zzuz
Сообщения: 1658
Зарегистрирован: 21 сен 2010, 13:33
Контактная информация:

Re: не проходит авторизация Asterisk

Сообщение zzuz »

tried to authenticate with nonexistent user 'webcallback'

Пользователь не создан. Решение - создать пользователя.
Линия24 - Системы Массового Телефонного Обслуживания
Vlad1983
Сообщения: 4251
Зарегистрирован: 09 авг 2011, 11:51

Re: не проходит авторизация Asterisk

Сообщение Vlad1983 »

скрипт криво работает с AMI
так нельзя делать потому и ругается:
asterisk писал(а):[Oct 5 15:14:16] ERROR[17549] utils.c: fwrite() returned error: Broken pipe
[Oct 5 15:14:16] ERROR[17549] utils.c: fwrite() returned error: Broken pipe
сначала через telnet ручками пробовать
ЛС: @rostel
segods
Сообщения: 7
Зарегистрирован: 29 сен 2014, 23:21

Re: не проходит авторизация Asterisk

Сообщение segods »

zzuz писал(а):tried to authenticate with nonexistent user 'webcallback'
Пользователь не создан. Решение - создать пользователя.
Подскажи как это сделать, пожалуйста.
Я это делал в файле /etc/asterisk/manager.conf

Код: Выделить всё

[root@localhost html]# cat /etc/asterisk/manager.conf
[general]
enabled = yes
port = 5038
bindaddr = 0.0.0.0

[webcallback]
secret = webcallback!
deny=0.0.0.0/0.0.0.0
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
writetimeout = 5000
[root@localhost html]#
Даже через консоль Астера, показывается что пользователь создан:

Код: Выделить всё

[root@localhost html]# asterisk -r
localhost*CLI> manager show users

username
--------
webcallback
-------------------
1 manager users configured.

Где я ошибся, что я не правильно сделал?
segods
Сообщения: 7
Зарегистрирован: 29 сен 2014, 23:21

Re: не проходит авторизация Asterisk

Сообщение segods »

Vlad1983 писал(а):скрипт криво работает с AMI
так нельзя делать потому и ругается:
asterisk писал(а):[Oct 5 15:14:16] ERROR[17549] utils.c: fwrite() returned error: Broken pipe
[Oct 5 15:14:16] ERROR[17549] utils.c: fwrite() returned error: Broken pipe
сначала через telnet ручками пробовать
Смотри, повторил ручками через телнет:

Код: Выделить всё

[root@localhost html]# telnet 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
Events: off
Username: webcallback
Secret: webcallback!


Response: Error
Message: Authentication failed

Connection closed by foreign host.
[root@localhost html]#
Смотрим логи:

Код: Выделить всё

[root@localhost asterisk]# tail /var/log/asterisk/messages
...
[Oct  6 20:55:08] NOTICE[28663] manager.c: 127.0.0.1 tried to authenticate with nonexistent user 'webcallback'
[Oct  6 20:55:08] NOTICE[28663] manager.c: 127.0.0.1 failed to authenticate as 'webcallback'
Результат тот же... Тут что-то другое...
awsswa
Сообщения: 2390
Зарегистрирован: 09 июн 2012, 10:52
Откуда: Россия, Пермь skype: yarick_perm

Re: не проходит авторизация Asterisk

Сообщение awsswa »

запрещено отовсюду
deny=0.0.0.0/0.0.0.0
платный суппорт по мере возможностей
segods
Сообщения: 7
Зарегистрирован: 29 сен 2014, 23:21

Re: не проходит авторизация Asterisk

Сообщение segods »

запрещено отовсюду
deny=0.0.0.0/0.0.0.0
Я поразному эксперементировал с deny и permit параметрами. безуспешно.

Переделал, manager.conf теперь выглядит так:

Код: Выделить всё

[general]
enabled = yes
port = 5038
bindaddr = 0.0.0.0
displayconnects=yes ;only effects 1.6+

[webcallback]
secret = webcallback!
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
writetimeout = 5000
Проверяю:

Код: Выделить всё

[root@localhost html]# service asterisk restart
Redirecting to /bin/systemctl restart  asterisk.service
[root@localhost html]# asterisk -r
...
Connected to Asterisk 11.10.2 currently running on localhost (pid = 32036)
localhost*CLI> manager reload
localhost*CLI> manager show users

username
--------
webcallback
-------------------
1 manager users configured.
localhost*CLI>
Disconnected from Asterisk server
Asterisk cleanly ending (0).
Executing last minute cleanups
[root@localhost html]# telnet 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
Events: off
Username: webcallback
Secret: webcallback!


Response: Error
Message: Authentication failed

Connection closed by foreign host.
[root@localhost html]#
Опять не пускает....?(( Может я как-то криво установил Астер? ставил его банально через yum install asterisk
Ответить
© 2008 — 2025 Asterisk.ru
Digium, Asterisk and AsteriskNOW are registered trademarks of Digium, Inc.
Design and development by PostMet-Netzwerk GmbH