5.2. Instalación del software necesario

Antes de poder autentificar a los usuarios a través de un servidor LDAP, es necesario instalar algunas utilidades en el cliente, como pam_ldap y nss_ldap. Esta sección mostrará la forma de instalación de estas utilidades.

5.2.1. Instalación de pam_ldap

pam_ldap permite hacer uso de un servidor LDAP para la autentificación de usuarios (comprobación de claves) a aquellas aplicaciones que utilicen PAM.

En Debian GNU/Linux el paquete libpam-ldap provee esta funcionalidad, por lo que será instalado en la máquina, como muestra el Ejemplo 5.2, “Instalación de libpam-ldap”

Antes de proceder con su instalación, eche un vistazo a la descripción del paquete:

Ejemplo 5.1. Información sobre el paquete libpam-ldap

$ /usr/bin/apt-cache show libpam-ldap
Package: libpam-ldap
Priority: extra
Section: admin
Installed-Size: 284
Maintainer: Stephen Frost <sfrost@debian.org>
Architecture: i386
Version: 164-2 1
Depends: libc6 (>= 2.3.2-1), libldap2 (>= 2.1.17-1), libpam0g (>= 0.76), debconf (>= 0.5)
Suggests: libnss-ldap
Filename: pool/main/libp/libpam-ldap/libpam-ldap_164-2_i386.deb
Size: 49744
MD5sum: 386b9b94a707b491d4414f2c28eea660
Description: Pluggable Authentication Module allowing LDAP interfaces
 This module let's you use you LDAP server to authenticate users with
 programs that utilize PAM. If used along with libnss-ldap, you can
 replace your entire flat file (/etc/*) structure or NIS with LDAP.

1

Versión de libpam-ldap que acompaña a Debian GNU/Linux en su versión “en desarrollo”, que va a ser instalada

Ejemplo 5.2. Instalación de libpam-ldap

# /usr/bin/apt-get install libpam-ldap
Leyendo lista de paquetes... Hecho
Creando árbol de dependencias... Hecho
Paquetes sugeridos:
  libnss-ldap
Se instalarán los siguientes paquetes NUEVOS:
  libpam-ldap
0 actualizados, 1 se instalarán, 0 para eliminar y 1 no actualizados.
Se necesita descargar 0B/49,7kB de archivos.
Se utilizarán 291kB de espacio de disco adicional después de desempaquetar.
Preconfiguring packages ...
Seleccionando el paquete libpam-ldap previamente no seleccionado.
(Leyendo la base de datos ...
252791 ficheros y directorios instalados actualmente.)
Desempaquetando libpam-ldap (de .../libpam-ldap_164-2_i386.deb) ...
Configurando libpam-ldap (164-2) ...

localepurge: checking system for new locale ...
localepurge: processing locale files ...
localepurge: processing man pages ...

Antes de continuar se van a configurar algunos aspectos del paquete libpam-ldap. Para ello es necesario ejecutar el siguiente comando:

Ejemplo 5.3. Configuración del paquete libpam-ldap

# /usr/sbin/dpkg-reconfigure --priority=low libpam-ldap

Figura 5.1. URL del servidor LDAP

URL del servidor LDAP

Dirección del servidor LDAP que se va a utilizar para la autentificación de usuarios.

Figura 5.2. Nombre distintivo de la base de búsquedas

Nombre distintivo de la base de búsquedas

Nombre distintivo de la base de búsquedas.

Figura 5.3. Versión del protocolo LDAP

Versión del protocolo LDAP

Versión del protocolo LDAP a utilizar, es recomendable hacer uso de la versión 3.

Figura 5.4. Comportamiento a la hora del cambio de claves

Comportamiento a la hora del cambio de claves

Contestamos afirmativamente a esta pregunta, de esta forma, aquellas aplicaciones que cambien claves por medio de PAM, se comportarán como si lo hiciesen de forma local.

Figura 5.5. ¿Necesita autentificación la conexión con la base de datos?

¿Necesita autentificación la conexión con la base de datos?

En este ejemplo no se necesita autentificarse para acceder a la base de datos LDAP, por lo que se responde que NO.

Figura 5.6. Administrador de LDAP

Administrador de LDAP

Cuenta del administrador de LDAP, en este caso “admin”.

Figura 5.7. Clave del administrador de LDAP

Clave del administrador de LDAP

Se introduce la clave del administrador de LDAP.

Figura 5.8. Elección el método de encriptación para las claves

Elección el método de encriptación para las claves

El método de encriptación elegido para almacenar las claves ha sido “exop”, de esta forma pam-ldap utilizará el algoritmo de hash especificado en el archivo /etc/ldap/slapd.conf, en lugar de realizar la operación hash localmente y escribir el resultado en la base de datos directamente.

La configuración del módulo pam_ldap.so se almacena en el archivo /etc/pam_ldap.conf, cuyo contenido se encuentra en el Apéndice T, Archivo de configuración /etc/pam_ldap.conf.

[Warning]Aviso

El archivo /etc/pam_ldap.conf se ha de poder leer por todos los usuarios del sistema, para asegurarse de que es legible por todo el mundo, puede ejecutar: /bin/chmod 644 /etc/pam_ldap.conf.

En estos momentos el sistema ya está listo para la configuración de los distintos servicios que utilizan PAM, de forma que estos utilicen LDAP para la comprobación de la clave. Cada servicio que hace uso de PAM para la autentificación, posee su propio archivo bajo el directorio /etc/pam.d/. Para que dicho servicio utilice LDAP en la comprobación de claves, se ha de modificar su archivo de configuración. Esto se verá en la Sección 5.3.2, “Configuración de PAM”.

5.2.2. Instalación de nss-ldap

nss-ldap permite a un servidor LDAP actuar como un servidor de nombres. Esto significa que provee la información de las cuentas de usuario, los IDs de los grupos, la información de la máquina, los alias, los grupos de red y básicamente cualquier cosa que normalmente se obtiene desde los archivos almacenados bajo /etc o desde un servidor NIS.

En Debian GNU/Linux el paquete libnss-ldap provee esta funcionalidad, por lo que será instalado en la máquina, como muestra el Ejemplo 5.5, “Instalación de libnss-ldap (primera parte)”

Antes de proceder a su instalación, eche un vistazo a la descripción del paquete:

Ejemplo 5.4. Instalación de libnss-ldap

$ /usr/bin/apt-cache show libnss-ldap
Package: libnss-ldap
Priority: extra
Section: net
Installed-Size: 208
Maintainer: Stephen Frost <sfrost@debian.org>
Architecture: i386
Version: 211-4 1
Depends: libc6 (>= 2.3.2-1), libdb4.1, libldap2 (>= 2.1.17-1), debconf
Recommends: nscd, libpam-ldap
Filename: pool/main/libn/libnss-ldap/libnss-ldap_211-4_i386.deb
Size: 68052
MD5sum: c7fbc3504f8429655742e6a8cc7ec54c
Description: NSS module for using LDAP as a naming service
 This package provides a Name Service Switch that allows your LDAP server
 act as a name service. This means providing user account information,
 group id's, host information, aliases, netgroups, and basically anything
 else that you would normally get from /etc flat files or NIS.
 .
 If used with glibc 2.1's nscd (Name Service Cache Daemon) it will help
 reduce your network traffic and speed up lookups for entries.

1

Versión de libnss-ldap que se va a instalar

Ejemplo 5.5. Instalación de libnss-ldap (primera parte)

# /usr/bin/apt-get install libnss-ldap
Leyendo lista de paquetes... Hecho
Creando árbol de dependencias... Hecho
Paquetes recomendados
  nscd
Se instalarán los siguientes paquetes NUEVOS:
  libnss-ldap
0 actualizados, 1 se instalarán, 0 para eliminar y 1 no actualizados.
Se necesita descargar 0B/68,1kB de archivos.
Se utilizarán 213kB de espacio de disco adicional después de desempaquetar.
Preconfiguring packages ...

Figura 5.9. Dirección del servidor LDAP

Dirección del servidor LDAP

Dirección del servidor LDAP que se va a utilizar para la autentificación de usuarios.

Figura 5.10. Nombre distintivo de la base de búsquedas

Nombre distintivo de la base de búsquedas

Nombre distintivo de la base de búsquedas.

Figura 5.11. Versión del protocolo LDAP

Versión del protocolo LDAP

Versión del protocolo LDAP a utilizar, es recomendable hacer uso de la versión 3.

Figura 5.12. Método de acceso a la base de datos

Método de acceso a la base de datos

En este ejemplo no se necesita autentificarse para acceder a la base de datos LDAP, por lo que se responde: NO.

Figura 5.13. Permisos del archivo de configuración

Permisos del archivo de configuración

Es buena idea que sólo el propietario del archivo pueda leer su información, máxime cuando este puede tener claves. Por este motivo se responde que a esta pregunta.

Figura 5.14. Información sobre libnss-ldap

Información sobre libnss-ldap

La configuración del paquete nos muestra información adicional sobre el mismo. Si se quiere ver el ejemplo del archivo /etc/nsswitch.conf que provee libnss-ldap, acceda a: /usr/share/doc/libnss-ldap/examples/nsswitch.ldap. De todas formas, en el Apéndice S, Archivo de configuración /etc/nsswitch.conf se dispone de un ejemplo.

Ejemplo 5.6. Instalación de libnss-ldap (segunda parte)

Seleccionando el paquete libnss-ldap previamente no seleccionado.
(Leyendo la base de datos ...
252836 ficheros y directorios instalados actualmente.)
Desempaquetando libnss-ldap (de .../libnss-ldap_211-4_i386.deb) ...
Configurando libnss-ldap (211-4) ...

localepurge: checking system for new locale ...
localepurge: processing locale files ...
localepurge: processing man pages ...

La configuración de nss-ldap se almacena en el archivo /etc/libnss-ldap.conf, cuyo contenido se encuentra en el Apéndice U, Archivo de configuración /etc/libnss-ldap.conf.

[Warning]Aviso

El archivo /etc/libnss-ldap.conf se ha de poder leer por todos los usuarios del sistema, para asegurarse de que es legible por todo el mundo, puede ejecutar: /bin/chmod 644 /etc/libnss-ldap.conf.