Hello. I am going to setup slurpd replication between two servers.
When i am doing changes at master, it replies to slave.(all ok!)
But when i am doing changes to slave, it don't replies to master!
Here are my configs:
------------------------------------------
master_server
------------------------------------------
include /usr/local/etc/openldap/schema/core.schema
include /usr/local/etc/openldap/schema/cosine.schema
include /usr/local/etc/openldap/schema/nis.schema
include /usr/local/etc/openldap/schema/inetorgperson.schema
include /usr/local/etc/openldap/schema/samba.schema
pidfile /var/run/openldap/slapd.pid
argsfile /var/run/openldap/slapd.args
loglevel 256
database ldbm
cachesize 10000
dbcachesize 1000000
threads 128
dbnosync
dbsync 2 12 5
sizelimit 10000
suffix "o=campus,c=ru"
rootdn "cn=Manager,o=campus,c=ru"
rootpw passwoooord
directory /var/db/openldap-ldbm
replogfile /var/log/slurpd.replog
replica host=slave_server:389
binddn="cn=replicator,o=campus,c=ru"
bindmethod=simple
credentials=replicator_password
index objectClass eq
index uid pres,eq
index rid eq
index uidNumber eq
index gidNumber eq
index cn eq,subinitial
index memberUid eq
index gecos eq
index description eq
index default sub
access to attr=userPassword,lmPassword,ntPassword
by self write
by * auth
access to *
by * read
------------------------------------------
slave_server
------------------------------------------
include /usr/local/etc/openldap/schema/core.schema
include /usr/local/etc/openldap/schema/cosine.schema
include /usr/local/etc/openldap/schema/nis.schema
include /usr/local/etc/openldap/schema/inetorgperson.schema
include /usr/local/etc/openldap/schema/samba.schema
pidfile /var/run/openldap/slapd.pid
argsfile /var/run/openldap/slapd.args
modulepath /usr/local/libexec/openldap
moduleload back_bdb
loglevel 256
database bdb
suffix "o=campus,c=ru"
rootdn "cn=Manager,o=campus,c=ru"
rootpw passwoooord
directory /var/db/openldap-data
index objectClass eq
updatedn "cn=replicator,o=campus,c=ru"
updateref ldap://master-server
access to *
by dn="cn=replicator,o=campus,c=ru" write
by * read
---------------------------
So, replication between master and slave works fine.
I need that slave changes replies to master.
Are my configs wrong? Both rootdn passwords are equal.
When i am going to change slave database, connecting to the slave by
"non-updatedn user"(for example rootdn)
no changes have been made at master and at the slave!
I am using perl-script at slave, cause standart tools doesn't work with
updaterefs
------------------
#!/usr/bin/perl
use Net::LDAP;
$ldap = Net::LDAP->new('localhost') or die "$@";
$ldap->bind ( # bind to a directory with dn and password
dn => 'cn=Manager,o=campus,c=ru',
password => 'passwoooord'
);
$dn="uid=user,ou=People,o=campus,c=ru";
$ldap->modify( $dn, replace => { 'cn' => 'test of perl script' });
$ldap->unbind ;
-------------------
Changes have to be done at master server by updateref link, and then
they have to replicate by slurpd replication from master to slave, but
it doesnt'work
Hope for your help.
WBR, Roman Yushin