En la primera parte vimos como poner un servidor LDAP en linux con la estructura importada de nuestros usuarios y grupos, en esta segunda parte veremos cómo hacer que un ordenador se conecte a ese servidor para recuperar los usuarios y poder autenticarse.
El método es bastante diferente si lo hacemos desde Ubuntu / debian que si lo hacemos desde CentOS / RHEL, por eso lo describiré por separado:
1. Ubuntu , una buena referencia es esta o esta otra.
Los pasos a seguir son:
apt-get install libpam-ldap libnss-ldap
Aquí aparecerá una ventana de configuración donde nos pedirá:
- Servidor LDAP: ldap.digimate.biz
- Base de busqueda: dc=digimate,dc=biz
- Version LDAP: 3.
- Si se quiere hacer root administrador de la bbdd: si
- Requiere login: NO
- Cuenta privilegiada:uid=root,ou=People,dc=digimate,dc=biz
- Password: el_password_de_root
Una vez hecho esto, hay que editar a mano algunos archivos… Esta parte no es muy bonita en ubuntu:
$ sudo vi /etc/pam.d/common-account
account sufficient pam_ldap.so
account required pam_unix.so
$ sudo vi /etc/pam.d/common-auth
auth sufficient pam_ldap.so
auth required pam_unix.so nullok_secure
$ sudo vi /etc/pam.d/common-password
password sufficient pam_ldap.so
password required pam_unix.so nullok obscure min=4 max=8 md5
$ sudo vi /etc/pam.d/common-session
session sufficient pam_ldap.so
session required pam_unix.so
Y por último hay que editar el archivo /etc/ldap.conf
NOTA: esto no está documentado en ningún sitio, y poner los datos correctos de nuestro servidor (no se pq no se guardan con el reconfigure, peeero).
Ahora, para probar, nada más sencillo que:
getent passwd
Esto ya nos debería devolver todos los usuarios del ldap. Si nos da algún error, tendremos que revisar los archivos anteriormente cambiados. Tengo que decir que esta configuración varía según el sistema que utiliceis. En gutsi es suficiente con esto, en versiones anteriores hay que modificar el archivo /etc/libnss-ldap.conf
y, aún así, da problemas con el gdm cada vez que arranca (estoy en ello todavía).
2. CentOS / RHEL
En CentOS / RHEL 5 el procedimiento es mucho más sencillo, simplemente hay que acceder a la opción:
Sistema -> Administración -> Autenticación
Una vez hecho esto podemos realizar las mismas pruebas que con Ubuntu (gentent passwd), e incluso a hacer login con un usuario del directorio contra nuestra máquina.
En las siguientes entregas veremos su uso para email, pop, etc.
ACTUALIZACIÓN: 7 ago 2009
En las nuevas versiones de ubuntu es más sencillo configurar el cliente (aunque sigue sin ser tan gráfico como centos), la referencia completa se puede encontrar aqui.
Las instrucciones para 8.10 se resumen en lo siguiente:
sudo apt-get install libnss-ldap sudo dpkg-reconfigure ldap-auth-config sudo auth-client-config -a -p lac_ldap
En versiones más modernas el último paso devuelve el error
Error in updating the file: ‘pam_account’ not found
y hay que ejecutar:
sudo auth-client-config -t nss -p lac_ldap