LDAP Linux Replication

Материал из noname.com.ua
Перейти к навигацииПерейти к поиску

ТУт заметки о репликации

Все действия выполняются на обоих серверах если не сказано другое

Load Extention

  • Загрузить расширение
0001_loadSyncProvModule.ldif
dn: cn=module{0},cn=config
changetype: modify
add: olcModuleLoad
olcModuleLoad: syncprov
ldapmodify  -Y EXTERNAL  -H ldapi:// < 0001_loadSyncProvModule.ldif

Set Server ID

Разные ID на разных серверах

  • Server ID
    • ldap1 : 1
0003_setServerID.ldif
dn: cn=config
changeType: modify
add: olcServerID
olcServerID: 1
    • ldap2: 2
0003_setServerID.ldif
dn: cn=config
changeType: modify
add: olcServerID
olcServerID: 2
ldapmodify  -Y EXTERNAL  -H ldapi:// < 0003_setServerID.ldif

Set credentials

  • Root DN and Root PW
0004_setConfigDB_rootDN
dn: olcDatabase={0}config,cn=config
changeType: modify
add: olcRootDN
olcRootDN: cn=admin,cn=config


0004_setConfigDB_rootPW
dn: olcDatabase={0}config,cn=config
changeType: modify
add: olcRootPW
olcRootPW: r00tme
ldapmodify  -Y EXTERNAL  -H ldapi:// < 0004_setConfigDB_rootPW
ldapmodify  -Y EXTERNAL  -H ldapi:// < 0004_setConfigDB_rootDN

Add ServerID

ldaps - по тому что шифрование но нужно ли это?


0006_addConfigReplication.ldif
dn: cn=config
changetype: modify
replace: olcServerID
olcServerID: 1 ldaps://ldap1
olcServerID: 2 ldaps://ldap2
ldapmodify  -Y EXTERNAL  -H ldapi:// <0006_addConfigReplication.ldif

Add Overlay

<0007_addSyncProv.ldif
dn: olcOverlay=syncprov,olcDatabase={0}config,cn=config
changetype: add
objectClass: olcOverlayConfig
objectClass: olcSyncProvConfig
olcOverlay: syncprov
ldapmodify  -Y EXTERNAL  -H ldapi:// <0007_addSyncProv.ldif

Replica Config

0008_addSyncRepl.ldif
dn: olcDatabase={0}config,cn=config
changetype: modify
add: olcSyncRepl
olcSyncRepl: rid=001 provider=ldaps://ldap1  binddn="cn=admin,cn=config" bindmethod=simple credentials=r00tme searchbase="cn=config" type=refreshAndPersist retry="5 5 300 5"       timeout=1 tls_reqcert=allow tls_cacert=/etc/ssl/certs/rootca.crt
olcSyncRepl: rid=002 provider=ldaps://ldap2  binddn="cn=admin,cn=config" bindmethod=simple credentials=r00tme searchbase="cn=config" type=refreshAndPersist retry="5 5 300 5"       timeout=1 tls_reqcert=allow tls_cacert=/etc/ssl/certs/rootca.crt
-
add: olcMirrorMode
olcMirrorMode: TRUE
ldapmodify  -Y EXTERNAL  -H ldapi:// <0008_addSyncRepl.ldif

Test Replica

Add something in LDAP cn=config, olcServerID: 3 ldaps://test.test1.tld on ldap1 and olcServerID: 3 ldaps://test.test2.tld on ldap2

Add on ldap1


dn: cn=config
changetype: modify
replace: olcServerID
olcServerID: 1 ldaps://ldap1
olcServerID: 2 ldaps://ldap2
olcServerID: 3 ldaps://test.test1.tld
ldapmodify  -Y EXTERNAL  -H ldapi:// < 0009_testConfigReplication_ldap1.ldif

On Ldap1 and Ldap2

slapcat -b  cn=config | grep --color test
olcServerID: 3 ldaps://test.test1.tld

Add on ldap2

0009_testConfigReplication_ldap2.ldif
dn: cn=config
changetype: modify
replace: olcServerID
olcServerID: 1 ldaps://ldap1
olcServerID: 2 ldaps://ldap2
olcServerID: 3 ldaps://test.test2.tld
ldapmodify  -Y EXTERNAL  -H ldapi:// < 0009_testConfigReplication_ldap2.ldif
slapcat -b  cn=config | grep --color test
olcServerID: 3 ldaps://test.test2.tld

So replication is works and all data from ldap1 is replicated to ldap2 and back.

Restore Original settings

ldapmodify  -Y EXTERNAL  -H ldapi:// < 0006_addConfigReplication.ldif