Replication annuaire ldap sous squeeze et slapd 2.4.23

Voila presque tout est dans le titre. Je dois faire un serveur d’authentification samba/ldap haute disponibilité.
J’ai donc commencer par configurer 2 serveur identique avec ce tuto : http://www.progenvrac.com/spip.php?article19
Mes serveurs sont sous squeeze et ma version de slapd est la 2.4.23.
Les serveurs marchent nickel. Je peux connecter mes windows au domaine et l’authentification fonctionne aussi.
La suite, selon moi, consiste a configurer mes 2 serveurs afin qu’ils se mettent à jour l’un l’autre. Comme ça j’ai toujours 2 annuaires semblable.
En trainant un peu sur le net j’ai entendu parlé d’une réplication multi maitre. J’ai donc cherché dans ce sens la mais j’ai vraiment du mal a trouvé une doc qui m’aide vraiment a mettre cette chose en place. Et j’avoue avoir un peu de mal avec les docs techniques en anglais, mais j’essaye de m’améliorer xD

Donc si quelqu’un a des infos pour moi, des liens intéressants etc… Je suis tout ouïe.

Merci d’avance =)

Personne peut m’aider ?

j’ai bien trouvé cette doc :http://www.openldap.org/doc/admin24/replication.html qui semble expliquer en details la configuration master/master mais je ne vois pas clairement quel fichiers ca concerne. Il y en a une paire dans /etc/ldap/slapd.d/ et /etc/ldap/slapd.d/cn=config

:think:

Je n’ai pas encore testé toute la config, mais je viens de faire quelques recherches qui pourront peut-être t’aider.

itsecureadmin.com/wiki/index.php … eplication

be-root.com/2011/11/16/mise- … e-mirroir/

Le deuxième paraît répondre à ta problématique, mais je n’ai pas été plus loin.

Oui je tombe souvent sur des doc dans ce genre, ou la configuration se fait dans le fichier /etc/ldap/slapd.conf
Mais dans ma version de ldap (2.4.23) la config ce fait dans le dossier cn=config et il y a plusieurs fichier a editer et je ne sais pas quoi mettre dans chacun d’eux. J’ai bien essayé en suivant http://www.openldap.org/doc/admin24/replication.html mais ca fonctionne pas. Le top ca serait un petit tuto en francais que je pourrais adapter mais jcrois que ca existe pas xD

Ce qu’il me faut doit être la :

openldap.org/doc/admin24/gui … lti-Master

mais je ne comprend pas trop dan quel .ldif va chaque extrait de code que l’on trouve sur le lien… Ce n’est pas clair du tout. Quelqu’un comprend ?

Bon bah finalement j’ai reussi en faisant une petite pirouette. J’ai appris qu’on pouvait utiliser l’ancien système de configuration.
il suffit de supprimer ou renommer le slapd.d :

Slapd prendra maintenant en compte le fichier slapd.conf =)

Je vous met le miens au passage, comme ca si un jours quelqu’un cherche a faire une replication miroir sous squeeze il y arrivera rapidement :

sur le premier ldap :

et copier :

[code]# This is the main slapd configuration file. See slapd.conf(5) for more

info on the configuration options.

#######################################################################

Global Directives:

ServerID 1

Features to permit

#allow bind_v2

Schema and objectClass definitions

include /etc/ldap/schema/core.schema
include /etc/ldap/schema/cosine.schema
include /etc/ldap/schema/nis.schema
include /etc/ldap/schema/inetorgperson.schema
include /etc/ldap/schema/samba.schema

Where the pid file is put. The init.d script

will not stop the server if you change this.

pidfile /var/run/slapd/slapd.pid

List of arguments that were passed to the server

argsfile /var/run/slapd/slapd.args

Read slapd.conf(5) for possible values

loglevel none

Where the dynamically loaded modules are stored

modulepath /usr/lib/ldap
moduleload back_hdb.so
moduleload syncprov.la

The maximum number of entries that is returned for a search operation

sizelimit 500

The tool-threads parameter sets the actual amount of cpu’s that is used

for indexing.

tool-threads 1

#######################################################################

Specific Backend Directives for @BACKEND@:

Backend specific directives apply to this backend until another

‘backend’ directive occurs

backend hdb

#######################################################################

Specific Backend Directives for ‘other’:

Backend specific directives apply to this backend until another

‘backend’ directive occurs

#backend

#######################################################################

Specific Directives for database #1, of type @BACKEND@:

Database specific directives apply to this databasse until another

‘database’ directive occurs

database hdb

The base of your directory in database #1

suffix “dc=domain,dc=local”

rootdn directive for specifying a superuser on the database. This is needed

for syncrepl.

rootdn "cn=admin,dc=domain,dc=local"
rootpw toto

Where the database file are physically stored for database #1

directory “/var/lib/ldap”

The dbconfig settings are used to generate a DB_CONFIG file the first

time slapd starts. They do NOT override existing an existing DB_CONFIG

file. You should therefore change these settings in DB_CONFIG directly

or remove DB_CONFIG and restart slapd for changes to take effect.

For the Debian package we use 2MB as default but be sure to update this

value if you have plenty of RAM

dbconfig set_cachesize 0 2097152 0

Sven Hartge reported that he had to set this value incredibly high

to get slapd running at all. See http://bugs.debian.org/303057 for more

information.

Number of objects that can be locked at the same time.

dbconfig set_lk_max_objects 1500

Number of locks (both requested and granted)

dbconfig set_lk_max_locks 1500

Number of lockers

dbconfig set_lk_max_lockers 1500

Indexing options for database #1

index objectClass eq
index entryCSN,entryUUID eq

#provider configuration
overlay syncprov
syncprov-checkpoint 100 10
syncprov-sessionlog 100

#consumer configuration
syncrepl rid=001
provider=ldap://192.168.3.111
type=refreshAndPersist
retry="60 +"
searchbase="dc=domain,dc=local"
scope=sub
schemachecking=on
bindmethod=simple
binddn="cn=admin,dc=domain,dc=local"
credentials=toto

mirrormode on

Save the time that the entry gets modified, for database #1

lastmod on

Checkpoint the BerkeleyDB database periodically in case of system

failure and to speed slapd shutdown.

checkpoint 512 30

The userPassword by default can be changed

by the entry owning it if they are authenticated.

Others should not be able to see it, except the

admin entry below

These access lines apply to database #1 only

access to attrs=userPassword,shadowLastChange
by dn=“cn=admin,dc=domain,dc=local” write
by anonymous auth
by self write
by * none

Ensure read access to the base for things like

supportedSASLMechanisms. Without this you may

have problems with SASL not knowing what

mechanisms are available and the like.

Note that this is covered by the ‘access to *’

ACL below too but if you change that as people

are wont to do you’ll still need this if you

want SASL (and possible other things) to work

happily.

access to dn.base="" by * read

The admin dn has full write access, everyone else

can read everything.

access to *
by dn=“cn=admin,dc=domain,dc=local” write
by * read

For Netscape Roaming support, each user gets a roaming

profile for which they have write access to

#access to dn=".*,ou=Roaming,o=morsnet"

by dn="@ADMIN@" write

by dnattr=owner write

#######################################################################

Specific Directives for database #2, of type ‘other’ (can be @BACKEND@ too):

Database specific directives apply to this databasse until another

‘database’ directive occurs

#database

The base of your directory for database #2

#suffix “dc=debian,dc=org”[/code]

pensez a modifier le fichier pour qu’il corresponde a votre domaine et a votre mot de passe admin.

Pour le fichier slapd.conf du deuxieme ldap cest exactement la meme chose sauf qu’il faut mettre ServerID 2 et l’adresse du provider (cest a dire l’adresse du ldap01). Je les ai marqué en rouge pour mieux identifier les changement a faire.

[color=#FF0000]ServerID 1[/color]

ça veut dire quoi cette ligne ?!!! :017

La ligne 6 dans ton fichier slapd.conf

# slaptest -f /etc/ldap/slapd.conf /etc/ldap/slapd.conf: line 6: unknown directive <[color=#FF0000]ServerID> outside backend info and database definitions. slaptest: bad configuration file!

[quote=“kira”][color=#FF0000]ServerID 1[/color]
ça veut dire quoi cette ligne ?!!! :017
[/quote]

C’est les codes couleurs du forum… Ça ne fonctionne pas dans [“code”]…

[color=#FF0000]ServerID 1[/color]

Ça fonctionne dans [“quote”]

Il faut donc lire:

[code]# This is the main slapd configuration file. See slapd.conf(5) for more

info on the configuration options.

#######################################################################

Global Directives:

ServerID 1

Features to permit

…[/code]

Ah ok !
Merci :023

Une autre erreur :cry:

# slaptest -f /etc/ldap/slapd.conf /etc/ldap/slapd.conf: line 125: rootdn is always granted unlimited privileges. /etc/ldap/slapd.conf: line 142: rootdn is always granted unlimited privileges. hdb_db_open: database "dc=umi,dc=ac,dc=ma": db_open(/var/lib/ldap/id2entry.bdb) failed: No such file or directory (2). backend_startup_one (type=hdb, suffix="dc=umi,dc=ac,dc=ma"): bi_db_open failed! (2) slap_startup failed (test would succeed using the -u switch)

Aide !

essaye ca au lieu du slaptest

/etc/init.d/slapd stop slapindex chown -R openldap.openldap /var/lib/ldap /etc/init.d/slapd start

[quote=“cureuil”]essaye ca au lieu du slaptest

/etc/init.d/slapd stop slapindex chown -R openldap.openldap /var/lib/ldap /etc/init.d/slapd start [/quote]
La meme erreur avec slapindex

[code]# slapindex

WARNING!
Runnig as root!
There’s a fair chance slapd will fail to start.
Check file permissions!

/etc/ldap/slapd.conf: line 125: rootdn is always granted unlimited privileges.
/etc/ldap/slapd.conf: line 142: rootdn is always granted unlimited privileges.
hdb_db_open: database “dc=umi,dc=ac,dc=ma”: db_open(/var/lib/ldap/id2entry.bdb) failed: No such file or directory (2).
backend_startup_one (type=hdb, suffix=“dc=umi,dc=ac,dc=ma”): bi_db_open failed! (2)
slap_startup failed
[/code]

Je n’ai jamais eu cette erreure (Et pourtant j’en ai eu depuis que je suis sur ce projet xD)
On dirait qu’il te manque le fichier /var/lib/ldap/id2entry.bdb mais je ne sais pas comment ca se fait. Il est bien présent chez moi.
Essaye de refaire une install peut être que ca résoudra le problème et que le fichier sera bien créé cette fois.

Enfin j’ai arrivé a tourner mon serveur Ldap :041 (figure_1)

le probleme est : quand je tape le url suivant : ldap//:umi.ac.ma … le navigateur ne repond pas ou il affiche rien :confused: