为什么在收到401未经授权的Asterisk后,所有的软电话都无法validation?

当我尝试从CSipSimple连接到Asterisk服务器时,通过Cisco 路由器 ,在同一个networking上,Asterisk日志显示尝试的连接:

<-------------> [Mar 23 20:01:34] VERBOSE[4067] chan_sip.c: [Mar 23 20:01:34] --- (8 headers 0 lines) --- [Mar 23 20:01:34] NOTICE[4067] chan_sip.c: Outbound Registration: Expiry for nat5.babytel.ca is 55 sec (Scheduling reregistration in 40 s) [Mar 23 20:01:34] VERBOSE[4067] chan_sip.c: [Mar 23 20:01:34] Really destroying SIP dialog '[email protected]' Method: REGISTER [Mar 23 20:02:01] VERBOSE[20423] manager.c: [Mar 23 20:02:01] == Manager 'sendcron' logged on from 127.0.0.1 [Mar 23 20:02:01] VERBOSE[20423] manager.c: [Mar 23 20:02:01] == Manager 'sendcron' logged off from 127.0.0.1 [Mar 23 20:02:06] VERBOSE[20436] manager.c: [Mar 23 20:02:06] == Manager 'sendcron' logged on from 127.0.0.1 [Mar 23 20:02:06] VERBOSE[20436] manager.c: [Mar 23 20:02:06] == Manager 'sendcron' logged off from 127.0.0.1 [Mar 23 20:02:10] VERBOSE[4067] chan_sip.c: [Mar 23 20:02:10] <--- SIP read from UDP:192.168.0.15:39462 ---> REGISTER sip:192.168.0.99 SIP/2.0 v: SIP/2.0/UDP 99.99.99.99:39462;rport;branch=z9hG4bKPjiUEFUHN08Wvs9xG2Q9tzRMOxFYJ323dO Route: <sip:192.168.0.99;transport=udp;lr> Max-Forwards: 70 f: <sip:[email protected]>;tag=HVPwJ.kg.9MW6PypcpObrVPGC3l3B-Uh t: <sip:[email protected]> i: QIsF0rZ0wYvzKC9S2P0rWhnYGsQ9FQbI CSeq: 56288 REGISTER User-Agent: CSipSimple_v1-16/r2457 m: <sip:[email protected]:39462;ob>;+sip.ice Expires: 900 Allow: PRACK, INVITE, ACK, BYE, CANCEL, UPDATE, INFO, SUBSCRIBE, NOTIFY, REFER, MESSAGE, OPTIONS l: 0 <-------------> [Mar 23 20:02:10] VERBOSE[4067] chan_sip.c: [Mar 23 20:02:10] --- (13 headers 0 lines) --- [Mar 23 20:02:10] VERBOSE[4067] chan_sip.c: [Mar 23 20:02:10] Sending to 192.168.0.15:39462 (NAT) [Mar 23 20:02:10] VERBOSE[4067] chan_sip.c: [Mar 23 20:02:10] <--- Transmitting (NAT) to 192.168.0.15:39462 ---> SIP/2.0 401 Unauthorized Via: SIP/2.0/UDP 99.99.99.99:39462;branch=z9hG4bKPjiUEFUHN08Wvs9xG2Q9tzRMOxFYJ323dO;received=192.168.0.15;rport=39462 From: <sip:[email protected]>;tag=HVPwJ.kg.9MW6PypcpObrVPGC3l3B-Uh To: <sip:[email protected]>;tag=as0986faf4 Call-ID: QIsF0rZ0wYvzKC9S2P0rWhnYGsQ9FQbI CSeq: 56288 REGISTER Server: Asterisk PBX 1.8.29.0-vici Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY, INFO, PUBLISH, MESSAGE Supported: replaces, timer WWW-Authenticate: Digest algorithm=MD5, realm="asterisk", nonce="10600450" Content-Length: 0 

CSipSimple本身无法连接到本地Asterisk服务器。

由于Jitsi显示类似的错误 ,它似乎不是客户特定的。 因为Mac上的Jitsi和Android手机上的CSipSimple都可以拨打语音电话,所以在我看来,正确地消除路由器上的防火墙是一个原因。

与此同时,我已经禁用了服务器上的防火墙来消除这个潜在的问题,这当然可能是没有必要的。

星号回答401 Unauthorized我怎么知道为什么连接未经授权?

完整的日志太大,不能发布在这里。 虽然sip set debug on没有提供任何输出,该命令的输出在这里 ,虽然这是与Jitsi。

401未授权不是一个错误:身份validation机制如何在SIP上工作(请参阅此答案)

该行:

 [Mar 23 20:02:10] NOTICE[4067] chan_sip.c: Registration from '<sip:[email protected]>' failed for '192.168.0.15:39462' - Wrong password 

看起来很清楚:你的SIP客户端的密码是错误的,authentication不成功。 sip.conf中的SIP密码通过对等定义(201)中的“secret”参数。