Konfigurasi Replication pada Server LDAP

Konfigurasi Replication pada Server LDAP

Pada artikel ini, kita akan membahas bagaimana cara melakukan konfigurasi replication pada server LDAP. Replication adalah proses penyimpanan data yang sama pada lebih dari satu server. Dalam kasus ini, kita memiliki dua server LDAP, yaitu master dan slave.

Konfigurasi Master Server

Pada master server, kita perlu mengkonfigurasi file slapd.conf untuk melakukan replication. Berikut adalah contoh konfigurasi yang dapat dilakukan:

replica host=slave.example.org:389 tls=no
binddn="cn=admin,dc=ldap,dc=example,dc=com"
bindmethod=simple
credentials=[passwordnya]

Field replica menunjukkan nama host slave LDAP server dan portnya. Field binddn digunakan untuk login ke slave LDAP server, sedangkan field credentials adalah password dari user tersebut.

Konfigurasi Slave Server

Pada masing-masing slave LDAP server, kita perlu mengkonfigurasi file slapd.conf dengan entry sebagai berikut:

updatedn "cn=admin,dc=example,dc=org"

Field updatedn digunakan untuk login ke slave LDAP server dan update database.

Testing dan Debug

Sekarang kita telah siap untuk mendebug. Kita akan melakukan testing dengan menambahkan beberapa data pada master server menggunakan perintah ldapadd. Berikut adalah contoh perintah yang dapat dilakukan:

root@ldap1:/# ldapadd -x -D "cn=admin,dc=example,dc=org" -W -f coba.ldif

File coba.ldif berisi beberapa entry yang akan ditambahkan pada master server. Jika prosesnya berhasil, maka data tersebut juga akan terlihat pada masing-masing slave LDAP server.

Mendebug Replika

Untuk mendebug replika, kita dapat melihat log pada file /var/lib/ldap/replog.log. Berikut adalah contoh output yang dapat ditemui:

replica: slave.example.org:389
time: 1162740692
dn: cn=coba,ou=Group,dc=example,dc=org
changetype: add
objectClass: groupOfUniqueNames
objectClass: top
uniqueMember: cn=coba,ou=People,dc=example,dc=org
cn: coba
structuralObjectClass: groupOfUniqueNames
entryUUID: 75478270-012e-102b-976c-05894c1414ee
creatorsName: cn=admin,dc=example,dc=org
createTimestamp: 20061105153132Z
entryCSN: 20061105153132Z#000000#00#000000
modifiersName: cn=admin,dc=example,dc=org
modifyTimestamp: 20061105153132Z

replica: slave.example.org:389
time: 1162740692
dn: cn=coba,ou=People,dc=example,dc=org
changetype: add
objectClass: person
objectClass: inetOrgPerson
objectClass: top
userPassword:: e0NSWVBUfSQxJHVRaGE5WGJ1JC5pU0lVUHBUdHB3Mjd6TDhBb0xDWTA=
cn: coba
sn: coba
structuralObjectClass: inetOrgPerson
entryUUID: 7547dd42-012e-102b-976d-05894c1414ee
creatorsName: cn=admin,dc=example,dc=org
createTimestamp: 20061105153132Z
entryCSN: 20061105153132Z#000001#00#000000
modifiersName: cn=admin,dc=example,dc=org
modifyTimestamp: 20061105153132Z

Output tersebut menunjukkan bahwa data yang ditambahkan pada master server telah terlihat pada masing-masing slave LDAP server.