🐋
Apuntes Sistemas
  • ⚓Presentación
  • 📊Sistemas y Servidores
    • Personalizar el prompt de Windows
    • Utilidad de manejo de apps para Windows
    • PRACTICA: Arranque dual Windows y Ubuntu
    • 🚧SysLinuxOS: el SO para ASIX
    • Comandos Linux
      • PRACTICA - Ejercicio de práctica comandos
      • 🚧Instalación de paquetes
      • Apuntes Linux: blue/red team
      • Ejemplos de bash
      • Listado de comandos de Linux
    • Comandos Windows
      • 🚧Apuntes Powershell
      • Bucles FOR con batch
      • Scripts de práctica de Windows
    • Prácticas con Windows 10
    • Configuración de netplan
    • Terminal shell
      • SSH
      • 🚧Ghostty
      • 🚧Warp: la terminal inteligente
      • tmux: paneles de terminal
      • Tabby: Mejorar terminal
      • Conexión SSH en red NAT con VirtualBox
      • TheFuck!: Corrección de comandos
      • Wave: Mejorar terminal Linux
      • 🚧Registros de sesiones
    • Instalación manual de Wordpress en CDMON
    • 🏗️Proxmox
    • 🚧TrueNAS
    • Docker
      • Instalación de Docker
      • Dockerfiles
      • Volúmenes de docker
      • Deployment web con Docker con ejemplos
        • 🚧PRACTICA: Node.js con docker
      • Docker Compose
        • Ejemplo 1: Implantación de Wordpress
        • Ejemplo 2: Implementación de servidor con Nginx, Flask y mySQL
        • Ejemplo 3: Implantación de onlyoffice
        • 🚧Ejemplo 4: Passbolt
        • 🚧PRACTICA: Creando una web de emulación de juegos con docker-compose
      • Monitorización con Grafana en Docker
      • Pi-hole con docker
      • Actividad clase: Deployment app
      • Proyectos self-hosted de docker
    • 🚧Ansible
      • Configuración de laboratorio de ansible
    • 🚧Monitorización de servicios y redes
      • Servicios y cronjobs
      • 1Panel
      • 🚧WatchYourLAN
      • 🚧Uptime-kuma
      • 🚧Netdata
      • 🚧Prometheus + Grafana + Loki
    • LDAP
      • 🚧Gestión gráfica de LDAP
      • Carpetas compartidas NFS
      • PRACTICA: Infraestructura LDAP
  • 🗃️Servicios
    • 🚧Servidor hosting público
    • DHCP
      • DHCP con Ubuntu
      • 🦖DHCP & DNS script
      • DHCP con Alpine
        • Alpine - configuración de red
    • DNS
      • 😡Comprobación DNS
      • Script para enumeración DNS
      • DNS con ubuntu server
      • 🏗️DNSmasq
      • 🚧Securizar servidor DNS
    • Web
      • IIS con Windows server
      • Apache
        • Instalación de LAMP en Ubuntu
          • Prueba de servidor LAMP
          • 🚧Configuración de seguridad de Ubuntu
          • Creación de un VirtualHost en LAMP
          • Creación de varios VirtualHosts en LAMP
          • 🚧Instalación por script de LAMP
        • Aplicaciones con LAMP
          • Instalación de WP en entorno LAMP
          • 🚧Instalación de MantisBT en LAMP
            • 👷Guía de MantisBT
          • 🚧Instalación de QDPM con LAMP
      • Nginx
        • Virtualhosts
        • Instalando Wordpress en nginx
      • 👷MEAN stack
      • 👷‍♂️Caddy
      • 🚧Plesk
      • 🚧Ajenti -Web interface
    • 🏗️Proxy
      • Nginx como proxy inverso y balanceador
      • 🚧Zoraxy
    • Mailing
      • 🚧Servidor Mail con cloudfare
      • 🚧Reenvío de correos de root
      • 🚧Roundcube como MUA
      • Comprobación ESMTP
      • 🚧Seguridad en mailing
      • 🚧Mailhog
    • 🏗️File transfer
      • 🚧FTP
      • Git
    • Sistemas de comunicación instantánea
      • Comunicación mediante CLI
      • Ejabberd - XMPP
        • 🚧Ejabberd con docker
      • 🚧Openfire - XMPP
      • 🚧Comunicaciones servidor-móvil
    • 🏗️Multimedia services
      • Stremio
      • Ver anime por CLI
      • Jellyfin
      • 🚧HLS sobre Apache
      • 🚧Servicio autohospedado de videoconferencia
      • 🚧Morphos: Conversor docs
      • 🚧Reproductores de música en CLI
      • 🚧Icecast - música en streaming
      • 🚧RTMP-HLS server
      • 🚧Guacamole
  • 🖱️Hardware
    • 🚧Identificando conectores
    • Curso de electrónica analógica
    • Alcanzar los 3200MHz con la RAM
    • Calculadora de cuellos de botella
    • 🚧PXE: Bootear sistemas en red
    • 🚧PRÁCTICA - Clonación de disco con Clonezilla
    • Logitech iFixit
  • 🕸️Redes
    • Apuntes IPv4 Alina
    • ¿Cómo diferenciar tantos elementos de red?
    • 🚧IPv6
    • PRÁCTICA - Subneteo con IPcalc en Linux
    • PRÁCTICA - Comandos de red en Windows
    • 🚧PRÁCTICA - Comandos de red en Linux
    • Herramientas de red
      • 🚧TCPDump: analizado de paquetes en red
      • PRÁCTICA - Netsh
      • 🚧PRÁCTICA - mtr.ping.pe
      • 🚧Netcat
    • Wireshark
    • VPN y escritorio remoto
      • Comunicación punto a punto con ngrok
      • 🚧VPN
    • Escaneo de red
      • PRÁCTICA - Mapeado de red con Draw.io
      • 🚧PRÁCTICA - Nmap/Zenmap
    • Redes inalámbricas
      • Wi-fi
        • 🚧PRÁCTICA - Configuración de router
        • 🚧PRÁCTICA - Como hacer un Wifi Heatmap
        • 🚧Seguridad de redes inalámbricas
        • PRÁCTICA - Crackear la contraseña del Wifi con WPA/WPA2
    • PRÁCTICA - Usar SSH en Cisco packet tracer
  • 🛑Ciberseguridad
    • 🚧Securizando un servidor Linux
      • Protégete de ataques de fuerza bruta con Fail2ban
      • Firewall
        • UFW (uncomplicated firewall)
          • GUFW - Interfaz gráfica de ufw
        • 🚧IPTables
        • 🚧PFsense
          • 🚧DMZ con PFsense
      • 🚧Passbolt: gestor de contraseñas autohospedado
      • 🚧Hashes y encriptación
      • 🚧Certificados SSL/TLS
      • Copias de seguridad
    • 🚧Alerta de escaneo de puertos
    • 🚧Google dorks
    • 🚧Enumeración DNS
    • Comandos destructivos de linux
    • Webs enseñanza cyber
    • Wireless Pentesting CheatSheet Github
    • The password game!
    • Personal Security Checklist
  • 🔌Arduino
    • Termómetro e higrómetros digitales y online con Arduino
    • Construyendo un coche multipropósito
      • Multi
      • Montaje del auto
    • Arduino con Sigfox para IoT
    • 10 proyectos de Arduino
  • 📚Recursos y libros
    • Media library: libros varios
    • Herramientas básicas de sysadmin
  • 🌍Sostenibilidad y digitalización
    • Portfolio curso digitalización MOOC
    • 🚧Explotación de recursos por IA
    • 🚧Nuevas tecnologias y comunicaciones
    • 🚧Enlaces sobre Inteligencia artificial
