LDAP (parte 1): Instalar OpenLDAP en Ubuntu 20.04 LTS

Publicado por P. Ruiz en

OpenLDAP logoLDAP es un protocolo de acceso distribuido, con una estructura ordenada, que permite establecer un servicio de directorio, con información accesible a través de la red.

Como en otros casos más complejos, como Active Directory, LDAP permite la organización de datos  por ámbitos geográficos, estructurales, etc. Y suele utilizar un espacio de nombres basado en DNS.

Las entradas del directorio pueden representar un amplio abanico de objetos, como usuarios, grupos, unidades organizativas, carpetas, archivos, impresoras, etc.

Uno de los usos más interesantes que podemos darle, es el almacenamiento de la información de autenticación de los usuarios, que nos permitirá gestionarla de forma centralizada. Este es el uso que aprenderemos a hacer del protocolo LDAP en la serie de artículos que comenzamos hoy

Por cierto, el nombre LDAP está formado por las siglas en inglés de Lightweight Directory Access Protocol (Protocolo Ligero de Acceso a Directorios).

Si necesitas conocer más datos sobre LDAP, puedes consultar nuestro libro gratuito Sistemas Operativos en Red (2ª edición). En particular, el Capítulo 12: Instalar y configurar OpenLDAP en Ubuntu.

Para nuestra implementación usaremos OpenLDAP, una implementación de código abierto para el protocolo LDAP, que podemos encontrar en multituc de sistemas, como BSD (FreeBSD), Solaris (OpenSolaris), HP-UX, IBM AIX, macOS, Windows (versiones de escritorio y servidor) y, por supuesto, GNU/Linux.

Hoy te mostramos cómo instalarlo sobre Ubuntu Server 20.04 LTS, y en los próximos artículos veremos cómo configurarlo de forma adecuada.

En el último artículo de la serie, dando por hecho que dispones del sistema de archivos NFS debidamente instalado y configurado para exportar la carpeta /home, te enseñaremos a crear perfiles móviles de usuario en Ubuntu usando NFS y LDAP… Aunque esta última parte solo será necesaria cuando necesites este tipo de perfiles.

Si necesitas ayuda con NFS, te recomiendo revisar el capítulo 11, Instalar y configurar NFS en Ubuntu, de nuestro libro Sistemas Operativos en Red (2ª edición).

Configuración inicial

Existen algunas cuestiones que deberemos tener en cuenta antes de instalar y configurar Ubuntu como servidor LDAP:

  • Lo primero será asegurarnos de que el sistema tiene asignada una dirección IP estática. Si tienes dudas sobre cómo conseguirlo, puedes consultar el artículo Establecer una dirección IP estática en Ubuntu Server 20.04.

    Para consultar la configuración de red y asegurarte de que es correcta, puedes ejecutar el siguiente comando, aunque el nombre concreto del archivo puede cambiar ligeramente en tu sistema:

    cat /etc/netplan/00-installer-config.yaml

    El archivo debe contener una configuración similar a la de la imagen, pero adaptada a las necesidades de tu red.

    img001
  • También comprobaremos que los archivos/etc/hostname y /etc/hosts contienen los nombres adecuados para el servidor.

    En el caso de /etc/hostname, para asignar un nuevo nombre al servidor, bastará con ejecutar el siguiente comando:

    sudo hostnamectl set-hostname ldapserver.somebooks.local

    …Aunque deberás ajustar el nombre del equipo según tus necesidades

    img002

    Con /etc/hosts el proceso es un poco más largo: debemos editar el archivo e incluir las líneas que relacionen la dirección IP estática del servidor con los nombres lógicos que tenemos previsto utilizar.

    Para lograrlo, comenzaremos usando, por ejemplo, el editor nano:

    sudo nano /etc/hosts

    Escribimos la orden y pulsamos la tecla Intro.

    img003

    Una vez que nos encontramos en el entorno del editor, modificamos la línea que hace referencia al bucle local y añadimos una nueva línea que haga referencia a la dirección IP estática. En definitiva, algo como esto:

    127.0.1.1 ldapserver.somebooks.local ldapserver
    192.168.1.10 ldapserver.somebooks.local ldapserver

    … pero, como antes, adaptando los nombres a tus necesidades.

    Cuando acabemos, pulsamos Ctrl + X para salir, asegurándonos de guardar los cambios.

    img004

Como antes, si tienes alguna duda sobre cómo hacerlo, puedes consultar el artículo Proporcionar un nuevo nombre para el equipo en Ubuntu 20.04 LTS.

Instalar el software necesario

El proceso de instalación es realmente sencillo. Básicamente consiste en instalar el paquete slapd, aunque nosotros también instalaremos el paquete que contiene las utilidades de administración de LDAP: ldap-utils. Sin embargo, lo primero será asegurarnos de que el sistema se encuentra completamente actualizado. Para lograrlo, bastará con ejecutar una orden como la siguiente:

sudo apt update -y && sudo apt upgrade -y && sudo apt dist-upgrade -y

