Introducción

Este es un cliente LDAP basado en web escrito usando el lenguaje de programación PHP. Dado que se ejecuta en la web, puede ejecutarse en casi todas las plataformas de servidor GUI.

Algunas de las funciones que ofrece LDAP incluyen:

  • Buscar en el árbol LDAP
  • Gestión de entradas (mover, borrar, copiar y editar entre servidores)
  • Visualización y edición de imágenes
  • Búsqueda simple y avanzada
  • Gestión de las credenciales de autenticación de usuarios (admite algoritmos hash como SHA)

Antes de que empieces

  • Un VPS con CentOS 7
  • Un usuario no root con privilegios sudo
  • Instale los servicios de cliente LDAP. Puede aprender a configurar el servidor de Protocolo ligero de acceso a directorios en un servidor CentOS 7 VPS o dedicado.
  • Servicio httpd instalado y en ejecución. También puede aprender cómo instalar la pila LEMP (Linux, Nginx, MySQL, PHP) en CentOS 7 VPS o Instalación de servidor dedicado
  • Instalar PHP

Nota especial: si decide seguir estos tutoriales, también debería tener PHP instalado.

pasos

Actualizar paquetes del sistema

$ sudo yum update && sudo yum upgrade

Instalar paquetes PHP adicionales

Deberá instalar php-ldap y algunos otros paquetes PHP necesarios para ejecutar phpLDAPadmin.

$ sudo yum install php-ldap php-mbstring php-pear php-xml

Las actualizaciones de lanzamiento de los paquetes adicionales para Enterprise Linux (EPEL) deben instalarse ya que phpLDAPadmin no está disponible en el repositorio principal.

$ sudo yum install epel-release

Inicie los servicios LDAP

Los servicios LDAP deben iniciarse y activarse para que se inicien automáticamente al arrancar.

$ sudo systemctl start sldap && sudo systemctl enable sldap

Instale phpLDAPadmin

$ sudo yum -y install phpldapadmin

Configurar el host virtual phpLDAPadmin

Cambie su archivo de configuración en /etc/httpd/conf.d/phpldapadmin.conf para que se vea así:

Alias /phpldapadmin /usr/share/phpldapadmin/htdocs
Alias /ldapadmin /usr/share/phpldapadmin/htdocs

<Directory /usr/share/phpldapadmin/htdocs>
  <IfModule mod_authz_core.c>
    # Apache 2.4
    Requireall granted
  </IfModule>
  <IfModule !mod_authz_core.c>
    # Apache 2.2
    Order Deny,Allow
    Deny from all
    Allow from 127.0.0.1
    Allow from ::1
  </IfModule>
</Directory>

Configurar phpLDAPadmin

Abra el archivo de configuración con su editor preferido.

$ sudo vim /etc/phpldapadmin/config.php

Se deben realizar los siguientes cambios en el código PHP:

Cree un nombre para su servidor LDAP que se mostrará a los usuarios en el panel de administración; esta configuración está en la línea 291

$servers->setValue('server','name','Hosting Más Barato LDAP Server');

Para administrar un servidor LDAP que no sea localhost, puede comentar la configuración en la línea 298 y cambiarla ingresando la dirección IP apropiada:

$servers->setValue('server','host','127.0.0.1');

El puerto predeterminado para el servidor LDAP es 389 (puerto no predeterminado). Puede cambiarlo comentando la línea 301:

$servers->setValue('server','port',389);

La línea 332 define los detalles de su dominio, cámbielos en consecuencia.

$servers->setValue('login','bind_id','cn=ldapadm,dc=example,dc=hostadvice,dc=local');

Nota especial: el DN de LDAP se establece al instalar y configurar LDAP en su CentOS 7.

El algoritmo de hash de contraseña establecido debe ser ssha. Así que cambie la línea 388 en consecuencia:

$servers->setValue('appearance','password_hash','ssha');

No se debe comentar la línea 397 para asegurarse de que las credenciales utilizadas sean los detalles del nombre de dominio y no la identificación del usuario (así que comente la línea 39)

$servers->setValue('login','attr','dn');
//$servers->setValue('login','attr','uid');

Guarde sus cambios y salga del editor.

Si está usando PHP versión 7.2, phpLDAPadmin tiene muchos problemas de compatibilidad debido a que usa funciones desactualizadas. A continuación, se explica cómo corregir los errores.

Después de corregir los errores, puede acceder a su panel de administración de LDAP aquí:

http: // (IP del servidor) / phpldapadmin. La página de destino debe verse como la que se muestra a continuación.

Cómo instalar phpLDAPadmin en CentOS 7

Puede continuar e iniciar sesión presionando el botón de inicio de sesión en el menú de la barra lateral. Los detalles del DN de inicio de sesión deben completarse previamente si ha configurado correctamente su archivo de configuración phpldapadmin. Todo lo que tienes que hacer es ingresar a eso ldapadm contraseña

Cómo instalar phpLDAPadmin en CentOS 7

Conclusión

Es una práctica segura instalar un certificado SSL en el servidor usando phpLDAPadmin para asegurarse de que la información esté encriptada.

La herramienta phpLDAPadmin es útil para una administración LDAP simple, especialmente para administradores de sistemas nuevos, aunque algunas configuraciones aún deben realizarse en la línea de comandos, por ejemplo, crear clases de objetos.