Con tecnología de GitBook
En esta página
  • PHPLDAPadmin
  • Instalación y configuración
  • Funcionamiento de phpldapadmin
  • FusionDirectory
  • Instalación y configuración
  1. Sistemas y Servidores
  2. LDAP

Gestión gráfica de LDAP

AnteriorLDAPSiguienteCarpetas compartidas NFS

Última actualización hace 1 mes

PHPLDAPadmin

Empezaremos por phpldapadmin ya que si estás aprendiendo LDAP o quieres algo simple y directo, como verás. Este nos ofrece:

  • 🧰 SW ligero y simple: una interfaz web sencilla para administrar entradas LDAP.

  • 🧠 Requiere conocimiento de la estructura del árbol LDAP: tú gestionas directamente DNs, atributos, clases de objetos, etc.

  • 🧑‍💻 Ideal para administradores con experiencia que quieren control detallado del directorio.

  • 📦 Instalación fácil (como ya estás haciendo).

  • ❌ No tiene funciones avanzadas como gestión de políticas, plantillas, integración completa con Samba, etc.

Instalación y configuración

Obviamente como requisitos previos a esta practica requerimos tener configurado:

  • Un servidor LDAP (como slapd).

  • Acceso root o privilegios sudo en el servidor.

  • Un servidor web (como Apache).

  • PHP instalado (aunque lo he puesto en el primer paso por si acaso).

Ahora, vamos con la instalación y configuración de phpLDAPadmin, una herramienta web muy útil para gestionar gráficamente nuestro servidor LDAP.

Paso 1. Instalar Apache, PHP y phpLDAPadmin

Para ejecutar este deberemos usar apache como servidor web y php como framework de lenguaje:

sudo apt update
sudo apt install apache2 php php-xml php-mbstring phpldapadmin -y

Paso 2. Configurar phpLDAPadmin

Editamos el archivo de configuración principal:

sudo nano /etc/phpldapadmin/config.php

Busca y modifica las siguientes líneas, las encontrarás todas bastante juntas:

1. Configurar el nombre del servidor LDAP:

Cambia el título si quieres personalizarlo:

$servers->setValue('server','name','Servidor LDAP IFP');

2. Configurar el host del servidor LDAP (localhost si está en la misma máquina):

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

O cambia por la IP del servidor si está en otro equipo.

3. Establecer el DN base (tu dominio LDAP):

$servers->setValue('server','base',array('dc=ifp,dc=local'));

4. Permitir inicio de sesión como DN completo:

$servers->setValue('login','bind_id','cn=admin,dc=ifp,dc=local');

Paso 3. Habilitar el acceso desde fuera (opcional pero recomendable)

En muchas instalaciones, el acceso a phpLDAPadmin está restringido por defecto. Para permitir acceso desde otros equipos:

sudo nano /etc/apache2/conf-enabled/phpldapadmin.conf

Cambia esta sección:

<Directory /usr/share/phpldapadmin/htdocs>
    Require all granted
</Directory>

Luego reinicia Apache:

sudo systemctl restart apache2

Paso 4: Acceder a phpLDAPadmin

Abre un navegador desde la máquina ubuntu cliente o haciendo redirección de puertos en virtualbox y visita:

http://20.0.0.5/phpldapadmin
# o
http://ldapserver.ifp.local/phpldapadmin

Ahora inicia sesión

  • Login DN: cn=admin,dc=ifp,dc=local

  • Password: la contraseña que configuraste para el usuario admin durante la instalación de slapd.

Ya lo tienes todo listo!


Funcionamiento de phpldapadmin

Qué puedes hacer con phpLDAPadmin:

  • Crear, modificar y borrar usuarios y grupos LDAP.

  • Ver la jerarquía de entradas.

  • Importar/exportar entradas LDIF.

  • Cambiar contraseñas.

  • Asignar pertenencias a grupos.


FusionDirectory

Ahora bien, si ya tenemos LDAP bien montado y queremos automatizar la gestión o integrarlo con otros servicios (Samba, correo, etc.), FusionDirectory es una excelente opción, este nos ofrece:

  • 🎯 SW diseñado como una solución completa de gestión de identidades basada en LDAP.

  • 🧙 Tiene un enfoque modular y más automatizado. Puedes gestionar:

    • Usuarios, grupos, correos electrónicos

    • Ordenadores y servidores

    • Políticas de contraseña

    • Recursos (impresoras, aulas, etc.)

    • Samba, DHCP, DNS, etc. si lo integras

  • 🧩 Viene con plantillas y asistentes, por lo que no necesitas tocar directamente DN ni objetos complejos.

  • 👥 Muy útil para escuelas, empresas u organizaciones que usan LDAP como centro de autenticación.

  • 📚 Más complejo de instalar y configurar que phpLDAPadmin.

  • 🎛️ Puede sustituir completamente a phpLDAPadmin si lo configuras bien.

