[OpenSIPS-Users] Cannot get registration to work with v3.2.8??
Bob Atkins
bob at digilink.net
Thu Sep 8 07:29:59 UTC 2022
Iancu,
I'm not sure what the point of this would be. Even if it showed that
OpenSIPS was calculating incorrectly - then what?
The device registers just fine with both asterisk and OpenSER v1.1 with
exactly the same parameters.
The device is calculating the response correctly for 2 other systems.
OpenSIPS is clearly getting it wrong. The question is why? Or even
how. This is a pretty basic calculation.
---
Bob
On 9/7/2022 11:16 PM, Bogdan-Andrei Iancu wrote:
> Hi Bob,
>
>
> Use the below to double check which party is failing in computing the
> right auth response.
>
> https://openplatform.xyz/sip_register_digest_authentication.html
>
>
> Regards,
> Bogdan-Andrei Iancu
>
> OpenSIPS Founder and Developer
> https://www.opensips-solutions.com
> OpenSIPS Summit 27-30 Sept 2022, Athens
> https://www.opensips.org/events/Summit-2022Athens/
> On 9/7/22 10:46 PM, Bob Atkins wrote:
>> Iancu,
>>
>> Thank you!! You identified the problem. Turns out that I had failed
>> to add the IP for the OpenSIPS proxy to a firewall that was blocking
>> the response from this new sip server (facepalm) to the device :-(
>>
>> So, once I fixed the firewall I thought that would be it... Not my luck.
>>
>> Now it is challenging and /_*rejecting!*_/ The HA1 is failing to
>> compare! But the passwords are correct! Now I am really mystified.
>>
>> I created identical DB entries for this unit in both the original
>> OpenSER system and the OpenSIPS system.
>>
>> Registration to the OpenSER system works perfectly - HA1 validates.
>> When I change the sip server to the new system, to OpenSIPS system
>> fails due to mismatched HA1. Whaaa.... ?!?!
>>
>> Mismatched HA1 would imply a password failure but I have absolutely,
>> positively verified the passwords in both database entries and the
>> /_*only*_/ thing I change on the device is the sip server. It should
>> just register on the new system. I have attached packet capture of
>> the transaction between the device and teh OpenSIPSs system.
>>
>> I have absolutely, positively copied and pasted (no trailing nl or
>> spaces) and verified that the passwords are the same in both
>> databases and also the same on the device.
>>
>> OpenSER DB subscriber entery
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>> phplib_id username domain password first_name last_name phone
>> email_address datetime_created datetime_modified confirmation
>> flag sendnotification greeting ha1 ha1b allow_find timezone
>> rpid domn uuid customerID customerName
>> 3105738133 3105738133 digilink.net XXXXXXXX PPC Home Fax
>> 3105738133
>> 7/5/2012 16:36 11/7/2021 13:58
>> o
>>
>>
>>
>> 0 \N \N \N \N 72 DigiLink Internet Services
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>> OpenSIPS DB subscriber entry
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>> id username domain password cr_preferred_carrier first_name
>> last_name phone email_address datetime_created datetime_modified
>> confirmation flag sendnotification greeting allow_find timezone
>> customerID customerName ha1 ha1_sha256 ha1_sha512t256 rpid
>> 1 3105738133 digidial XXXXXXXX \N PPC Home Fax 3105738133
>> bob at planeparts.com 7/5/2012 16:36 11/7/2021 13:58
>> 0
>>
>>
>>
>> 72 DigiLink Internet Services \N
>>
>>
>>
>> Registration code:
>>
>> OpenSER system:
>>
>> modparam("auth_db", "calculate_ha1", yes)
>> modparam("auth_db", "password_column", "password")
>>
>> if (method=="REGISTER") {
>> #xlog("L_INFO","[$rm][$ft][$tt]
>> Processing registration");
>>
>> if (!www_authorize("digilink.net", "subscriber")) {
>> #xlog("L_INFO","[$rm][$ft][$tt] Challenging peer");
>> www_challenge("digilink.net", "0");
>> exit;
>> };
>>
>> xlog("L_INFO","[$rm][$ft][$tt] Registered $fu
>> from $si");
>> save("location");
>> exit;
>> };
>>
>> ==============
>> OpenSIPS system
>>
>> #### AUTH Db module
>> loadmodule "auth.so"
>> loadmodule "auth_db.so"
>> modparam("auth_db", "calculate_ha1", 1)
>> modparam("auth_db", "use_domain", 1)
>> modparam("auth_db", "user_column", "username")
>> modparam("auth_db", "password_column", "password")
>> modparam("auth_db", "load_credentials", "")
>>
>>
>> if (is_method("REGISTER")) {
>> xlog("L_INFO", "REGISTER: [$tu] request from [$si]");
>> xlog("L_INFO","[$ft][$au]@[$ad] - Processing registration");
>> xlog("L_INFO", "REGISTER: www_authorize returned
>> [$var(x)] to authenticate with [$rU]$ru credential");
>>
>> if (!www_authorize("digilink.net", "subscriber")) {
>> xlog("L_INFO","CHALLENGE: [$ft][$tt]");
>> www_challenge("digilink.net","auth","MD5");
>> exit;
>> } else {
>> xlog("L_ALERT", "REGISTER: URI [$tu][$rU]$ru
>> credential from [$si] - FAILED!");
>> sl_send_reply(403, "Not Authorized!");
>> exit;
>> }
>>
>> xlog("L_INFO", "REGISTER: URI [$tu] - [$rm][$ft][$tt]
>> Registered $fu from $si");
>> save("location");
>> exit;
>> }
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.opensips.org/pipermail/users/attachments/20220908/c0b65114/attachment-0001.html>
More information about the Users
mailing list