Configurar Linux y LDAP (II) – cliente

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

Configuracion LDAP 1

Configurar LDAP 2

Configuracion LDAP 3

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