¿No sabes por dónde empezar? Ayúdanos normalizando artículos.
¿Tienes experiencia? Crea alguno de estos artículos de actualidad.

Diferencia entre revisiones de «Introducción al protocolo ldap»

(Página creada con '{{Ficha Software |nombre=LDAP |familia= |imagen=Ldaplogo.jpg |tamaño= |descripción=Protocolo Ligero de Acceso a Directorios es un protocolo a nivel de aplicación que permi...')
(Etiqueta: nuestro-nuestra)
 
(Etiqueta: nuestro-nuestra)
Línea 32: Línea 32:
 
El protocolo accede a directorios LDAP, que siguen la edición de [[1993]] del modelo X.500:  
 
El protocolo accede a directorios LDAP, que siguen la edición de [[1993]] del modelo X.500:  
 
   
 
   
. Un directorio es un [[árbol]] de entradas de directorio.  
+
* Un directorio es un [[árbol]] de entradas de directorio.  
 
   
 
   
. Una entrada consta de un [[conjunto]] de atributos.  
+
* Una entrada consta de un [[conjunto]] de atributos.  
 
   
 
   
. Un atributo tiene un nombre (un tipo de atributo o descripción de atributo) y uno o más [[valores]]. Los atributos son definidos en un [[esquema]].  
+
* Un atributo tiene un nombre (un tipo de atributo o descripción de atributo) y uno o más [[valores]]. Los atributos son definidos en un [[esquema]].  
 
   
 
   
. Cada entrada tiene un identificador único: su Nombre distinguido Distinguished Name, DN).  
+
* Cada entrada tiene un identificador único: su Nombre distinguido Distinguished Name, DN).  
  
 
Para importar y exportar información entre servidores ldap o para describir una serie de cambios que serán aplicados al directorio, el formato utilizado se llama LDIF (LDAP Data Interchange Format). LDIF almacena la información en jerarquías orientadas a objetos que luego serán transformadas al formato interno de la [[base de datos]].  
 
Para importar y exportar información entre servidores ldap o para describir una serie de cambios que serán aplicados al directorio, el formato utilizado se llama LDIF (LDAP Data Interchange Format). LDIF almacena la información en jerarquías orientadas a objetos que luego serán transformadas al formato interno de la [[base de datos]].  
Línea 108: Línea 108:
 
El segundo se debe trabajar fuera de línea, es el adecuado para grandes BD y se utiliza el comando slapadd incluido con slapd.  
 
El segundo se debe trabajar fuera de línea, es el adecuado para grandes BD y se utiliza el comando slapadd incluido con slapd.  
 
   
 
   
. Verificar que contiene los siguientes atributos en slapd.conf:  
+
* Verificar que contiene los siguientes atributos en slapd.conf:  
 
- suffix (top del directorio, por ejemplo, suffix “dc=jovenclub,dc=cu”)  
 
- suffix (top del directorio, por ejemplo, suffix “dc=jovenclub,dc=cu”)  
 
-directory /var/lib/ldap/autenticar (directorio donde se crearán los índices y que pueda escribir slapd)  
 
-directory /var/lib/ldap/autenticar (directorio donde se crearán los índices y que pueda escribir slapd)  
Línea 114: Línea 114:
 
===Primer caso:===  
 
===Primer caso:===  
 
Una vez definido el slapd.conf, se debe ejecutar el comando:  
 
Una vez definido el slapd.conf, se debe ejecutar el comando:  
--# ldapadd -x -D "cn=admin,dc=mimundo,dc=com" -f  
+
# ldapadd -x -D "cn=admin,dc=mimundo,dc=com" -f  
 
   
 
   
 
ejemplo.ldif -W  
 
ejemplo.ldif -W  
Línea 134: Línea 134:
 
===Segundo caso:===  
 
===Segundo caso:===  
 
Una vez definido el slapd.conf, se debe ejecutar el comando:  
 
Una vez definido el slapd.conf, se debe ejecutar el comando:  
--# slapadd -v -l ejemplo.ldif -f /etc/ldap/slapd.conf  
+
 
 +
# slapadd -v -l ejemplo.ldif -f /etc/ldap/slapd.conf  
 +
 
 
Los argumentos utilizados pueden ser:  
 
Los argumentos utilizados pueden ser:  
 
• -l: archivo en formato LDFI.  
 
