Inicio | La Empresa | Soluciones Empresariales | Servicios a la Comunidad | Contacto
 
Cómo configurar OpenLDAP como libreta de direcciones. 
Autor: Joel Barrios Dueñas
Correo electrónico: jbarrios arroba linuxparatodos punto net
Sitio de Red: http://www.linuxparatodos.net/

Creative Commons Reconocimiento-NoComercial-CompartirIgual 2.1

© 1999-2006 Linux Para Todos. Algunos Derechos Reservados 2007 Factor Evolución SA de CV. Usted es libre de copiar, distribuir y comunicar públicamente la obra y hacer obras derivadas bajo las condiciones siguientes: a) Debe reconocer y citar al autor original. b) No puede utilizar esta obra para fines comerciales. c) Si altera o transforma esta obra, o genera una obra derivada, sólo puede distribuir la obra generada bajo una licencia idéntica a ésta. Al reutilizar o distribuir la obra, tiene que dejar bien claro los términos de la licencia de esta obra. Alguna de estas condiciones puede no aplicarse si se obtiene el permiso del titular de los derechos de autor. Los derechos derivados de usos legítimos u otras limitaciones no se ven afectados por lo anterior. Licencia completa en castellano. La información contenida en este documento y los derivados de éste se proporcionan tal cual son y los autores no asumirán responsabilidad alguna si el usuario o lector hace mal uso de éstos.

Introducción.

LDAP (Lightweight Directory Access Protocol) es un protocolo para consulta y modificación de servicios de directorio que se desempeñan sobre TCP/IP. LDAP utiliza el modelo X.500 para su estructura, es decir, se estructura árbol de entradas, cada una de las cuales consiste de un conjunto de atributos con nombre y que a su vez almacenan valores.

URL: http://en.wikipedia.org/wiki/LDAP

Sustento lógico requerido.

•  openldap-2.2.13
•  openldap-clients-2.2.13
•  openldap-servers-2.2.13
•  evolution-data-server-1.x (o bien simplemente del fichero evolutionperson.schema que incluye dicho paquete)

Instalación a través de yum.

yum -y install openldap openldap-clients openldap-servers evolution-data-server

Instalación a través de up2date.

up2date -i openldap openldap-clients openldap-servers evolution-data-server

Procedimientos.

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 ldap.

mkdir /var/lib/ldap/addressbook
chmod 700 /var/lib/ldap/addressbook
chown ldap.ldap /var/lib/ldap/addressbook

Crear la clave de acceso que se asignará en LDAP para el usuario administrador del directorio. Basta ejecutar desde una terminal:

slappasswd

Lo anterior debe dar como salida un criptograma como lo mostrado a continuación:

{SSHA}XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

El texto de la salida será utilizado más adelante en el fichero /etc/openldap/slapd.conf y se definirá al usuario Administrador para como el utilizado para acceder con todos los privilegios al directorio.

Se copia el fichero de esquema de evolution-data-server dentro del directorio /etc/openldap/schema/:

cp /usr/share/evolution-data-server-*/evolutionperson.schema \
/etc/openldap/schema/

Se edita el fichero /etc/openldap/slapd.conf y se agrega el esquema de datos incluido con evolution-data-server:

#
# See slapd.conf(5) for details on configuration options.
# This file should NOT be world readable.
#
include		/etc/openldap/schema/core.schema
include		/etc/openldap/schema/cosine.schema
include		/etc/openldap/schema/inetorgperson.schema
include		/etc/openldap/schema/nis.schema
include		/etc/openldap/schema/evolutionperson.schema

Independientemente de lo que ya se tenga configurado, y que no será tocado, se añade al final del fichero /etc/openldap/slapd.conf lo siguiente con el fin de definir el nuevo directorio que en adelante se utilizará como libreta de direcciones:

database	bdb
suffix		"dc=su-dominio,dc=com"
rootdn		"cn=Administrador,dc=su-dominio,dc=com"
rootpw          {SSHA}XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
directory	/var/lib/ldap/addressbook

# Indices to maintain for this database
index objectClass                       eq,pres
index ou,cn,mail,surname,givenname      eq,pres,sub
index uidNumber,gidNumber,loginShell    eq,pres
index uid,memberUid                     eq,pres,sub
index nisMapName,nisMapEntry            eq,pres,sub

Inicie el servicio de LDAP y añada éste al resto de los servicios que arrancan junto con el sistema:

service ldap start
chkconfig ldap on

A continuación hay que crear el objeto que a su vez contendrá el resto de los datos en el directorio. Genere un fichero addressbook.ldif al cual agregará el siguiente contenido:

dn: dc=su-dominio, dc=com
objectclass: top
objectclass: dcObject
objectclass: organization
o: Nombre completo de su empresa
dc: su-dominio

dn: ou=Addressbook, dc=su-dominio, dc=com
ou: Addressbook
objectClass: top
objectClass: organizationalUnit

Se utilizará ldapadd para insertar los datos necesarios. Las opciones utilizadas con este mandato son las siguientes:

-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

Una vez entendido lo anterior, se procede a insertar la información generada en el directorio utilizando lo siguiente:

ldapadd -x -W -D 'cn=Administrador, dc=su-dominio, dc=com' -h 127.0.0.1 -f addressbook.ldif

Una vez hecho lo anterior, se podrá comenzar a poblar el directorio con datos. Genere el fichero su-usuario.ldif con los siguientes datos, donde reemplazará los valores por reales. Elimine los campos que queden vacíos o no le sean de utilidad, porque de otra forma LDAP no le dejará insertar éstos. Es importante destacar que deben estar incluidas las clases top, person, organizationalPerson, inetOrgPerson y evolutionPerson, ya que de otro modo no será posible utilizar los campos de información necesarios para que el directorio funcione como libreta de direcciones.

dn: cn=Nombre Completo, ou=Addressbook, dc=su-dominio, dc=com
objectClass: top
objectClass: person
objectClass: organizationalPerson
objectClass: inetOrgPerson
objectClass: evolutionPerson
cn: Nombre Completo
givenName: Nombre
sn: Apellidos
displayName: Apodo
title: Sr.
mail: su-cuenta-de-correo@su-dominio.com
initials: I.N.I.C.I.A.L.E.S.
o: Nombre Completo de su empresa.
ou: Departamento o Sección a la que pertenece
businessRole: Puesto que desempeña en su empresa
homePostalAddress: Domicilio de su hogar.
postalAddress: Domicilio de su empresa.
l: Ciudad
st: Estado
# Código postal
postalCode: 12345
# Telefono empresa
telephoneNumber: 55-5555-5555
# Teléfono principal
primaryPhone: 55-5555-5555
# Teléfono móvil
mobile: 55-5555-5555
# Telefono hogar
homePhone: 55-5555-5555
# Otro teléfono
otherPhone: 55-5555-5555
labeledURI: http://www.linuxparatodos.net/
# Su fecha de nacimiento
birthDate: 1970-02-20
fileAs: Apellidos, Nombre
category: Cualquier-categoría-que-queira-crear
managerName: Nombre de su jefe, si lo tiene
assistantName: Nombre de su asistente, si lo tiene.
# Telefono de su asistente, si lo tiene
assistantPhone: 55-5555-5555
spouseName: Nombre de su esposa(o), si lo tiene.
# fecha en que celebra su aniversario de bodas, si aplica
anniversary: 2000-01-01

Los datos se podrán insertar utilizando lo siguiente:

ldapadd -x -W -D 'cn=Administrador, dc=su-dominio, dc=com' -h 127.0.0.1 -f su-usuario.ldif

Configuración de clientes.

Acceda hacia el directorio con cualquier cliente que tenga soporte para acceder hacia directorios LDAP.

Novell Evolution.

Hacer clic en Archivo → Nuevo → Libreta de direcciones.

Propiedades de la libreta de direcciones, pestaña General.
Propiedades de la libreta de direcciones, pestaña General.
Propiedades de la libreta de direcciones, pestaña Detalles.
Propiedades de la libreta de direcciones, pestaña Detalles.

Mozilla Thunderbird.

Hacer clic en Archivo → Nuevo → Directorio LDAP

Propiedades de servidor de directorio, pestaña General.
Propiedades de servidor de directorio, pestaña General.
Propiedades de servidor de directorio, pestaña Avanzado.
Propiedades de servidor de directorio, pestaña Avanzado.

Squirrelmail.

Hay que editar el fichero /etc/squirrelmail/config.php y añadir/editar:

$ldap_server[0] = array(
    'host' => '127.0.0.1',
    'base' => 'ou=Addressbook,dc=su-dominio,dc=com',
    'name' >= 'Addressbook'
);

Administración.

Hay una gran cantidad de programas para acceder y administrar servidores LDAP, pero la mayoría solo sirven para administrar usuarios y grupos del sistema. La mejor herramienta de administración de directorios LDAP que podemos recomendar es LDAP Browser/Editor (requiere Java).

LDAP Browser/Editor 2.8.1
LDAP Browser/Editor 2.8.1.

Respaldo de datos.

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

service ldap stop

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

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

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

service ldap start

Restauración de datos.

El procedimiento requiere detener el servicio.

service ldap stop

Debe eliminarse los datos del directorio a restaurar.

rm -f /var/lib/ldap/addressbook/*

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

slapadd -v -c -l respaldo-20061003.ldif -f /etc/openldap/slapd.conf

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.

service ldap start

Modificaciones necesarias en el muro cortafuegos.

Si se utiliza un cortafuegos con políticas estrictas, como por ejemplo Shorewall, es necesario abrir el puerto 389 por TCP (LDAP).

Las reglas para el fichero /etc/shorewall/rules de Shorewall correspondería a algo similar a lo siguiente:

#ACTION	SOURCE	DEST	PROTO 	DEST		SOURCE
#				PORT		PORT(S)1
ACCEPT	net	fw	tcp	389
#LAST LINE -- ADD YOUR ENTRIES BEFORE THIS ONE -- DO NOT REMOVE


Última Edición lunes, 05 de febrero 2007 @ 08:36 CST; 31,420 Hits Ver la versión para imprimir



CONDICIONES DE USO     Imagen gráfica -ORVON Internet Service Bureau- www.orvon.com
 Derechos de autor © 2010 Linux Para Todos
 Todas las marcas y derechos en esta página son de sus respectivos dueños.
 Puede sindicar nuestras NOTICIAS a través de el fichero RSS dando click AQUI.
O si desea sindicar el FORO DE SOPORTE TECNICO lo puede hacer dando click AQUI
O si desea sindicar los NUEVOS MANUALES lo puede hacer dando click AQUI
Otra web montada con Geeklog 
Esta página fue creada en 0.13 segundos