Grg:ejabberd con autenticacion por LDAP

Al intentar configurar un servidor de jabber para la empresa que trabajo, me di cuenta que la gestión de usuarios es bastante importante. Justamente necesitaba centralizar los usuarios en algún lado. Como ya tenemos instalado un Windows server 2003 con todos los usuarios, por eso decidí no cambiarlo y que el server de jabber autentifique contra estos datos.

Cabe mencionar que he probado con el servidor wildfire que viene con elastix, pero no funciona bien con algunos clientes. Por eso decidi usar ejabberd que parece bastante mejor y también soporta LDAP.

No hay demasiada informacion sobre ejabberd con LDAP, asi que tuve que leer bastante sobre LDAP primero. Pero después de probar con todas las opciones que lei en blogs o foros y horas de debbuging, di con esta configuracion:

{auth_method, ldap}. {ldap_servers, ["dominio.com.ar"]}. {ldap_uids, [{"sAMAccountName"}]}. {ldap_base, "DC=dominio,DC=com,DC=ar"}. {ldap_rootdn, "CN=administrator,CN=Users,DC=dominio,DC=com,DC=ar"}. {ldap_password, "contraseña"}.

Funciona!

Uno de los problemas que recuerdo es que la opcion en ldap_rootdn debemos poner un usuario administrador y ademas la unidad orgazional a la que pertenece. En este caso (como viene instalado por defecto), es el usuario Administrator en la unidad orgazional Users.

Para loguearse desde un cliente, debemos poner: usuario_de_ldap@dominio-ejabberd.com, ese dominio es declarado en el parametro {hosts, ["dominio.com.ar"]}. Y no se usa para resolver IP, asi que podemos ponerle lo que sea. Es simplemente un nombre de fantasia.