• -l: archivo en formato LDFI.  
Línea 144: Línea 146:
 
Instale los paquetes necesarios como su.  
 
Instale los paquetes necesarios como su.  
 
   
 
   
--# apt-get install slapd  
+
# apt-get install slapd  
 
   
 
   
 
Durante la instalación te piden: la configuración del dominio y de las contraseñas del fichero slapd.conf.  
 
Durante la instalación te piden: la configuración del dominio y de las contraseñas del fichero slapd.conf.  
 
   
 
   
--# slappasswd -h {CRYPT}  
+
# slappasswd -h {CRYPT}  
 
   
 
   
 
Copie y respalde el criptograma resultante. Añadir a etc/ldap/slapd.conf:  
 
Copie y respalde el criptograma resultante. Añadir a etc/ldap/slapd.conf:  
Línea 162: Línea 164:
 
Con fines de organización se creará un directorio específico para este directorio y se configurará con permisos de acceso exclusivamente al usuario y grupo openldap.  
 
Con fines de organización se creará un directorio específico para este directorio y se configurará con permisos de acceso exclusivamente al usuario y grupo openldap.  
 
   
 
   
--# cd /var/lib/ldap  
+
# cd /var/lib/ldap  
--# mkdir autenticar replog  
+
# mkdir autenticar replog  
--# chown -R openldap:openldap autenticar replog  
+
# chown -R openldap:openldap autenticar replog  
--# chmod -R 700 autenticar replog  
+
# chmod -R 700 autenticar replog  
  
 
Crear un archivo init.ldif donde nombre 3 unidades organizativas: users, groups y computers.  
 
Crear un archivo init.ldif donde nombre 3 unidades organizativas: users, groups y computers.  
 
        
 
        
--# mcedit /etc/ldap/init.ldif  
+
# mcedit /etc/ldap/init.ldif  
 
dn: dc=tele,dc=grm,dc=jovenclub,dc=cu  
 
dn: dc=tele,dc=grm,dc=jovenclub,dc=cu  
  
Línea 196: Línea 198:
 
userPassword: {CRYPT}CnTL4BZA65eXU  
 
userPassword: {CRYPT}CnTL4BZA65eXU  
  
--#introduzca el resultado de generar  
+
#introduzca el resultado de generar  
  
 
slappasswd.  
 
slappasswd.  
Línea 220: Línea 222:
 
-Para inicializar la base de datos  
 
-Para inicializar la base de datos  
 
   
 
   
--# /etc/init.d/slapd stop  
+
# /etc/init.d/slapd stop  
 
   
 
   
 
-Crear un nuevo directorio donde se almacenará la configuración de la base de datos ldap. Este directorio /var/lib/ldap/autenticar ya lo habíamos creado anteriormente.  
 
-Crear un nuevo directorio donde se almacenará la configuración de la base de datos ldap. Este directorio /var/lib/ldap/autenticar ya lo habíamos creado anteriormente.  
 
   
 
   
--# mkdir /var/lib/ldap/autenticar  
+
# mkdir /var/lib/ldap/autenticar  
 
   
 
   
 
-Accede al directorio donde se guardó el archivo creado anteriormente init.ldif  
 
-Accede al directorio donde se guardó el archivo creado anteriormente init.ldif  
 
   
 
   
--# cd /etc/ldap  
+
# cd /etc/ldap  
 
   
 
   
 
-Luego añade los valores de ldif a la base de datos de ldap que se encuentra en /var/lib/ldap/autenticar.(Ver man slapadd)  
 
-Luego añade los valores de ldif a la base de datos de ldap que se encuentra en /var/lib/ldap/autenticar.(Ver man slapadd)  
 
   
 
   
--# slapadd -v -l init.ldif -f /etc/ldap/slapd.conf  
+
# slapadd -v -l init.ldif -f /etc/ldap/slapd.conf  
 
   
 
   
 
-Después cambia el dueño y el grupo del directorio creado anteriormente  
 
-Después cambia el dueño y el grupo del directorio creado anteriormente  
 
   
 
   
--# chown -R openldap:openldap /var/lib/ldap/autenticar/*  
+
# chown -R openldap:openldap /var/lib/ldap/autenticar/*  
  
 
Para la actualización de la configuración de openldap  
 
Para la actualización de la configuración de openldap  
 