Instalación y configuración

Seguimos con los requisitos previos, en este caso antes de comenzar, asegúrate de tener:

  • OpenLDAP funcionando correctamente.

  • Servidor con Ubuntu actualizado.

  • Acceso root o con sudo.

  • Servidor web (Apache) y PHP instalados.

  • slapd y ldap-utils funcionando.

  • Base LDAP como dc=ifp,dc=local.


Paso 1. Añadir el repositorio de FusionDirectory

Primero, instalaremos las dependencias necesarias:

sudo apt update
sudo apt install curl gnupg2 ca-certificates lsb-release -y

Luego añade la clave GPG y el repositorio oficial de FusionDirectory:

curl -fsSL https://repos.fusiondirectory.org/fusiondirectory.asc | gpg --dearmor | sudo tee /usr/share/keyrings/fusiondirectory-archive-keyring.gpg > /dev/null
echo "deb [signed-by=/usr/share/keyrings/fusiondirectory-archive-keyring.gpg] https://repos.fusiondirectory.org/debian $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/fusiondirectory.list

Actualiza los repos de nuevo:

sudo apt update

Paso 2. Instalar FusionDirectory y dependencias

sudo apt install fusiondirectory fusiondirectory-schema fusiondirectory-plugins-all -y

Este comando instalará:

  • La interfaz web de FusionDirectory.

  • Esquemas extra para LDAP.

  • Todos los plugins disponibles (puedes quitar los que no uses luego).

Paso 3: Aplicar los esquemas LDAP de FusionDirectory

Para que funcione correctamente, FusionDirectory necesita que ciertos esquemas estén activos en tu servidor LDAP:

sudo fusiondirectory-insert-schema -i /etc/ldap/schema/fusiondirectory/core-fusiondirectory.schema

Importante: si usas cn=config para la configuración LDAP (lo más habitual en versiones modernas), tendrás que convertir estos esquemas a formato LDIF y cargarlos manualmente.

Paso 4. Configurar Apache

FusionDirectory debería crear automáticamente una configuración en Apache. Verifica que esté habilitada:

sudo a2enconf fusiondirectory
sudo systemctl reload apache2

Paso 5. Acceder a la interfaz web de instalación

Abre tu navegador y accede a:

http://20.0.0.5/fusiondirectory/setup

Paso 6. Asistente de instalación web

Sigue estos pasos en la interfaz web:

1. LDAP parameters

  • Base DN: dc=ifp,dc=local

  • Bind DN: cn=admin,dc=ifp,dc=local

  • Password: contraseña de tu usuario admin

Haz clic en “Connect” para comprobar que se conecta correctamente.

2. FusionDirectory settings

  • Define el nombre de la organización, correo del admin, etc.

3. Choose plugins

  • Marca los módulos que quieras usar (puedes activarlos/desactivarlos después).

    • people, groups, systems, services, etc.

4. Finish setup

  • Guarda los ajustes y se generará la configuración.

Después de terminar, ya puedes acceder a FusionDirectory con la ruta:

http://IP_DEL_SERVIDOR/fusiondirectory/

Y usa las credenciales LDAP:

  • Usuario: cn=admin,dc=ifp,dc=local

  • Contraseña: la misma que para ldapsearch o phpldapadmin


🧪 ¿Qué puedes hacer con FusionDirectory?

✅ Gestionar usuarios y grupos con asistentes gráficos ✅ Añadir equipos, políticas, roles ✅ Integrar Samba, DNS, DHCP, correo, etc. ✅ Automatizar tareas administrativas ✅ Controlar atributos de LDAP sin tocar directamente los DN

📊
🚧
ya instalado y funcionando
Desde la máquina cliente por navegador
Ya podemos ver la estructura de directorios mucho mejor.