OpenLDAP : Multi-Master Replication2025/09/05 |
|
Configure OpenLDAP Multi-Master Replication. |
|
| [1] |
Configure Basic LDAP Server settings on all server, refer to here. |
| [2] | Configure like follows on all servers. Add syncprov module. |
|
root@dlp:~#
vi mod_syncprov.ldif # create new
dn: cn=module,cn=config
objectClass: olcModuleList
cn: module
olcModulePath: /usr/lib/ldap
olcModuleLoad: syncprov.la
dn: olcOverlay=syncprov,olcDatabase={1}mdb,cn=config
objectClass: olcOverlayConfig
objectClass: olcSyncProvConfig
olcOverlay: syncprov
olcSpSessionLog: 100
ldapadd -Y EXTERNAL -H ldapi:/// -f mod_syncprov.ldif
SASL/EXTERNAL authentication started
SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth
SASL SSF: 0
adding new entry "cn=module,cn=config"
adding new entry "olcOverlay=syncprov,olcDatabase={1}mdb,cn=config"
|
| [3] | Configure like follows on all servers. However, only the parameters [olcServerID] and [provider=***], set different value on each server. |
|
root@dlp:~#
vi master01.ldif # create new dn: cn=config changetype: modify replace: olcServerID # specify unique ID number on each server olcServerID: 101 dn: olcDatabase={1}mdb,cn=config changetype: modify add: olcSyncRepl olcSyncRepl: rid=001 # specify another LDAP server's URI provider=ldap://node02.srv.world:389/ bindmethod=simple # your domain suffix binddn="cn=admin,dc=srv,dc=world" # directory manager's password credentials=password searchbase="dc=srv,dc=world" # includes subtree scope=sub schemachecking=on type=refreshAndPersist # [retry interval] [retry times] [interval of re-retry] [re-retry times] retry="30 5 300 3" # replication interval interval=00:00:05:00 - add: olcMirrorMode olcMirrorMode: TRUE ldapmodify -Y EXTERNAL -H ldapi:/// -f master01.ldif
SASL/EXTERNAL authentication started
SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth
SASL SSF: 0
modifying entry "cn=config"
modifying entry "olcDatabase={1}mdb,cn=config"
|
| [4] | Configure LDAP Client to bind all LDAP server. |
|
root@client:~#
vi /etc/nslcd.conf # line 10 : add LDAP Consumer uri ldap://dlp.srv.world/ ldap://node02.srv.world/
systemctl restart nslcd |
| Sponsored Link |
|
|