-Creo un directorio  
 
-Creo un directorio  
 
   
 
   
--# cd /etc/ldap  
+
# cd /etc/ldap  
  
--#mkdir slapd.d  
+
#mkdir slapd.d  
 
   
 
   
 
Ejecuto el siguiente comando cuyo resultado se muestra a continuación.  
 
Ejecuto el siguiente comando cuyo resultado se muestra a continuación.  
 
   
 
   
--# slaptest -f slapd.conf -F slapd.d config file testing succeeded  
+
# slaptest -f slapd.conf -F slapd.d config file testing succeeded  
 
   
 
   
 
Le cambio el dueño y el grupo al directorio creado  
 
Le cambio el dueño y el grupo al directorio creado  
 
   
 
   
--# chown -R openldap: openldap slapd.d  
+
# chown -R openldap: openldap slapd.d  
  
 
Para hacer una búsqueda y confirmar la configuración  
 
Para hacer una búsqueda y confirmar la configuración  
Línea 294: Línea 296:
 
dc: midominio  
 
dc: midominio  
  
-Para añadir la información a la base de datos de LDAP utilizamos el siguiente comando:  
+
-Para añadir la información a la base de datos de LDAP utilizamos el siguiente comando:
--# slapadd -v -l AddOrg.ldif -f /etc/ldap/slapd.conf  
+
 +
# slapadd -v -l AddOrg.ldif -f /etc/ldap/slapd.conf  
 +
 
 
-La organización es lo primero que se debe crear ya que a partir de la creación de esta es que se inicia la creación del árbol del directorio LDAP.  
 
-La organización es lo primero que se debe crear ya que a partir de la creación de esta es que se inicia la creación del árbol del directorio LDAP.  
 
-Luego se debe crear un archivo llamado AddOU.ldif (crearemos una Unidad Organizacional) e ingresaremos los siguientes datos:  
 
-Luego se debe crear un archivo llamado AddOU.ldif (crearemos una Unidad Organizacional) e ingresaremos los siguientes datos:  
Línea 308: Línea 312:
  
 
-Después de creado se debe ingresar la nueva etiqueta al directorio de la siguiente forma:  
 
-Después de creado se debe ingresar la nueva etiqueta al directorio de la siguiente forma:  
--# slapadd -v -l AddOU.ldif -f /etc/ldap/slapd.conf
+
 
 +
# slapadd -v -l AddOU.ldif -f /etc/ldap/slapd.conf
 +
 
 
Se debe crear un archivo que puede llamarse AddPerson.ldif con los siguientes datos, para añadir a un usuario a la base de datos:  
 
Se debe crear un archivo que puede llamarse AddPerson.ldif con los siguientes datos, para añadir a un usuario a la base de datos:  
 
   
 
   
Línea 327: Línea 333:
 
sn: Perez  
 
sn: Perez  
 
   
 
   
--# slapadd -v -l AddPerson.ldif -f  
+
# slapadd -v -l AddPerson.ldif -f  
  
 
/etc/ldap/slapd.conf  
 
/etc/ldap/slapd.conf  
Línea 362: Línea 368:
 
telephonenumber: xxxxxxx  
 
telephonenumber: xxxxxxx  
 
   
 
   
-Luego se ejecuta el comando:  
+
-Luego se ejecuta el comando:
--# slapadd -v -l ModPerson.ldif -f /etc/ldap/slapd.conf  
+
 +
# slapadd -v -l ModPerson.ldif -f /etc/ldap/slapd.conf  
  
 
===Borrar una Etiqueta===  
 
===Borrar una Etiqueta===  
Línea 375: Línea 382:
 
- Luego se ejecuta el siguiente comando:  
 
- Luego se ejecuta el siguiente comando:  
 
   
 
   
--# slapadd -v -l AddPerson.ldif -f /etc/ldap/slapd.conf  
+
# slapadd -v -l AddPerson.ldif -f /etc/ldap/slapd.conf  
 
   
 
   
 
Realizar búsquedas en el directorio y confirmar la configuración  
 
Realizar búsquedas en el directorio y confirmar la configuración  
Línea 381: Línea 388:
 
Búsquedas en la BD de LDAP:  
 
Búsquedas en la BD de LDAP:  
 
   
 
   
--# ldapsearch -x -b "dc=midominio,dc=com"  
+
# ldapsearch -x -b "dc=midominio,dc=com"  
 
   
 
   
 
“objectClass=*”
 
“objectClass=*”
 
   
 
   
--# ldapsearch -x -D "cn=admin,dc=midominio,dc=cu" -b  
+
# ldapsearch -x -D "cn=admin,dc=midominio,dc=cu" -b  
  
 
"dc=midominio,dc=cu" -W  
 
"dc=midominio,dc=cu" -W  
Línea 393: Línea 400:
 
-Debe detenerse el servicio de LDAP antes de proceder con el respaldo de datos.  
 
-Debe detenerse el servicio de LDAP antes de proceder con el respaldo de datos.  
 
   
 
   
--# /etc/init.d/slapd stop  
+
# /etc/init.d/slapd stop  
 
   
 
   
 
-A continuación, se utiliza la herramienta slapcat, utilizando el fichero de configuración /etc/ldap/slapd.conf.  
 
-A continuación, se utiliza la herramienta slapcat, utilizando el fichero de configuración /etc/ldap/slapd.conf.  
 
   
 
   
--# slapcat -v -f /etc/ldap/slapd.conf -l respaldo-$(date +%Y %m%d).ldif  
+
# slapcat -v -f /etc/ldap/slapd.conf -l respaldo-$(date +%Y %m%d).ldif  
 
   
 
   
 
-Concluido el proceso de respaldo de datos, puede iniciarse de nuevo el servicio de ldap.  
 
-Concluido el proceso de respaldo de datos, puede iniciarse de nuevo el servicio de ldap.  
 
   
 
   
--# /etc/init.d/slapd restart  
+
# /etc/init.d/slapd restart  
  
 
===Restauración de datos.===  
 
===Restauración de datos.===  
Línea 407: Línea 414:
 
-El procedimiento requiere detener el servicio.  
 
-El procedimiento requiere detener el servicio.  
 
   
 
   
--# /etc/init.d/slapd stop  
+
# /etc/init.d/slapd stop  
 
   
 
   
 
-Debe eliminarse los datos del directorio a restaurar.  
 
-Debe eliminarse los datos del directorio a restaurar.  
 
   
 
   
--# rm -f /var/lib/ldap/autenticar/*  
+
# rm -f /var/lib/ldap/autenticar/*  
 
   
 
   
 
-A continuación, se utiliza la herramienta slapadd para cargar los datos desde un fichero *.ldif de respaldo.  
 
-A continuación, se utiliza la herramienta slapadd para cargar los datos desde un fichero *.ldif de respaldo.  
 
   
 
   
--# slapadd -v -c -l respaldo-20100629.ldif -f /etc/ldap/slapd.conf  
+
# slapadd -v -c -l respaldo-20100629.ldif -f /etc/ldap/slapd.conf  
  
 
===Regenerar índices===  
 
===Regenerar índices===  
 
-Se debe ejecutar la herramienta slapindex, que se utiliza para regenerar los índices LDAP.  
 
-Se debe ejecutar la herramienta slapindex, que se utiliza para regenerar los índices LDAP.  
 
   
 
   
--# slapindex  
+
# slapindex  
 
   
 
   
 
-Concluido el proceso de restauración de datos, puede iniciarse de nuevo el servicio de ldap.  
 
-Concluido el proceso de restauración de datos, puede iniciarse de nuevo el servicio de ldap.  
 
   
 
   
--# /etc/init.d/slapd restart  
+
# /etc/init.d/slapd restart  
  
 
==Administración del LDAP vía web==  
 
==Administración del LDAP vía web==  
Línea 430: Línea 437:
 
Para administrar el servidor LDAP vía web, se puede utilizar phpldapadmin.  
 
Para administrar el servidor LDAP vía web, se puede utilizar phpldapadmin.  
 
   
 
   
-Instalar el PHP con soporte LDAP  
+
-Instalar el PHP con soporte LDAP
--# apt-get install php5-ldap  
+
 +
# apt-get install php5-ldap  
  
--# /etc/init.d/apache2 force-reload  
+
# /etc/init.d/apache2 force-reload  
  
--# apt-get install phpldapadmin  
+
# apt-get install phpldapadmin  
 
   
 
   
 
-Acceder al LDAP vía web con esta url:  
 
