PDA

Voir la version complète : Hash MD5 non reconnu avec AstAccountRealmedPassword



looping
04/01/2011, 10h21
Bonjour.

J'ai installé il y a quelques temps Asterisk 1.6 connecté pour la partie account à un OpenLDAP, et en particulier utilisant un hash md5.

La configuration initiale fut longue à découvrir mais tout fonctionnait.

Au passage à la 1.6.2, RealmedPassword qui n'existait pas dans le schema standard a été modifiée en AstAccountRealmedPassword.

Je me suis donc rendu compte récemment -comme d'autres- que n'importe quel utilisateur existant dans le directory pouvait se connecter sans password!
http://lists.digium.com/pipermail/asterisk-bugs/2010-October/089242.html
J'ai eu la chance sur ce coup là de n'avoir pas de login simples ou génériques.

J'ai donc mis à jour en 1.6.2.15, remis à jour le res_ldap.conf, avec en particulier:

[sip]
name = uid
md5secret = AstAccountRealmedPassword


Mais voilà, dans le ldif j'ai ceci:

AstAccountRealmedPassword: {MD5}PBPZZGxKYw6Y5u3bbURLHA==

J'ai essayé différentes façon pour générer le hash, et aucune ne fonctionne. Quand l'utilisateur tente de se connecter, j'obtiens un 'wrong password'

J'ai essayé en php:

$password="{MD5}".base64_encode(md5($_POST[password],true));
(sachant que g un tas d'utilisateurs qui ont généré leur pass avec ça, j'aimerais bien garder ça!)

et aussi avec la commande unix md5sum, mais c pas mieux. Impossible de générer un hash qui fonctionne.

Quelqu'un aurait-il une idée de comment debugger tout ça?

Merci

looping
04/01/2011, 14h20
Bon je viens de trouver:

Tout d'abord le realm doit être réglé dans sip.conf:
realm=domain.com

Ensuite le hash doit être généré avec ça:

echo -n "user:domain.com:password" | md5sum

ffossard
04/01/2011, 17h58
Ok donc ça n'est pas juste le password mais "compte:domain:password"

Merci d'avoir donné la solution, ça pourra servir à d'autres :wink: