Formation OpenLDAP

De PedroWiki
Révision datée du 14 décembre 2010 à 11:55 par Jules (discussion | contributions) (Page créée avec « = Installation = Recherche du package: yum search openldap Vérification des packages déjà installés: rpm -qa openldap '''ATTENTION''' on n'a que la partie cliente.... »)
(diff) ← Version précédente | Voir la version actuelle (diff) | Version suivante → (diff)

Installation

Recherche du package:

yum search openldap

Vérification des packages déjà installés:

rpm -qa openldap

ATTENTION on n'a que la partie cliente...

Vérification de la version de noyau

uname -a

Installation du serveur openldap

yum install openldap-servers.x86_64

ATTENTION à cette étape, on n'a pas les commandes clientes ldap*, uniquement les slap*

yum install openldap-clients.x86_64

Configuration initiale

Fichier de configuration slapd.conf

ATTENTION pb: pas de slapd.conf

updatedb
locate slapd.conf
less /usr/share/openldap-servers/slapd.conf.obsolete
cp /usr/share/openldap-servers/slapd.conf.obsolete /etc/openldap/slapd.conf

Edition de /etc/openldap/slapd.conf

Configuration du Root DN et de l'accès Manager

database        bdb
suffix          "dc=pedrono,dc=fr"
rootdn          "cn=Manager,dc=pedrono,dc=fr"
rootpw          {SHA}C5wmJdwh7wX2rU3fR8XyA4N6oyw= (toto)

Génération du mot de passe du manager (rootdn) via slappasswd

slappasswd -h {SHA} -T ./pwdfile

ou

slappasswd -h {SHA} (fonctionnement interactif)

Le mot de passe est affichée sur la sortie standard.

Données

Les données sont dans /var/lib/ldap, mais préférer l'utilisation de slapcat pour faire ses sauvegardes en ldif.

Attention, faire des exports ldif réguliers, en particulier avant la mise à jour d'un serveur, car en cas de changement de format bdb, on peut abimer tout l'annuaire et donc devoir le réimporter.

Mise en place d'ACL

Toujours dans slapd.conf:

# On bloque tout pour tout le monde
# Tout est déjà ouvert pour le rootdn puisque pas sujet aux ACL
# On ouvre en lecture pour un eventuel futur utilisateur "admin"
access to *
        by dn.exact="cn=admin,dc=pedrono,dc=fr" write
        by * none