Replicación

Si tenemos mas de un dominio debemos tener una estructura mas distribuida que sea mas eficiente contra fallos. Una estructura básica sería un servidor maestro con el árbol LDAP completo y servidores con subárboles LDAP que solo tuvieran la parte del dominio que controlan.

De esta manera GOsa controla el servidor maestro y a traves de un proceso llamado replicación los servidores de dominio.

La replicación se configura en la configuración de ldap, pero no la ejecuta el demonio slapd, sino otro especializado llamado slurp. Su configuración se realiza en la base de datos que queremos replicar, como en el ejemplo básico no hemos configurado mas que una base de datos solo tendríamos que añadir al final del fichero de configuración /etc/ldap/slapd.conf:

Configuración Replicación
#Configuración de réplica
#Utilizado por init scripts para parar e iniciar el servidor.
replica-pidfile /var/run/slurp.pid
# Argumentos pasados al servidor.
replica-argsfile /var/run/slapd.args
#Lugar donde grabamos lo que se replica, y que usara slurpd
replogfile /var/lib/ldap/replog
#Las configuraciones de réplica
#Indicación de réplica
replica
#Dirección URI del servidor
uri=ldap://ip.servidor.esclavo1
#Que vamos a replicar del maestro
suffix=" dc=dominio1,dc=CHAOSDIMENSION,dc=ORG"
#Como vamos a autentificar
bindmethod=simple
#DN replica del esclavo1
binddn="cn=esclavo1,ou=people,dc=dominio1,dc=CHAOSDIMENSION,dc=ORG"
#Contraseña del usuario
# de replica de esclavo1
credentials=" tester"
#Indicación de réplica del esclavo2
replica
uri=ldap://ip.servidor.esclavo2
suffix=" dc=dominio2,dc=CHAOSDIMENSION,dc=ORG"
bindmethod=simple
binddn="cn=esclavo2,ou=people,dc=dominio2,dc=CHAOSDIMENSION,dc=ORG"
credentials=" tester"
Fin

Por simplicidad hemos supuesto que los dos servidores esclavos están configurados igual que el maestro, excepto por la configuración de replica del maestro y las indicaciones de los esclavos de quien es el servidor maestro.

En los servidores esclavos añadimos al final del /etc/ldap/slapd.conf:

En esclavo1:
#Quién puede actualizar el servidor
updatedn "cn=esclavo1,dc=dominio1,dc=CHAOSDIMENSION,dc=ORG"
#Desde donde
updateref ldap://ip.servidor.maestro
#Permitimos el acceso
access to dn.subtree= " dc=dominio1,dc=CHAOSDIMENSION,dc=ORG"
by dn= "cn=esclavo1,dc=dominio1,dc=CHAOSDIMENSION,dc=ORG" =wrscx
by * none


En esclavo2:
#Quién puede actualizar el servidor
updatedn "cn=esclavo2,dc=dominio2,dc=CHAOSDIMENSION,dc=ORG"
#Desde donde
updateref ldap://ip.servidor.maestro
#Permitimos el acceso
access to dn.subtree= " dc=dominio2,dc=CHAOSDIMENSION,dc=ORG"
by dn= "cn=esclavo2,dc=dominio2,dc=CHAOSDIMENSION,dc=ORG" =wrscx
by * none



Además debemos crear los usuarios de replica en las bases de datos correspondientes. Eso se vera en el siguiente punto.

aescanero AT gmail.com