[SR-Users] Kamailio 5.0 doesn't forward Authorization (Digest username) to Asterisk

Daniel-Constantin Mierla miconda at gmail.com
Thu Apr 6 11:25:25 CEST 2017


Hello,

I am not sure I got the proper picture of what do you want to achieve.
Do you want to authenticate the registration twice, once by kamailio and
second by asterisk?

Cheers,
Daniel


On 03.04.17 01:05, Marko Tirs wrote:
> Hello all,
>
> I am trying to use Kamailio 5.0 with Asterisk (separate IP addresses,
> both port 5060),
> but Asterisk doesn't register the SIP clients which comes through
> Kamailio.
> If I register the same user directly to the Asterisk then it works!
> 1st REGISTER
> is also without Authorization (Digest name) but in the 2nd REGISTER it
> exists
> and registration goes OK.
>
> How to use Kamailio with Asterisk in the way the SIP client is
> registered on both of them?
> Thank you
> Marko
>
>
> SIP-CLIENT DIRECTLY TO ASTERISK:
> -----------------------------------------------------------
> 1    2017-04-01 15:20:48.331806    192.168.0.12    192.168.0.2  
>  SIP    544    Request: REGISTER sip:192.168.0.2  (1 binding) |
> 2    2017-04-01 15:20:48.332998    192.168.0.2    192.168.0.12  
>  SIP    626    Status: 401 Unauthorized |
> 3    2017-04-01 15:20:48.333814    192.168.0.12    192.168.0.2  
>  SIP    700    Request: REGISTER sip:192.168.0.2  (1 binding) |
> 4    2017-04-01 15:20:48.335975    192.168.0.2    192.168.0.12  
>  SIP    647    Status: 200 OK  (1 binding) |
>
> Frame 3: 700 bytes on wire (5600 bits), 700 bytes captured (5600 bits)
> on interface 0
> Ethernet II, Src: AsrockIn_0a:0b:46 (70:85:c2:0a:0b:46), Dst:
> Raspberr_a1:fd:f7 (b8:27:eb:a1:fd:f7)
> Internet Protocol Version 4, Src: 192.168.0.12, Dst: 192.168.0.2
> User Datagram Protocol, Src Port: 64369, Dst Port: 5060
> Session Initiation Protocol (REGISTER)
>     Request-Line: REGISTER sip:192.168.0.2 SIP/2.0
>     Message Header
>         Via: SIP/2.0/UDP
> 192.168.0.12:64369;rport;branch=z9hG4bKPj9f8759c0537b4834bb411358d0b0a2ff
>         Max-Forwards: 70
>         From: "33"
> <sip:33 at 192.168.0.2>;tag=4c586be1fcf842359e7d429abcb0b213
>         To: "33" <sip:33 at 192.168.0.2>
>         Contact:
> <sip:74081936 at 192.168.0.12:64369>;+sip.instance="<urn:uuid:b408367e-d06b-4780-a9a0-291eb99ec83c>"
>         Call-ID: d3c240808c934b77a9bbcb8bd4c1bd8c
>         CSeq: 2 REGISTER
>         Expires: 600
>         Supported: gruu
>         User-Agent: Blink 3.0.0 (Windows)
>         Authorization: Digest username="33", realm="asterisk",
> nonce="76ca37d8", uri="sip:192.168.0.2",
> response="19fc1a634abc72c41dcb516470c34fc2", algorithm=MD5
>             Authentication Scheme: Digest
>             Username: "33"
>             Realm: "asterisk"
>             Nonce Value: "76ca37d8"
>             Authentication URI: "sip:192.168.0.2"
>             Digest Authentication Response:
> "19fc1a634abc72c41dcb516470c34fc2"
>             Algorithm: MD5
>         Content-Length:  0
>
>
> SIP-CLIENT TO KAMAILIO WITH FORWARD TO ASTERISK:
> ----------------------------------------------------------------------------------------------
> 11    2017-04-01 15:21:06.806347    192.168.0.13    192.168.0.2  
>  SIP    459    Request: REGISTER sip:192.168.0.2:5060  (1 binding) |
> 12    2017-04-01 15:21:06.807514    192.168.0.2    192.168.0.13  
>  SIP    608    Status: 401 Unauthorized |
> 13    2017-04-01 15:21:06.814819    192.168.0.13    192.168.0.2  
>  SIP    456    Request: REGISTER sip:192.168.0.2:5060  (remove 1
> binding) |
> 14    2017-04-01 15:21:06.815712    192.168.0.2    192.168.0.13  
>  SIP    608    Status: 401 Unauthorized |
> 15    2017-04-01 15:21:06.821125    192.168.0.13    192.168.0.2  
>  SIP    459    Request: REGISTER sip:192.168.0.2:5060  (1 binding) |
> 16    2017-04-01 15:21:06.821910    192.168.0.2    192.168.0.13  
>  SIP    608    Status: 401 Unauthorized |
>
> Frame 15: 459 bytes on wire (3672 bits), 459 bytes captured (3672
> bits) on interface 0
> Ethernet II, Src: Micro-St_de:b2:3a (00:24:21:de:b2:3a), Dst:
> Raspberr_a1:fd:f7 (b8:27:eb:a1:fd:f7)
> Internet Protocol Version 4, Src: 192.168.0.13, Dst: 192.168.0.2
> User Datagram Protocol, Src Port: 5060, Dst Port: 5060
> Session Initiation Protocol (REGISTER)
>     Request-Line: REGISTER sip:192.168.0.2:5060 SIP/2.0
>     Message Header
>         Via: SIP/2.0/UDP
> 192.168.0.13;branch=z9hG4bKd101.0ad599b6000000000000000000000000.0
>         To: <sip:32 at 192.168.0.2>
>             SIP to address: sip:32 at 192.168.0.2
>         From:
> <sip:32 at 192.168.0.2>;tag=533cb9e91f4b999cf76861cbb9ed54ed-85c4
>             SIP from address: sip:32 at 192.168.0.2
>             SIP from tag: 533cb9e91f4b999cf76861cbb9ed54ed-85c4
>         CSeq: 10 REGISTER
>         Call-ID: 41df282f10fdc7b6-2773 at 127.0.0.1
>         Max-Forwards: 70
>         Content-Length: 0
>         User-Agent: kamailio (5.0.0 (x86_64/linux))
>         Contact: <sip:32 at 192.168.0.13:5060>
>             Contact URI: sip:32 at 192.168.0.13:5060
>         Expires: 3600
>
>
>
> kamailio.cfg:
> --------------------
>
> #!define WITH_DEBUG
> #!define WITH_MYSQL
> #!define WITH_AUTH
> #!define WITH_USRLOCDB
> #!define WITH_ASTERISK
> ...
>
> #!ifdef WITH_ASTERISK
> asterisk.bindip = "192.168.0.2" desc "Asterisk IP Address"
> asterisk.bindport = "5060" desc "Asterisk Port"
> kamailio.bindip = "192.168.0.13" desc "Kamailio IP Address"
> kamailio.bindport = "5060" desc "Kamailio Port"
> #!endif
> ...
>
> # Forward REGISTER to Asterisk
> route[REGFWD] {
>     if(!is_method("REGISTER"))
>     {
>         return;
>     }
>     $var(rip) = $sel(cfg_get.asterisk.bindip);
>     $uac_req(method)="REGISTER";
>     $uac_req(ruri)="sip:" + $var(rip) + ":" +
> $sel(cfg_get.asterisk.bindport);
>     #$uac_req(ruri)="sip:" + $au + "@" + $var(rip) + ":" +
> $sel(cfg_get.asterisk.bindport);
>     $uac_req(furi)="sip:" + $au + "@" + $var(rip);
>     $uac_req(turi)="sip:" + $au + "@" + $var(rip);
>     $uac_req(hdrs)="Contact: <sip:" + $au + "@"
>                 + $sel(cfg_get.kamailio.bindip)
>                 + ":" + $sel(cfg_get.kamailio.bindport) + ">\r\n";
>     if($sel(contact.expires) != $null)
>         $uac_req(hdrs)= $uac_req(hdrs) + "Expires: " +
> $sel(contact.expires) + "\r\n";
>     else
>         $uac_req(hdrs)= $uac_req(hdrs) + "Expires: " + $hdr(Expires) +
> "\r\n";
>     uac_req_send();
> }
>
>
>
> _______________________________________________
> SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
> sr-users at lists.sip-router.org
> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users

-- 
Daniel-Constantin Mierla
www.twitter.com/miconda -- www.linkedin.com/in/miconda
Kamailio Advanced Training - May 22-24 (USA) - www.asipto.com
Kamailio World Conference - May 8-10, 2017 - www.kamailioworld.com

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.sip-router.org/pipermail/sr-users/attachments/20170406/52812f34/attachment.html>


More information about the sr-users mailing list