Hola a todos.
Me llamo Toni y estoy intentando autentificar usuarios contra un ldap , pero la contraseña esta guardada e unix crypt y obviamente no puedo validar, por que requiere contraseña en claro o un campo donde este el HA1. He buscado si existe alguna Pseudo-variable donde este el password introducido por el teclado, pero no la encuentro. Tambien he buscado en el codigo fuente del modulo auth para intentar encontrar una variable donde pueda obtener dicho password. Si tuviera el password introducido por el teclado, ya me encontraria más cerca de poder autentificar.
¿Nadie ha autentificado contra un LDAP sin contraseña en claro o HA1?
¿Alguien como puedo obtener el password que he tecleado?
He probado con radius contra el LDAP, pero es mas de lo mismo, si no tengo el HA1 o la contraseña en claro, pues no me valida.
Gracias y un saludo.
El Viernes, 11 de Julio de 2008, El buit escribió:
He buscado si existe alguna Pseudo-variable donde este el password introducido por el teclado, pero no la encuentro.
¿A qué te refieres con "password introducido por teclado"? ¿Cómo generas los usuarios de OpenSer? (línea de comandos con "openserctl add"?)
Hola. Los usuarios los obtengo de LDAP, pero la contraseña guardada en el LDAP no está en texto claro, por lo que tengo un problema para autentificar. Una opcion seria crear un campo nuevo en el esquema donde se guarde el HA1, esto lo he probado y funciona, con esto los usuarios se registran. La otra opcion que queria probar era modificar el modulo auth para cifrar la contraseña (la del ldap no, la que le pongo al cliente), pero creo que en realidad el cliente no le pasa la contraseña para autentificarse, si no que mas bien el servidor le proporciona un reto que debe superar. Así que no veo mas opcion que para que se autentifiquen, es tener un campo nuevo HA1 en el openldap, ya que poner la contraseña en claro en ldap lo tengo ya descartado.
Me parece que solo podré autentificar si tengo las contraseñas en claro (descartado) o tener el campo HA1. Lo mismo me pasa si lo intento contra freeradius, que le hace falta la contraseña en claro o el ha1.
¿Alguna idea de como autentificar sin tener que guardar la contraseña en claro o el HA1? Actualmente la contraseña la tengo guardada en unix crypt, pero podria usar cualquier otro cifrado.
Gracias
Toni
El día 12 de julio de 2008 20:09, Iñaki Baz Castillo ibc@aliax.net escribió:
El Viernes, 11 de Julio de 2008, El buit escribió:
He buscado si existe alguna Pseudo-variable donde este el password introducido por el teclado, pero no la encuentro.
¿A qué te refieres con "password introducido por teclado"? ¿Cómo generas los usuarios de OpenSer? (línea de comandos con "openserctl add"?)
-- Iñaki Baz Castillo
Users-es mailing list Users-es@lists.openser.org http://lists.openser.org/cgi-bin/mailman/listinfo/users-es
El Domingo, 13 de Julio de 2008, El buit escribió:
La otra opcion que queria probar era modificar el modulo auth para cifrar la contraseña (la del ldap no, la que le pongo al cliente), pero creo que en realidad el cliente no le pasa la contraseña para autentificarse, si no que mas bien el servidor le proporciona un reto que debe superar.
Efectivamente: La autenticación SIP es Digest por lo que el servidor envía un reto, el cliente genera un hash en base a ese reto y a su contraseña (contraseña que sólo el usuairo y el servidor conocen) y lo envía. El servidor al recibir la respuesta del usuario comprueba si el hash recibido coincide con el que el generaría al tener también dichos datos.
Por ejemplo en auth_db de OpenSer, puede guardar la contraseña de los usuarios en plano o en HA1, es más seguro obviamente que lo guarde en HA1 además de que así el servidor no tiene que hacer el cálculo computacional de calcularlo en base al password en texto claro.
Lo mismo me pasa si lo intento contra freeradius, que le hace falta la contraseña en claro o el ha1.
Hay una extensión para FreeRadius para que haga Digest, lo que no sé es si permite tener el password en UnixCrypt, casi seguro que no.
En definitiva creo que sí o sí necesitas tenerlo en HA1 (tampoco es tan malo, ¿no?).
Hola Iñaki, gracias por responder.
El día 13 de julio de 2008 13:02, Iñaki Baz Castillo ibc@aliax.net escribió:
Efectivamente: La autenticación SIP es Digest por lo que el servidor envía un reto, el cliente genera un hash en base a ese reto y a su contraseña (contraseña que sólo el usuairo y el servidor conocen) y lo envía. El servidor al recibir la respuesta del usuario comprueba si el hash recibido coincide con el que el generaría al tener también dichos datos.
Eso es lo que me temia.
Hay una extensión para FreeRadius para que haga Digest, lo que no sé es si permite tener el password en UnixCrypt, casi seguro que no.
Pues el freeradius tambien se queja de que la contraseña no esta en claro o en ha1.
En definitiva creo que sí o sí necesitas tenerlo en HA1 (tampoco es tan malo, ¿no?).
Pues me parece que es lo menos malo que tengo. Intentaré documentarme un poco más, por que no creo que sea el primero al que le pasa esto.
Un saludo.
El Domingo, 13 de Julio de 2008, El buit escribió:
En definitiva creo que sí o sí necesitas tenerlo en HA1 (tampoco es tan malo, ¿no?).
Pues me parece que es lo menos malo que tengo. Intentaré documentarme un poco más, por que no creo que sea el primero al que le pasa esto.
Si lo piensas bien verás que no es nada raro tener un intento de centralización de usuarios en LDAP pero al final un montón de atributos para guardar el password de una u otra forma. Por ejemplo, un escenario típico es el de integración de usuarios de Windows/Linux, acceso SAMBA y tal, donde es necesario un atributo para el password UNIX y otro para Samba. Al final la cuestión es tener un interfaz de administración de LDAP que se encargue de actualizar todos esos campos transparentemente, ofreciéndo al administrador un único concepto "password".
sr-users-es@lists.kamailio.org