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
5