-Acceder al LDAP vía web con esta url:  

Revisión del 14:39 13 may 2014

LDAP
Información sobre la plantilla
Ldaplogo.jpg
Protocolo Ligero de Acceso a Directorios es un protocolo a nivel de aplicación que permite el acceso a un servicio de directorio ordenado y distribuido para buscar diversa información en un entorno de red.

LDAP(Lightweight Directory Access Protocol, protocolo ligero de acceso a directorios), es un protocolo del nivel de aplicación de la arquitectura TCP/IP que permite el acceso a un servicio de directorio ordenado y distribuido para buscar información en un entorno de red.LDAP puede utilizarse de muchas maneras: para autenticación, directorios compartidos (para los clientes de correo), libreta de direcciones, etc.

Estrucutura del directorio

El protocolo accede a directorios LDAP, que siguen la edición de 1993 del modelo X.500:

  • Un directorio es un árbol de entradas de directorio.
  • Una entrada consta de un conjunto de atributos.
  • Un atributo tiene un nombre (un tipo de atributo o descripción de atributo) y uno o más valores. Los atributos son definidos en un esquema.
  • Cada entrada tiene un identificador único: su Nombre distinguido Distinguished Name, DN).

Para importar y exportar información entre servidores ldap o para describir una serie de cambios que serán aplicados al directorio, el formato utilizado se llama LDIF (LDAP Data Interchange Format). LDIF almacena la información en jerarquías orientadas a objetos que luego serán transformadas al formato interno de la base de datos.

Un archivo LDIF tiene un formato similar a:

dn: dc=jovenclub, dc=cu

objectclass: top

objectclass:

organizationalUnit

dn: ou=groups, dc=jovenclub, dc=cu

objectclass: top

objectclass:

organizationalUnit

ou: groups

dn: ou=people, dc=jovenclub, dc=cu

objectclass: top

objectclass:

organizationalUnit

ou: people

dn: cn = Pepe Perez, ou=people,

dc=jovenclub, dc=cu

cn: Pepe Perez

sn: Perez

objectclass: top

objectclass: person

objectclass: posixAccount

objectclass: shadowAccount

uid: pepe

userpassword:

{crypt}p1pss2ii(0pgbs*do&@ = )eksd

uidnumber:104

gidnumber:100

loginShell:/bin/bash

homeDirectory: /home/pepe

Creación y mantenimiento de las BD

Existen dos métodos para insertar datos en la base de datos de Ldap. El primero es fácil y adecuado para pequeñas cantidades de datos, es interactivo y se deben utilizar herramientas tales como ldapadd para insertar nuevas entradas.

El segundo se debe trabajar fuera de línea, es el adecuado para grandes BD y se utiliza el comando slapadd incluido con slapd.

  • Verificar que contiene los siguientes atributos en slapd.conf:

- suffix (top del directorio, por ejemplo, suffix “dc=jovenclub,dc=cu”) -directory /var/lib/ldap/autenticar (directorio donde se crearán los índices y que pueda escribir slapd)

Primer caso:

Una vez definido el slapd.conf, se debe ejecutar el comando:

# ldapadd -x -D "cn=admin,dc=mimundo,dc=com" -f 

ejemplo.ldif -W

Los argumentos utilizados pueden ser:

-x: autenticación simple

-W: solicitar clave de acceso

-D binddn: nombre distinguido (dn) a utilizar

-h anfitrión: servidor Ldap a acceder

-f fichero : fichero a utilizar

-w passwd:contraseña del administrador del servidor

Segundo caso:

Una vez definido el slapd.conf, se debe ejecutar el comando:

# slapadd -v -l ejemplo.ldif -f /etc/ldap/slapd.conf 

Los argumentos utilizados pueden ser: • -l: archivo en formato LDFI. • -f: archivo de configuración del servidor, donde se indican cómo crear los índices. • -v: habilitar el modo verbose

Configuración del servidor

Instale los paquetes necesarios como su.

# apt-get install slapd 

Durante la instalación te piden: la configuración del dominio y de las contraseñas del fichero slapd.conf.

# slappasswd -h {CRYPT} 

Copie y respalde el criptograma resultante. Añadir a etc/ldap/slapd.conf:

password-hash {CRYPT}

rootpw {CRYPT}CnTL4BZA65eXU #La clave que se generó anteriormente

