11.8. Usar una interfaz web para gestionar usuarios y grupos en el servidor OpenLDAP

Puedes obtener más información sobre phpLDAPadmin en su página oficial (http://phpldapadmin.sourceforge.net) o en la Wikipedia (http://es.wikipedia.org/wiki/PhpLDAPadmin).

Existe un cliente para LDAP, basado en una interfaz web, que permite administrar de una forma sencilla un servidor LDAP desde cualquier lugar, a través de un sencillo navegador web. Este cliente es phpLDAPadmin, aunque también se conoce de forma abreviada como PLA.

El proyecto se inició en una universidad del estado de Utah (Estados Unidos) llamada Brigham Young University (BYU). Uno de sus estudiantes, Dave Smith, necesitó a finales de 2002 una aplicación web que le ayudara a administrar sus servidores LDAP. El resultado fue phpLDAPadmin, un software escrito en PHP que se ofreció a la comunidad informática bajo licencia GPL.

En la actualidad, además, se encuentra diosponible en diferentes idiomas.

phpLDAPadmin dispone de una vista con forma de árbol jerárquico que permite recorrer toda la estructura del directorio. Además, incorpora funciones de búsqueda avanzadas que lo convierten en una herramienta intuitiva para consultar y administrar el directorio LDAP.

Además de las características anteriores, podemos destacar las siguientes:

  • Edición de entradas a partir de plantillas.
  • Copias de entradas de un lugar a otro, incluso entre diferentes servidores.
  • Es capaz de copiar árboles completos de forma recursiva.
  • Borra entradas individuales y árboles completos.
  • Búsquedas sencillas y avanzadas en el directorio.
  • etc.

Como se trata de una aplicación web, funciona perfectamente en diferentes plataformas, permitiendonos administrar el servidor LDAP desde cualquier lugar y desde cualquier sistema.

Instalación de phpLDAPadmin

El acrónimo LAMP se refiere a una infraestructura web basada en las siguientes herramientas:

  • El sistema operativo LInux.
  • El servidor web Apache.
  • El gestor de bases de datos MySQL
  • El lenguaje de programación PHP

PHP puede sustituirse con Perl o Python y MySQL con MariaDB.

phpLDAPadmin se encuentra de forma predeterminada en los repositorios oficiales de Ubuntu 12.04, por lo que será muy sencillo instalarlo.

La única circunstancia a tener en cuenta son las dependencias. Como se trata de una aplicación escrita en PHP, para funcionar correctamente necesita disponer de un servidor LAPM instalado y activo en el servidor. Sin embargo, esta circunstancia la vamos a resolver aquí de una forma muy sencilla: añadiremos al comando apt-get la opción -y para que instale de forma automática (sin preguntarnos) cualquier dependencia que tenga phpLDAPadmin.

Por lo tanto, abriremos la terminal y ejecutaremos el siguiente comando:

sudo apt-get install phpldapadmin -y

1

Ejecutamos el comando.

2

Poco después, y sin ninguna intervención por nuestra parte, el programa estará instalado.

Después de esto phpLDAPadmin está listo para usarse.

Acceder al servidor LDAP con phpLDAPadmin

Acceder a phpLDAPadmin es tan sencillo como abrir cualquier navegador web en el servidor y, en la barra de direcciones, escribir la siguiente URL:

http://localhost/phpldapadmin/

Sin embargo, lo más interesante es poder acceder desde una máquina diferente del servidor. Para ello, abrimos el navegador de la máquina cliente y, en su barra de direcciones, escribimos la dirección anterior, pero sustituyendo localhost por la dirección IP del servidor (en nuestro ejemplo, 192.168.1.10):

http://192.168.1.10/phpldapadmin/

1

si todo es correcto, veremos la pantalla principal de phpLDAPadmin.

Ahora, para comenzar a trabajar con el servidor, bastará con hacer clic en el enlace conectar que encontramos en el panel izquierdo.

2

El panel derecho cambiará para pedirnos la información de autenticación.

Lo primero que llama la atención es que, en el cuadro Login, aparece un texto de ejemplo que deberemos cambiar por los datos particulares de nuestro directorio. Debajo, escribimos la contraseña para el servidor LDAP.

3

Cuando estemos listos, hacemos clic sobre el botón Identificarse.

Esto, ya estaremos listos para comenzar a trabajar en el directorio.

Si quieres evitar la necesidad de escribir, cada vez que inicies sesión, los datos del servidor, es tan sencillo como modificar un par de líneas en el archivo config.php.

Como es habitual, lo abrimos utilizando el procesador de textos nano:

sudo nano /usr/share/phpldapadmin/config/config.php

4

Lógicamente, deberemos escribir la contraseña de superusuario.

Una vez que se haya cargado el archivo, buscaremos las dos líneas siguientes:

$servers->setValue('server','base',array('dc=example,dc=com'));
...
$servers->setValue('login','bind_id','cn=admin,dc=example,dc=com');

Y sustituimos su valor por este:

 $servers->setValue('server','base',array('dc=somebooks,dc=local'));
...
$servers->setValue('login','bind_id','cn=admin,dc=somebooks,dc=local');

Lógicamente, deberás cambiar dc=somebooks,dc=local por los datos correspondientes a tu instalación.

5

Cuando esté listo, pulsamos Ctrl + x para salir y nos aseguramos de guardar los cambios en el archivo.

Ahora, cada vez que accedamos al servidor desde phpLDAPadmin aparecerán los datos de Login de forma predeterminada.

6

Sólo tendremos que escribir la contraseña.

Crear usuarios y grupos con phpLDAPadmin

Después de ver cómo se crean usuarios y grupos usando archivos LDIF, probablemente estés muy interesado en conocer alguna forma más amigable. En este sentido, phpLDAPadmin ofrece un salto cualitativo importante. No obstante, es preciso decir que, cuando necesitemos crear un gran volumen de usuarios en los que gran parte de los datos se repite para cada uno de ellos, quizás sea más atractiva la idea de utilizar archivos LDIF, ya que nos permitirá crear usuarios de forma automatizada.

No obstante, en este apartado nos centraremos en crear usuarios y grupos de forma individual a través de phpLDAPadmin.

Añadir usuarios con phpLDAPadmin

Lógicamente, para añadir un nuevo usuario, lo primero que necesitaremos será estar identificado en el servidor OpenLDAP. A continuación, seguiremos los siguientes pasos:

1

En el panel izquierdo de la ventana del navegador, haremos clic sobre el elemento Crear nuevo objeto, dentro de la categoría usuarios.

Al hacerlo, cambiará el panel derecho de la ventana.

2

En él, haremos clic sobre el elemento Predeterminado.

De nuevo, el panel derecho cambiará para mostrar el primer paso de la creación de usuarios. En él disponemos de dos elementos: El contenedor y los tipos de objeto a los que puede pertenecer el usuario que vamos a crear. En nuestro caso, el contenedor lo dejamos tal y como aparece. En cuanto a los tipos de objetos, deberemos seleccionar dos: account y posixAccount.

Recuerda que, para hacer una selección múltiple, deberás elegir el primero y pulsar la tecla Ctrl mientras haces clic en el segundo.

3

Después, haremos clic sobre el botón Proceder.

Al hacerlo, el panel derecho volverá a cambiar para mostrar el paso 2. Aquí tendremos que elegir el RDN (Relative Distinguished Name) del cliente en la lista superior y, justo debajo, sus atributos.

Como mínimo, deberemos rellenar los siguientes atributos:

  • El nombre descriptivo del usuario (cn). Por ejemplo Luis Gomez.
  • El identificador del grupo al que pertenece (gidNumber), que deberá corresponder con un grupo existente. Por ejemplo 10000.
  • El directorio raíz para el usuario (homeDirectory). Por ejemplo, /home/lgomez.
  • El identificador del usuario (uidNumber), que debe ser único. Por ejemplo 1002.
  • El nombre de la cuenta del usuario (userid). Por ejemplo, lgomez.
  • El intérprete de comandos que utilizará el usuario (loginShell): Por ejemplo, /bin/bash.
  • La contraseña predeterminada del usuario (userPassword).

El campo loginShell no es imprescindible, pero es muy recomendable.

4

Como mínimo, Rellenamos todos los valores imprescindibles.

5

Cuando hayamos completado los datos, haremos clic sobre el botón Crear objeto.

A continuación, el panel derecho de la ventana volverá a cambiar para mostrarnos un resumen de los datos que hemos introducido.

6

Si todo es correcto, haremos clic sobre el botón Cometer.

Un instante después, el panel derecho mostrará los datos del usuario que acabamos de crear, para que podamos modificarlos (si fuese necesario).

7

Además, en el panel izquierdo, ya aparece el nuevo usuario.

Añadir grupos con phpLDAPadmin

El proceso que seguiremos para crear un nuevo grupo es muy parecido al que hemos aplicado para crear nuevos usuarios.

Comenzaremos por hacer clic sobre el enlace Crear nuevo objeto dentro de la categoría grupos.

1

A continuación, en el panel derecho, hacemos clic sobre el elemento Predeterminado.

Como antes, el panel derecho cambiará para mostrarnos el primer paso de la creación del nuevo grupo.

Como en el caso anterior, el Contenedor lo dejamos tal cual aparece. En cuanto a Clases de objeto, en este caso sólo seleccionamos posixGroup.

2

Después, haremos clic sobre el botón Proceder.

En el segundo paso, deberemos rellenar, como mínimo, los siguientes valores:

  • El nombre completo (RDN) que deberá ser cn(cn).
  • El nombre descriptivo del grupo (cn). Por ejemplo SMR1.
  • El identificador del grupo (gidNumber), que no podrá coincidir con ningún grupo existente. Por ejemplo 10001.

Aunque no es imprescindible, es muy recomendable que rellenemos también el campo descripción (description)

3

Cuando hayamos completado los datos, haremos clic sobre el botón Crear objeto.

Después de esto, el panel derecho nos muestra un resumen de los datos que hemos introducido.

4

Si todo es correcto, haremos clic sobre el botón Cometer.

Poco después, el panel derecho mostrará el grupo que hemos creado, para que podamos modificarlo si fuese necesario.

5

Además, en el panel izquierdo, ya aparece el nuevo grupo.


Anterior

Contenido

Siguiente