1. LPIC-2 LDAP
BTS-SRI2_Salé 2012-2013 Page 1
Configuration LDAP
I. Qu'est-ce que LDAP?
LDAP signifie Lightweight Directory Access Protocol et c'est un service de répertoires, très semblable
à celui du système de fichiers ou à un annuaire téléphonique auxquels nous sommes habitués, ou aux
services de répertoires réseau tels que NIS (Network Information Service) de SUN, DNS (Domain
Name Service), ou encore à l'arbre que vous voyez dans le jardin de votre voisin.
Une base LDAP est une base de données où les informations sont enregistrées de manière
hiérarchique sous forme d’arbre et non sous forme tabulaire.
Une base LDAP est optimisée pour la lecture d’un nombre important de petits enregistrements et
convient donc parfaitement pour stocker des annuaires ou des profils utilisateurs.
Le système LDAP utilise des schémas (/etc/ldap/schema) pour décrire des objets.
Chaque objet contient plusieurs attributs (obligatoire ou facultatifs). Et chaque objet peut hériter des
attributs d’un autre objet. Exemple :
Chaque donnée enregistrée dans la base est identifiée par son DN (Distinguished Name). Ce DN est
comparable au chemin complet d’un fichier. Exemple : dc=mondomaine,dc=fr
Pour ajouter ou modifier des données dans la base, il est possible d’utiliser le format LDIF.
II. Installation
Paquets à installer :
# apt-getinstallldap-server ldap-client
Ce qui installera en fait :
# apt-getinstallslapdldap-utils
Configuration
Le fichier de configuration est :
/etc/ldap/slapd.conf
La ligne suivante permet d’autoriser l’utilisation de la norme V2 de LDAP.
allow bind_v2
La ligne suivante donne la racine de la base LDAP :
suffix "dc=mondomaine,dc=com"
III. Démarrage du serveur (slapd)
Le serveur slapd se démarre d’une manière classique avec la commande :
# /etc/init.d/slapd restart
2. LPIC-2 LDAP
BTS-SRI2_Salé 2012-2013 Page 2
IV. Utilitaire LDAP
ldapsearch
ldapsearch ouvre une connexion à un serveur LDAP, lie et effectue une recherche en utilisant les
paramètres spécifiés.
Exemple:
ldapsearch -h myhost -p 389 -s base -b "ou=people,dc=example,dc=com" "objectclass=*"
Cette commande recherche le serveur d'annuaire myhost, situé sur le port 389. La portée de la
recherche (-s) est la base, et la partie du répertoire de recherche est le DN de base (-b) désigné. Le
filtre de recherche "objectclass = *" signifie que les valeurs de toutes les classes d'objets de cette
entrée sont retournés.
ldappasswd
ldappasswd - changer le mot de passe d'une entrée LDAP
Exemple:
ldappasswd -x -h localhost -D "cn=root,dc=example,dc=com" -s secretpassword –W
uid=admin,ou=users,ou=horde,dc=example,dc=com
Définir le mot de uid=admin, ou=utilisateurs, ou=horde, dc=example, dc=com sur localhost.
ldapadd
ldapadd est implémenté comme un lien physique vers l'outil ldapmodify. Lorsqu'il est invoqué
comme ldapadd l’indicateur -a (ajouter une nouvelle entrée) est activé automatiquement.
Option: ldapmodify-a
-a Ajoute de nouvelles entrées.
Exemple:
ldapadd -h myhost -p 389 -D "cn=orcladmin" -w welcome -f jhay.ldif
Grâce à cette commande, l'utilisateur orcladmin s'authentifie au le répertoire myhost, situé sur le port
389. La commande ouvre alors le fichier jhay.ldif et ajoute son contenu dans le répertoire. Le fichier
peut, par exemple, ajouter l'entrée uid=jhay, cn=HumanResources,cn=example,dc=com et ses
classes d'objets et attributs.
ldapdelete
ldapdelete ouvre une connexion à un serveur LDAP, lie et supprime une ou plusieurs entrées. Si un ou
plusieurs arguments de DN sont fournis, les entrées avec ces noms distinctifs sont supprimés.
Exemple:
ldapdelete -h myhost -p 389 -D "cn=orcladmin" -w welcome
"uid=hricard,ou=sales,ou=people,dc=example,dc=com"
Cette commande authentifie l’utilisateur orcladminau répertoire myhost, en utilisant le mot de passe
welcome. Ensuite, il supprime l'entrée uid=hricard,ou=sales,ou=people,dc=example,dc=com.