rootdn "cn=admin,dc=tele,dc=grm,dc=jovenclub,dc=cu"

Creación de directorios

Con fines de organización se creará un directorio específico para este directorio y se configurará con permisos de acceso exclusivamente al usuario y grupo openldap.

# cd /var/lib/ldap 
# mkdir autenticar replog 
# chown -R openldap:openldap autenticar replog 
# chmod -R 700 autenticar replog 

Crear un archivo init.ldif donde nombre 3 unidades organizativas: users, groups y computers.

# mcedit /etc/ldap/init.ldif 

dn: dc=tele,dc=grm,dc=jovenclub,dc=cu

objectClass: top

objectClass: dcObject

objectClass: organization

o: GRM

dc: tele

dn:

cn=admin,dc=tele,dc=grm,dc=jovenclub,dc=cu

objectClass: simpleSecurityObject

objectClass: organizationalRole

cn: admin

Descripción: administrador de LDAP

userPassword: {CRYPT}CnTL4BZA65eXU

#introduzca el resultado de generar 

slappasswd.

dn: ou=users,dc=tele,dc=grm,dc=jovenclub,dc=cu

objectClass: organizationalUnit

ou: users

dn: ou=groups,dc=tele,dc=grm,dc=jovenclub,dc=cu

objectClass: organizationalUnit

ou: groups

dn:ou=computers,dc=tele,dc=grm,dc=jovenclub,dc=cu

objectClass: organizationalUnit

ou: computers

-Para inicializar la base de datos

# /etc/init.d/slapd stop 

-Crear un nuevo directorio donde se almacenará la configuración de la base de datos ldap. Este directorio /var/lib/ldap/autenticar ya lo habíamos creado anteriormente.

# mkdir /var/lib/ldap/autenticar 

-Accede al directorio donde se guardó el archivo creado anteriormente init.ldif

# cd /etc/ldap 

-Luego añade los valores de ldif a la base de datos de ldap que se encuentra en /var/lib/ldap/autenticar.(Ver man slapadd)

# slapadd -v -l init.ldif -f /etc/ldap/slapd.conf 

-Después cambia el dueño y el grupo del directorio creado anteriormente

# chown -R openldap:openldap /var/lib/ldap/autenticar/* 

Para la actualización de la configuración de openldap -Creo un directorio

# cd /etc/ldap 
#mkdir slapd.d 

Ejecuto el siguiente comando cuyo resultado se muestra a continuación.

# slaptest -f slapd.conf -F slapd.d config file testing succeeded 

Le cambio el dueño y el grupo al directorio creado

# chown -R openldap: openldap slapd.d 

Para hacer una búsqueda y confirmar la configuración -Iniciar nuestro servidor

root@debian5:~# /etc/init.d/slapd start

-Ahora revisaremos que el servidor slapd haya abierto el socket TCP/IP, en específico veremos que nos abra el puerto TCP/389.

root@debian5:~# netstat -pltn | grep slapd

tcp 0 0 0.0.0.0:389 0.0.0.0:* LISTEN 4436/slapd

tcp6 0 0 :::389 :::* LISTEN 4436/slapd

-Ahora haremos una consulta al servidor LDAP para ver si responde con lo más básico y ver que está funcionando.

root@debian5:~# ldapsearch -x -b “” -s base “(objectclass=*)”

namingContexts

root@debian5:~# ldapsearch -x -D

cn=admin,dc=tele,dc=grm,dc=jovenclub,dc=cu" b

"dc=tele,dc=grm,dc=jovenclub,dc=cu" -W

Crear una etiqueta nueva

-Para poblar el directorio de Ldap se debe utilizar como recurso los archivos *.ldif.

-Lo primero que se debe crear en el LDAP es la Organización, según los datos que se suministran. Crear con un editor un archivo llamado AddOrg.ldif y suministrar los siguientes datos:

dn: dc=midominio,dc=cu

objectClass: dcObject

objectClass: organization

o: GRM

dc: midominio

-Para añadir la información a la base de datos de LDAP utilizamos el siguiente comando:

# slapadd -v -l AddOrg.ldif -f /etc/ldap/slapd.conf 

-La organización es lo primero que se debe crear ya que a partir de la creación de esta es que se inicia la creación del árbol del directorio LDAP. -Luego se debe crear un archivo llamado AddOU.ldif (crearemos una Unidad Organizacional) e ingresaremos los siguientes datos:

dn: ou=Coordinacion,dc=midominio,dc=cu

ou: Coordinacion

objectClass: organizationalUnit

description: Coordinacion de MiDominio

-Después de creado se debe ingresar la nueva etiqueta al directorio de la siguiente forma:

# slapadd -v -l AddOU.ldif -f /etc/ldap/slapd.conf

Se debe crear un archivo que puede llamarse AddPerson.ldif con los siguientes datos, para añadir a un usuario a la base de datos:

dn: uid=jperez,ou=Coordinacion,

dc=midominio,dc=com

objectclass: top

objectclass: person

objectclass: organizationalPerson

objectclass: inetOrgPerson

cn: Jose Perez

sn: Perez

# slapadd -v -l AddPerson.ldif -f 

/etc/ldap/slapd.conf

givenname: Jose

uid: jperez

ou: Coordinacion

description: Coordinador

MiDominio

telephonenumber: xxxxxxxx

mail: jperez(arroba)midominio.cu

streetAddress: Ave. Camilo Cienfuegos

userpassword: jose

Ejemplo de mantenimiento de la BD de ldap

Modificar una Etiqueta

-Para modificar un atributo de una etiqueta creada, se debe crear un archivo de extensión *.ldif como por ejemplo ModPerson.ldif con los siguientes datos: dn: cn=Jose Perez,dc=midominio,dc=cu

changetype: modify

add: telephonenumber

telephonenumber: xxxxxxx

-Luego se ejecuta el comando:

# slapadd -v -l ModPerson.ldif -f /etc/ldap/slapd.conf 

Borrar una Etiqueta

-Para borrar una etiqueta (para efectos del ejemplo borrar una persona), se debe crear un archivo *.ldif con las siguientes características:

dn: cn=Jose Perez,dc=midominio,dc=cu

changetype: delete

- Luego se ejecuta el siguiente comando:

# slapadd -v -l AddPerson.ldif -f /etc/ldap/slapd.conf 

Realizar búsquedas en el directorio y confirmar la configuración

Búsquedas en la BD de LDAP:

# ldapsearch -x -b "dc=midominio,dc=com" 

“objectClass=*”

# ldapsearch -x -D "cn=admin,dc=midominio,dc=cu" -b 

"dc=midominio,dc=cu" -W

Respaldo de datos.

-Debe detenerse el servicio de LDAP antes de proceder con el respaldo de datos.

# /etc/init.d/slapd stop 

-A continuación, se utiliza la herramienta slapcat, utilizando el fichero de configuración /etc/ldap/slapd.conf.

# slapcat -v -f /etc/ldap/slapd.conf -l respaldo-$(date +%Y %m%d).ldif 

-Concluido el proceso de respaldo de datos, puede iniciarse de nuevo el servicio de ldap.

# /etc/init.d/slapd restart 

Restauración de datos.

-El procedimiento requiere detener el servicio.

# /etc/init.d/slapd stop 

-Debe eliminarse los datos del directorio a restaurar.

# rm -f /var/lib/ldap/autenticar/* 

-A continuación, se utiliza la herramienta slapadd para cargar los datos desde un fichero *.ldif de respaldo.

# slapadd -v -c -l respaldo-20100629.ldif -f /etc/ldap/slapd.conf 

Regenerar índices

-Se debe ejecutar la herramienta slapindex, que se utiliza para regenerar los índices LDAP.

# slapindex 

-Concluido el proceso de restauración de datos, puede iniciarse de nuevo el servicio de ldap.

# /etc/init.d/slapd restart 

Administración del LDAP vía web

Para administrar el servidor LDAP vía web, se puede utilizar phpldapadmin.

-Instalar el PHP con soporte LDAP

# apt-get install php5-ldap 
# /etc/init.d/apache2 force-reload 
# apt-get install phpldapadmin 

-Acceder al LDAP vía web con esta url: http://localhost/phpldapadmin

login=> cn=admin,dc=example,dc=cu

Password => El Password del usuario admin

-Queda listo para crear el directorio.

Fuentes

  • Administración Avanzada de GNU/Linux. Josep Jorba Esteve y Remo Suppi Boldrito.
  • Implementación de Servidores con GNU/Linux. Joel Barrios Dueñas.