Instale el servidor OpenLDAP y administre con phpLDAPadmin en Debian/Ubuntu
LDAP significa Protocolo ligero de acceso a directorios que se puede utilizar de numerosas formas, como autenticación, directorio compartido (para clientes de correo), libreta de direcciones, etc. El El protocolo LDAP se puede utilizar para establecer y almacenar cualquier tipo de información. El servidor OpenLDAP le brinda la posibilidad de acceder a la información que está almacenada en una estructura de árbol.
En este artículo te mostraremos cómo instalar y configurar un servidor OpenLDAP y cómo administrarlo con phpLDAPadmin en Debian, Ubuntu. y Linux Mint.
Instalación del servidor OpenLDAP en Linux
Por defecto, el servidor OpenLDAP está en repositorios bajo el paquete “slapd”. Puede instalarlo fácilmente con la ayuda de la herramienta de administración de paquetes llamada apt-get. Pero antes de instalar el servidor OpenLDAP, asegúrese de que su sistema esté actualizado.
Durante la instalación, le pedirá que ingrese una contraseña para la entrada admin en su directorio LDAP. Ingrese una contraseña segura y confírmela seleccionando Aceptar.
sudo apt-get update
sudo apt-get install slapd ldap-utils
Configurar el servidor OpenLDAP
Para configurar el servidor OpenLDAP necesita editar el archivo ldap.conf, que se almacena en el directorio /etc. Para editar el archivo ldap.conf necesita un editor de texto como vim, nano, etc. Ejecute el siguiente comando para abrir el ldap archivo de configuración para editar.
sudo nano /etc/ldap/ldap.conf
El resultado del comando anterior se muestra en la siguiente sección.
#
LDAP Defaults
#
See ldap.conf(5) for details
This file should be world readable but not world writable.
#BASE dc=example,dc=com
#URI ldap://ldap.example.com ldap://ldap-master.example.com:666
#SIZELIMIT 12
#TIMELIMIT 15
#DEREF never
TLS certificates (needed for GnuTLS)
TLS_CACERT /etc/ssl/certs/ca-certificates.crt
Descomente las líneas BASE y URI para poder editarlas con su propio nombre de dominio y dirección IP. Dado que se trata de una instalación y configuración de prueba, utilizaré tecmint123.com como mi nombre de dominio.
#
LDAP Defaults
#
See ldap.conf(5) for details
This file should be world readable but not world writable.
BASE dc=tecmint123,dc=com
URI ldap://ldap.example.com ldap://ldap-master.example.com:666
#SIZELIMIT 12
#TIMELIMIT 15
#DEREF never
TLS certificates (needed for GnuTLS)
TLS_CACERT /etc/ssl/certs/ca-certificates.crt
Guarde el archivo y ejecute el siguiente comando para reconfigurar el paquete LDAP.
sudo dpkg-reconfigure slapd
Para construir el DN base del directorio LDAP necesita un nombre de dominio DNS.
Ingrese su nombre de dominio DNS y presione Entrar para confirmarlo. Luego, ldap le pedirá que ingrese el nombre de la organización a usar en el DN base de su directorio LDAP. Ingrese el nombre de su empresa u organización y presione Entrar nuevamente.
Después de agregar el nombre de la organización o empresa, la configuración del paquete le pedirá que ingrese la contraseña para la entrada admin en su LDAP
directorio. Debe ingresar la contraseña para el admin que creó en los pasos anteriores.
Después de haber confirmado la contraseña de administrador, debe seleccionar la base de datos. Hay dos bases de datos para seleccionar, la base de datos BDB y HDB. Ambos admiten las mismas opciones de configuración, usan formatos de almacenamiento similares, pero dado que la base de datos HDB agrega soporte para cambios de nombre de subárboles, es la recomendada.
Puede seleccionar la base de datos que crea que funcionará mejor para usted. Una vez que haya decidido qué base de datos utilizará, presione Entrar para confirmar la selección. Luego se le hará otra pregunta. Seleccione Sí para eliminar la base de datos cuando se purgue slapd.
Seleccione nuevamente Sí y presione Entrar.
Seleccione No y el servidor LDAP comenzará a ejecutarse.
[sudo] password for ravisaive:
* Stopping OpenLDAP slapd [ OK ]
Moving old database directory to /var/backups:
- directory unknown... done.
Creating initial configuration... done.
Creating LDAP directory... done.
* Starting OpenLDAP slapd [ OK ]
Processing triggers for libc-bin ...
Para probar el servidor LDAP, se utiliza el comando ldapsearch -x.
ldapsearch -x
Produce el siguiente resultado.
extended LDIF
#
LDAPv3
base <dc=tecmint123,dc=com> (default) with scope subtree
filter: (objectclass=*)
requesting: ALL
#
tecmint123.com
dn: dc=tecmint123,dc=com
objectClass: top
objectClass: dcObject
objectClass: organization
o: tecmint
dc: tecmint123
admin, tecmint123.com
dn: cn=admin,dc=tecmint123,dc=com
objectClass: simpleSecurityObject
objectClass: organizationalRole
cn: admin
description: LDAP administrator
search result
search: 2
result: 0 Success
numResponses: 3
numEntries: 2
Administración LDAP con phpLDAPadmin
phpLDAPadmin es una herramienta de administración GUI para la administración del servidor LDAP. Esta herramienta GUI nos ayudará a interactuar con su servidor LDAP a través de una interfaz web. Está disponible en los repositorios predeterminados, se puede instalar con el comando apt-get.
Pero antes de instalar phpLDAPadmin, debes tener el servidor web Apache y PHP instalados y ejecutándose. De lo contrario, instálelo usando el siguiente comando.
sudo apt-get install apache2 php5 php5-mysql
Luego instale el paquete “phpldapadmin” como se muestra a continuación.
sudo apt-get install phpldapadmin
De la misma manera que configuramos el archivo ldap.conf, necesitamos configurar los archivos de configuración de la interfaz web phpldapadmin antes de usarlo. Ejecute el siguiente comando para abrir el archivo phpldapadmin config.php.
sudo nano /etc/phpldapadmin/config.php
Todo lo que necesitas hacer es reemplazar los nombres de dominio con tus propios valores. La parte de configuración necesaria para este caso se encuentra en la sección "Defina sus servidores LDAP".
$servers = new Datastore();
$servers->newServer('ldap_pla');
$servers->setValue('server','name','Tecmint LDAP Server');
$servers->setValue('server','host','127.0.0.1');
$servers->setValue('server','base',array('dc=tecmint123,dc=com'));
$servers->setValue('login','bind_id','cn=admin,dc=tecmint123,dc=com');
Una vez que haya terminado de editar el archivo de configuración config.php, abra una pestaña en su navegador web y escriba la URL< “http://ip_address_here/phpldapadmin”. /fuerte>. Ingrese sus credenciales de inicio de sesión de ldap y haga clic en iniciar sesión.
Enlaces de referencia
- Página de inicio de OpenLDAP
- Página de inicio de phpLDAPadmin