En realidad, se trata de tres comando, que se ejecutarán de forma sucesiva: el primero actualiza los repositorios del sistema, el segundo actualiza los paquetes que sean necesarios y el tercero se asegura de llevarlos a su última versión.

Por su parte, con el argumento -y indicamos que aplique, de forma predeterminada, una respuesta afirmativa para cualquier pregunta que el sistema necesite hacernos. De este modo, el comando se ejecuta sin preguntar nada.

Como antes, escribimos la orden y pulsamos la tecla Intro.

img005

Una vez completada la actualización, pasamos a la instalación propiamente dicha. Como los dos paquetes que necesitamos se encuentran en los repositorios oficiales de Ubuntu 20.04 LTS, sólo tenemos que escribir en la terminal la siguiente orden:

sudo apt install slapd ldap-utils -y

De nuevo, escribimos la orden y pulsamos la tecla Intro.

img006


Durante el proceso, aparece el asistente de instalación de OpenLDAP, que realiza una configuración predeterminada y solo nos pide la contraseña de administración.

En realidad, no es importante el valor que incluyas ahora, porque después realizaremos la configuración de forma manual.

Cuando terminemos de escribir, pulsaremos la tecla Intro.

img007

Como suele ocurrir cuando escribimos una contraseña, para evitar que hayamos cometido algún error tipográfico que después nos impida la entrada, el sistema nos pide que volvamos a escribirla.

Lo hacemos y volvemos a pulsar la tecla Intro.

img008

Al hacerlo, la pantalla vuelve a su aspecto habitual y la instalación sigue su curso, hasta completarse un momento más tarde.

Realizar la configuración básica

Una vez concluida la instalación, debemos realizar la configuración que te mencionaba más arriba. Y para lograrlo, basta con usar el siguiente comando:

sudo dpkg-reconfigure slapd

Ejecutamos el comando con privilegios de administrador.

img009

Así conseguiremos que se inicie de nuevo el asistente de configuración, pero esta vez nos pedirá todos los datos.

Lo primero que nos pregunta el asistente es si queremos omitir la configuración de OpenLDAP.

Obviamente, la respuesta en esta etapa debe ser <No>.

img010

Después, deberemos escribir el nombre DNS del dominio que usaremos en nuestro directorio LDAP. En mi ejemplo, usaré el siguiente:

somebooks.local

… Pero te recuerdo que deberás ajustarlo a tus necesidades.

Cuando terminemos de escribir, pulsaremos la tecla Intro.

img011

A continuación, deberemos escribir el nombre de la empresa o entidad en la que estemos realizando la instalación. En mi caso, escribiré lo siguiente:

somebooks

De nuevo, lo escribimos y pulsamos la tecla Intro.

img012

Lo siguiente será escribir la contraseña de administración. Ahora sí debe ser la buena y, como siempre, deberá ser segura.

Si consideras que la contraseña local cumple con las necesidades, no hay ningún inconveniente para volver a usarla, aunque serás tú quien deba evaluar este aspecto en función de los requisitos de seguridad de tu entorno.

Como antes, escribimos el valor adecuado y pulsamos la tecla Intro.

img013

Como se trata de una contraseña, deberemos volver a escribirla para evitar contratiempos futuros.

Nos aseguramos de escribir el mismo valor y pulsamos la tecla Intro.

img014

Seguidamente, el asistente nos pregunta si queremos eliminar la base de datos de configuración antigua.

Nos aseguramos de seleccionar la opción <Yes> y pulsamos la tecla Intro.

img015

Por último, el asistente nos avisa de que aún quedan archivos en la carpeta de LDAP, que pueden estropear el proceso de configuración y nos pide autorización para retirarlos antes de creare la nueva base de datos.

De nuevo, nos aseguramos de seleccionar la opción <Yes> y pulsamos la tecla Intro.

img016

Al hacerlo, se cierra el asistente la ventana vuelve a su aspecto inicia, donde podemos comprobar que las operaciones de configuración se han realizado correctamente.

Salida del comando dpkg-reconfigury.

img017

Con esto, habremos terminado la tarea.

Comprobar la instalación

Una vez concluida la instalación, podemos comprobar que todo es correcto usando el comando slapcat:

sudo slapcat

El objetivo de este comando consiste en obtener la información de la base de datos LDAP.

La salida se produce en formado LDIF, lo que nos facilitará exportar la estructura del directorio LDAP o, sencillamente, obtener una copia de respaldo de su contenido. Para lograrlo, bastará con con redirigir su salida a un archivo.

Puedes obtener más información sobre los archivos LDIF en el Capítulo 12: Instalar y configurar OpenLDAP en Ubuntu de nuestro libro Sistemas Operativos en Red (2ª edición).

Nosotros lo ejecutamos sin hacer ninguna redirección, porque solo pretendemos obtener el resultado en la pantalla.

img018

Y comprobamos que la salida se corresponde con lo que esperamos.

Con esto terminamos el contenido del artículo. En los siguientes, seguiremos añadiendo funcionalidad al directorio LDAP. Espero que te esté resultado interesante.