Como ya comenté en un post anterior, repliqué el servicio ldap del servidor "ldap" en el servidor "servidor" de mi centro, configuré el dhcp en modo failover y monté el servidor dns replicado en el servidor "servidor" para lograr una mayor seguridad y una alta disponibilidad de servicios.
Como la base de todos estos cambios está en crear una réplica del servidor "ldap" (ldap master) en el servidor "servidor" (ldap slave), vamos a ver qué cambios hay que realizar para replicar el servicio mediante syncrepl.
Configuración del ldap master (servidor "ldap"):
Lo primero que tenéis que hacer es aseguraros de que tenéis las siguientes líneas en el fichero de configuración /etc/ldap/slapd.conf del ldap master:
moduleload syncprov
overlay syncprov
syncprov-checkpoint 100 10
syncprov-sessionlog 200
Estas líneas convierten el servidor ldap en un proveedor.Por otra parte, aseguraos de que entre las opciones de indexado de la B.D. existe la siguiente:
index entryCSN,entryUUID eq
Y que entre las reglas de acceso a los atributos restringidos, hay permiso de lectura para el usuario replica, un usuario que usamos única y exclusivamente para esta tarea:
access to attrs=userPassword,shadowLastChange
by dn="cn=admin,ou=People,dc=instituto,dc=extremadura,dc=es" write
by dn="cn=replica,dc=instituto,dc=extremadura,dc=es" read
by anonymous auth
by self =xw
by * none
access to attrs=employeeNumber,jpegPhoto
by dn="cn=replica,dc=instituto,dc=extremadura,dc=es" read
by dn="cn=interno,dc=instituto,dc=extremadura,dc=es" read
by self read
Configuración del ldap slave (servidor "servidor"):
En el servidor ldap, lo primero que habrá que hacer es instalar los paquetes slapd, ldap-utils y phpldapadmin.
Una vez instalados los paquetes, vamos a necesitar tener la misma configuración que en el otro servidor, así que lo mejor que podemos hacer es copiar el archivo slapd.conf y el directorio schema desde el servidor "ldap" al servidor "servidor". Así nos aseguramos de que tenemos la misma configuración y los mismos esquemas.
Bien, pues una vez hecho ésto, editamos el archivo /etc/ldap/slapd.conf y le añadimos las siguientes líneas:
syncrepl rid=1
provider=ldap://ldap
searchbase="dc=instituto,dc=extremadura,dc=es"
type=refreshOnly
interval=00:00:02:00
retry="60 10 300 +"
filter="(objectClass=*)"
scope=sub
attrs="*,+"
sizelimit=unlimited
timelimit=unlimited
schemachecking=off
bindmethod=simple
starttls=yes
tls_reqcert=never
binddn="cn=replica,dc=instituto,dc=extremadura,dc=es"
credentials=clave-del-usuario-replica
updateref ldap://ldap
Con ésto, lograremos que el ldap slave replique la B.D. del ldap master.
No voy a entrar en detalle sobre todos los parámetros. Todos son importantes, pero tan sólo contaremos los principales:
- syncrepl rid=1 Identificamos la réplica. Por lo que he leído, cada réplica debe llevar un número diferente.
- provider=ldap://ldap Indicamos quién es el proveedor del que se va a obtener la B.D.
- searchase="dc=insituto,dc=extremadura,dc=es" Nos permite indicar la raiz desde donde realizar búsqueda para hacer la réplica.
- type=refreshOnly Con esta opción le decimos al ldap slave que realice la réplica y no vuelva a realizarla hasta que pase un intervalo de tiempo especificadon mediante el parámetro interval.
- interval=00:00:02:00 Esta opción se usa conjuntamente con el tipo de sincronización refreshOnly para que vuelva a realizarse una sincronización tras el intervalo de tiempo especificado en formato dias:horas:minutos:segundos. En este caso, estamos diciendo que vuelva a realizar la sincronización cada 2 minutos.
- binddn="cn=replica,dc=instituto,dc=extremadura,dc=es" nos permite indicar con qué usuario se debe realizar la operación de sincronización.
- credentials=clave-del-usuario-replica nos permite indicar la clave del usuario con el que se realiza la operación de sincronización.
Bien, pues ahora que ya hemos configurado el archivo /etc/ldap/slapd.conf, establecemos el propietario y grupo del directorio /var/lib/ldap a openldap:openldap
# chown -R openldap:openldap /var/lib/ldap
Por último, reiniciamos los servicios ldap de ambos servidores y comprobamos que los cambios del master se han replicado en el slave.
Publicado por primera vez en http://enavas.blogspot.com.es
0 comentarios:
Publicar un comentario