Il faut bien identifier les objets à référencer et les objectifs de l'annuaire. Les fichiers sont dans "/etc/openldap".
Le premier fichier est "sldapd.conf" qui décrit les principaux paramètres de votre annuaire :
# $OpenLDAP: pkg/ldap/servers/slapd/slapd.conf,v 1.8.8.6 2001/04/20 23:32:43 kurt Exp $
#
# See slapd.conf(5) for details on configuration options.
# This file should NOT be world readable.
#
# Inclusion des schémas nécessaires
include /etc/openldap/schema/core.schema
include /etc/openldap/schema/cosine.schema
include /etc/openldap/schema/inetorgperson.schema
include /etc/openldap/schema/nis.schema
# Options que vous pouvez modifier
#pidfile //var/run/slapd.pid
#argsfile //var/run/slapd.args
#######################################################################
# ldbm database definitions
#######################################################################
# Choix du format de base de données pour le stockage des informations.
database ldbm
# Configurer le suffixe (racine) de l'annuaire
# en fonction du domaine DNS
suffix "dc=my-domain,dc=com"
# ou d'une autre organisation
#suffix "o=My Organization Name,c=US"
# L'administrateur de l'annuaire
rootdn "cn=Manager,dc=my-domain,dc=com"
# Le mot de passe de l'administrateur, préférer une option cryptée
# La commande htpasswd peut très bien faire l'affaire pour encrypter
# rootpw secret
# rootpw {crypt}ijFYNcSNctBYg
# Emplacement de la base de données
directory /var/lib/ldap
# Création des index.
# Comme pour une base de données, indexer les rubriques
# les plus utilisées.
index objectClass,uid,uidNumber,gidNumber,memberUid eq
index cn,mail,surname,givenname eq,subinitial
# La réplication ne sera pas utilisée ici
# Vous pouvez répliquer tout ou partie d'un arbre
# activée par le daemon slurpd
# Directives de replication
# sinon les mettre dans un fichier à part et utiliser
# replogfile /chemincomplet/du/fichier
# Indiquer quels sont les serveurs réplicats
# et la méthode d'authentification
# Ici le serveur local, se répliquera sur ldap1
#replica host:ldap-1.example.com:389
# bindmethod=simple
# binddn="cn=replicat_slave1, dc=mydomain, dc=fr"
# credential=UnMotDePasse
# Accés par défaut sur la base
defaultaccess read
Protéger ensuite le fichier avec un "chmod 600 /etc/openldap/slapd.conf".
Les autorisations d'accès nécessitent une remarque.
Ici l'accès par défaut est "read", mais il est possible d'affiner. Par exemple avec des règles d'écriture comme:
access to <what> [ by <who> <none | compare | search | read | write>]
# Donne un accés en écriture pour le manager du domaine
access to * by dn="cn=Manager,dc=mydomain,dc=fr" write
# Donne un accés en lecture à tout le monde sur la base
access to * by * read
# Donne un accés en écriture sur un attribut pour le manager
# en lecture pour les autres.
access to attr=uid
by dn="manager,dc=mydomain,dc=fr" write
by * none
Pour configurer un réplicat, procédez comme suit :
# Configurez le fichier slrupd.conf du réplicat
# Ajoutez les options updatedn
# Le dn replicat_slave1 doit être identique à celui déclaré sur le maître.
rootdn ="cn=replicat_slave1, dc=mydomain, dc=fr"
rootpw=UnMotDePasse
updatedn = "cn=replicat_slave1, dc=mydomain, dc=fr"
Le nombre d'options est très important, utilisez la commande "man slapd.conf".