Configuració del servei OpenLDAP

Justificacio

Justificación Técnica de la Implementación OpenLDAP

Para la puesta en marcha del servicio de directorio activo OpenLDAP, se han tomado una serie de decisiones técnicas fundamentadas en la seguridad, la escalabilidad y las mejores prácticas de administración de sistemas:

1. Selección del Dominio y Base DN

  • Decisión: Se ha configurado el dominio interno illa4.local (generando el Base DN dc=illa4,dc=local).

  • Justificación: Se opta por un dominio con sufijo .local para garantizar el aislamiento del entorno de pruebas y evitar conflictos con resoluciones DNS públicas en Internet. Este dominio sirve como raíz del DIT (Directorio de Información del Árbol), permitiendo que futuras integraciones (como clientes Windows o Linux) puedan unirse a la red de forma coherente y centralizada.

2. Parámetros de Seguridad y Usuario Administrador

  • Decisión: Se ha mantenido el usuario gestor por defecto (cn=admin) pero aplicando una política de contraseñas estricta. La contraseña asignada (Smx!Repte2.3Ldap) cuenta con 16 caracteres.

  • Justificación: Siguiendo las recomendaciones del CCN-CERT e INCIBE sobre políticas de acceso seguro, se ha implementado una credencial que supera la longitud mínima de 12 caracteres y combina mayúsculas, minúsculas, números y caracteres especiales. Esto garantiza la integridad del directorio mitigando vulnerabilidades frente a ataques de fuerza bruta o de diccionario. Las contraseñas de los usuarios base creados a posteriori se han cifrado utilizando la herramienta ldappasswd.

3. Estructura del Árbol de Directorio (DIT)

  • Decisión: Se ha diseñado una estructura jerárquica mediante la creación de dos Unidades Organizativas (OUs) de primer nivel: ou=Usuarios y ou=Grupos.

  • Justificación: En lugar de volcar todos los objetos en la raíz del dominio, esta separación organizativa replica la lógica de una infraestructura empresarial real. Esto no solo facilita la gestión humana y la escalabilidad del sistema, sino que permite en un futuro delegar permisos o aplicar políticas (GPOs/ACLs) de forma granular dependiendo de si el objeto es un departamento, un grupo de permisos o una identidad de usuario.

4. Parámetros de los Objetos (Esquemas utilizados)

  • Decisión: Para la creación del empleado y su grupo técnico, se han utilizado los esquemas y clases de objeto inetOrgPerson, posixAccount y posixGroup.

  • Justificación: Esta configuración es vital para un entorno híbrido. El uso de posixAccount dota al usuario de atributos a nivel de sistema operativo (como uidNumber, gidNumber, /home/empleado1 y /bin/bash). Si solo se usaran clases de contactos, el servidor no podría validar correctamente el inicio de sesión de las máquinas cliente que se unan al dominio en la siguiente fase de la práctica.

1

Se actualizaron los repositorios y se instalaron los paquetes necesarios para el servidor y las utilidades cliente

sudo apt update
sudo apt install slapd ldap-utils -y

Se reconfiguró el paquete slapd para establecer los parámetros personalizados de la infraestructura


Parámetros aplicados:

  • Nombre de dominio DNS: illa4.local

  • Nombre de la organización: Illa 4

  • Motor de base de datos: MDB

  • Administrator password:   Smx!Repte2.3Ldap

sudo dpkg-reconfigure slapd
1

Para no crear los usuarios en el directorio raíz, se diseñó la estructura mediante un archivo LDIF para separar a los usuarios de los grupos

#Se creó el archivo estructura.ldif con el siguiente contenido
dn: ou=Usuarios,dc=illa4,dc=local
objectClass: organizationalUnit
ou: Usuarios

dn: ou=Grupos,dc=illa4,dc=local
objectClass: organizationalUnit
ou: Grupos

Se inyectó esta estructura en el servidor autenticándose como administrador

ldapadd -x -D "cn=admin,dc=illa4,dc=local" -W -f estructura.ldif
1

Una vez creadas las unidades organizativas, se procedió a crear un grupo técnico y un usuario de “prueba” con atributos de sistema operativo

 

Se generó el archivo empleados.ldif:

# Creación del grupo
dn: cn=tecnicos,ou=Grupos,dc=illa4,dc=local
objectClass: posixGroup
cn: tecnicos
gidNumber: 2000

# Creación del usuario
dn: uid=empleado1,ou=Usuarios,dc=illa4,dc=local
objectClass: inetOrgPerson
objectClass: posixAccount
objectClass: top
uid: empleado1
sn: Sistemas
givenName: Juan
cn: Juan Sistemas
uidNumber: 2000
gidNumber: 2000
homeDirectory: /home/empleado1
loginShell: /bin/bash

Se aplicó el archivo al directorio activo

ldapadd -x -D "cn=admin,dc=illa4,dc=local" -W -f empleados.ldif

Por motivos de seguridad, la contraseña del usuario no se introdujo en texto plano en el archivo LDIF, sino que se inyectó cifrada posteriormente mediante la utilidad ldappasswd

ldappasswd -x -D "cn=admin,dc=illa4,dc=local" -W -S "uid=empleado1,ou=Usuarios,dc=illa4,dc=local"

Finalmente, se comprobó que el servidor respondía correctamente a las consultas (queries) y que el árbol se había construido con éxito

ldapsearch -x -b "dc=illa4,dc=local"

Leave a Comment

Visió general de la privadesa

Aquest lloc web utilitza galetes per poder oferir-te la millor experiència d'usuari possible. La informació de les galetes s'emmagatzema al teu navegador i realitza funcions com reconèixer-te quan tornes al nostre lloc web i ajudar el nostre equip a entendre quines seccions del lloc web trobes més interessants i útils.