Bonjour,
Tout dabord merci de me consacrer de votre temps.
N'étant pas un expert linux , je me tourne vers la communauté pour solliciter de l'aide :
J'ai monté deux serveurs LDAP sous Debian 8 pour mon entreprise, et je cherche à faire une réplication.
Après avoir potassé la doc officielle ldap et quelques dizaines de liens sur google j'ai pu réglé un certain nombre de problèmes. Cependant il en reste un qui persiste et auquel je ne trouve pas de solution :
Voilà, j'ai donc deux serveurs : le provider et le réplica (consumer).
Lorsque la réplication du provider sur le consumer commence, tout se déroule bien, je vois les trames qui passent sur wireshark avec les noms des utilisteurs / groupes etc... présent dans l'annuaire LDAP du provider. Donc il envoie bien les infos nécessaires à la réplication pour le server réplica. Cependant la base de données sur le replica ne se met pas à jour. Et surtout j'ai une erreur dans /var/log/syslog :
Serveur REPLICA : /var/log/syslog :
La réplication se fait via un utilisateur créé pour cela qui se nomme "rpuser" (c'est bien celui-là qui est utilisé, il passe bien dans les trames sur WireShark lors de la requête)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 Dec 22 15:35:06 ldapsrv2 slapd[1930]: Entry (cn=admin,dc=mondomain,dc=local): object class 'simpleSecurityObject' requires attribute 'userPassword' Dec 22 15:35:06 ldapsrv2 slapd[1930]: null_callback : error code 0x41 Dec 22 15:35:06 ldapsrv2 slapd[1930]: syncrepl_entry: rid=012 be_add cn=admin,dc=mondomain,dc=local failed (65) Dec 22 15:35:06 ldapsrv2 slapd[1930]: do_syncrepl: rid=012 rc 65 quitting
Cet utilisateur est présent sur les annuaires des deux serveurs.
il s'agit certainement d'une erreur idiote de configuration que je ne vois pas.
Quelques infos :
J'utilise la dernière version de ldap, avec les fichiers "hdb" et je configure les fichiers via les commandes lapmodify / ldapadd et avec des .ldif comme recommandé dans la doc officielle.
Serveur REPLICA : fichier : olcDatabase={1}hdb.ldif dans /etc/ldap/slapd.d/cn\=config/
Auriez-vous une info qui pourrait m’aiguiller ? Et ou une idée de ce qu'est l'erreur "(65)" du syslog
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35 # AUTO-GENERATED FILE - DO NOT EDIT!! Use ldapmodify. # CRC32 76837017 dn: olcDatabase={1}hdb objectClass: olcDatabaseConfig objectClass: olcHdbConfig olcDatabase: {1}hdb olcDbDirectory: /var/lib/ldap olcSuffix: dc=mon_domain,dc=local olcAccess: {0}to attrs=userPassword,shadowLastChange by self write by anonym ous auth by * none olcAccess: {1}to dn.base="" by * read olcAccess: {2}to * by * read olcLastMod: TRUE olcRootDN: cn=admin,dc=mon_domain,dc=local olcDbCheckpoint: 512 30 olcDbConfig: {0}set_cachesize 0 2097152 0 olcDbConfig: {1}set_lk_max_objects 1500 olcDbConfig: {2}set_lk_max_locks 1500 olcDbConfig: {3}set_lk_max_lockers 1500 olcDbIndex: objectClass eq olcDbIndex: cn,uid eq olcDbIndex: uidNumber,gidNumber eq olcDbIndex: member,memberUid eq structuralObjectClass: olcHdbConfig entryUUID: f1401b2c-5af0-1036-9053-d3dbcc37fb96 creatorsName: cn=admin,cn=config createTimestamp: 20161220111230Z olcSyncrepl: {0}rid=012 provider=ldap://ip_de_mon_serveurLDAP_provider:389/ bindmethod=simple binddn="uid=rpuser,dc=mon_domain,dc=local" credentials=mon_password searchbase="dc=cg o,dc=local" scope=sub schemachecking=on type=refreshAndPersist retry="30 5 300 3" interval=00:00:05:00 olcRootPW:: bERXUjU3NDk= entryCSN: 20161222140750.640561Z#000000#000#000000 modifiersName: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth modifyTimestamp: 20161222140750Z
Un grand merci !
Jonathan
Partager