Capítulo 25. Servicio de directorios LDAP

Tabla de contenidos

25.1. LDAP frente a NIS
25.2. Estructura de un árbol de directorios de LDAP
25.3. Configuración del servidor con slapd.conf
25.4. Gestión de datos en el directorio LDAP
25.5. El cliente LDAP de YaST
25.6. Configuración de los usuarios y grupos LDAP en YaST
25.7. Información adicional

Resumen

El protocolo ligero de acceso al directorio (LDAP) es un conjunto de protocolos diseñados para acceder a los directorios de información y mantenerlos. Puede usarse LDAP con varios propósitos, como la gestión de usuarios, grupos, configuraciones del sistema y direcciones. En este capítulo se ofrece una explicación básica sobre cómo funciona OpenLDAP y cómo gestionar los datos de LDAP con YaST. Como hay varias implementaciones del protocolo LDAP, este capítulo se centra por completo en la de OpenLDAP.

En un entorno de red es fundamental mantener la información importante estructurada y disponible rápidamente. Esto puede realizarse con un servicio de directorio que, como las páginas amarillas, mantenga la información disponible con un formato de búsqueda rápido y bien estructurado.

En una situación ideal, un servidor central mantiene los datos en un directorio y los distribuye a todos los clientes mediante un protocolo concreto. Los datos se estructuran de manera que permiten que una amplia gama de aplicaciones acceda a ellos. De esta forma, no es necesario que cada herramienta de calendario o cliente de correo electrónico mantenga su propia base de datos. En lugar de ello, se puede acceder a un repositorio central. De ese modo se reduce notablemente el esfuerzo que requiere la administración de la información. El uso de un protocolo abierto y estandarizado como LDAP asegura que todas las aplicaciones cliente puedan acceder a dicha información.

Un directorio en este contexto es un tipo de base de datos optimizada para una lectura y búsqueda rápida y efectiva:

Un servicio de directorio como LDAP no está diseñado para admitir actualizaciones complejas o mecanismos de consulta. Todas las aplicaciones que accedan a este servicio deben poder hacerlo de manera rápida y sencilla.

Han existido previamente muchos servicios de directorio y aún existen en Unix y fuera de él. Novell NDS, Microsoft ADS, Street Talk de Banyan y el estándar OSI X.500 son sólo algunos ejemplos. LDAP se diseñó en un principio como una variación simplificada de DAP, el protocolo de acceso al Directorio, que se desarrolló para acceder al X.500. El estándar X.500 regula la organización jerárquica de las entradas de directorio.

LDAP es una versión más sencilla de DAP. Sin perder la jerarquía de entradas de X.500, saca partido de las posibilidades de utilizar distintas plataformas de LDAP y ahorra recursos. El uso de TCP/IP hace mucho más sencillo establecer interfaces entre una aplicación de anclaje y el servicio LDAP.

LDAP, entretanto, ha evolucionado y se utiliza cada vez más como una solución autónoma sin la ayuda de X.500. LDAP es compatible con las referencias con LDAPv3 (la versión del protocolo en el paquete openldap2), lo que permite disponer de bases de datos distribuidas. El uso de SASL (Capa sencilla de seguridad y autenticación) también es nuevo.

LDAP no está limitado a la consulta de datos de los servidores X.500, tal y como se pensó en un principio. Hay un servidor de código abierto, slapd, que puede almacenar información de objetos en una base de datos local. También hay una extensión denominada slurpd, que es la responsable de replicar varios servidores LDAP.

El paquete openldap2 consta de lo siguiente:

slapd

Servidor LDAPv3 autónomo que administra la información de objetos en una base de datos basada en BerkeleyDB.

slurpd

Este programa permite la replicación de modificaciones de datos en un servidor LDAP local a otros servidores LDAP instalados en la red.

herramientas adicionales para el mantenimiento del sistema

slapcat, slapadd, slapindex


25.1. LDAP frente a NIS

El administrador del sistema Unix normalmente utiliza el servicio NIS (Servicio de información de red) para la resolución de nombres y la distribución de datos por la red. Los datos de configuración incluidos en los archivos de /etc y los directorios group, hosts, mail, netgroup, networks, passwd, printcap, protocols, rpc y services se distribuyen por los clientes por toda la red. Estos archivos pueden mantenerse sin gran esfuerzo porque son archivos de texto sencillos. La gestión de cantidades más grandes de datos, sin embargo, se vuelve cada vez más difícil debido a una estructura inexistente. NIS está diseñado únicamente para plataformas Unix, lo que significa que no se puede utilizar como herramienta de administración de datos centralizada en redes heterogéneas.

A diferencia de NIS, el servicio LDAP no está restringido a redes Unix puras. Los servidores Windows (a partir de la versión 2000) admiten LDAP como servicio de directorio. Novell también ofrece un servicio LDAP. Las tareas de aplicaciones mencionadas anteriormente también son compatibles en sistemas que no sean Unix.

El principio de LDAP puede aplicarse a cualquier estructura de datos que deba administrarse de manera centralizada. Algunos ejemplos de su aplicación son los siguientes:

  • Empleo como sustituto para el servicio NIS

  • Encaminamiento de correo (postfix, sendmail)

  • Libretas de direcciones para clientes de correo como Mozilla, Evolution y Outlook

  • Administración de descripciones de zona para un servidor de nombres BIND9

  • Autenticación de usuarios con Samba en redes heterogéneas

Esta lista puede ampliarse porque LDAP es extensible, al contrario que NIS. La estructura jerárquica claramente definida de los datos facilita la administración de grandes cantidades de ellos puesto que se puede buscar mejor.