Le Service Annuaire LDAP
Contexte
De nos jours, les entreprises on autant besoins de réseau informatique pour exploiter leurs ressources que de bases de données pour stocker des informations sensibles.
Introduction :
LDAP signifie Lightweight Directory Access Protocol. C’est le standard de fait pour accéder à un annuaire. Un annuaire est une base de données qui va contenir des informations sur des personnes, des machines, des groupes ou toute autre catégorie que vous pourriez imaginer.
Faire la différence entre un annuaire LDAP et un SGBDR
Dans un annuaire LDAP, contrairement à un SGBDR:
• Il n‘y a pas de dépendance entre les objets stockés
• les objets peuvent être distribués sur plusieurs annuaires pour assurer une meilleure disponibilité
• les applications de l’annuaire n’ont pas besoin de connaître la structure interne des données stockées
Quelques cas d’utilisation d’un annuaire LDAP
➢ On peut y stocker les informations des employés d’une entreprise qui seront utilisées à des fins d’authentification en vue d’accéder à un réseau WIFI (compatible avec le service d’authentification RADIUS ) ➢On peut y stocker les informations des VLAN d’appartenance des employés d’une entreprise
➢On peut y stocker les informations de comptes de téléphonie sur IP
➢On peut surtout y stocker des informations de connexion à des applications. En plus simple, un annuaire LDAP permet de centraliser des informations d’une entreprise qui seront exploitées par diverses applications de ladite entreprise.
Concepts de l’annuaire
Dans un annuaire, un modèle définit un ensemble de règles d’accès aux ressources. Dans le
cas d’un annuaire LDAP, nous retrouvons 5 modèles, et chacun joue un rôle fondamental :
➢ Le modèle d’information qui définit les types d’infos contenues dans l’annuaire.
➢Le modèle de nommage définit comment les informations sont organisées et
référencées.
➢Le modèle fonctionnel définit comment accéder à l’information dans l’annuaire.
➢Le modèle de sécurité. Lui il définit comment les données et les accès sont protégées.
➢Le modèle de duplication quand à lui définit comment la base de données est répartie
entre serveurs
Définition de quelques termes
1. Chaque entrée dans un annuaire a un identifiant unique appelé DN (Distinguish Name)
2. Les informations dans un annuaires sont des objets qui appartiennent à des classes.
3. La classe d’un objet définit l’ensemble des attributs que doit avoir l’objet et les règles
définissant le contenu de chaque attribut.
4. Un attribut définit les caractéristiques de l’objet.
5. Les attributs obligatoires d’un sont la réunion des attributs obligatoires de chaque classe. 6. Un schéma permet de donner la liste de toutes les classe qu’un annuaire peut prendre.
7. Le schéma décrit les classes d’objet, leurs types d’attributs et leur syntaxe.
8. Une classe a toujours une mère, et une fille hérite des attributs de sa mère.
9. Le DN représente le chemin absolu d’accès à l’entrée
Installation de Openldap
Sous Linux, OpenLdap est composé du deamon slapd et ldap-utils (pour
interroger l’annuaire). Installation des paquets
Ici sur la figure ci-dessous on va donner le mot de passe de l’administrateur de l’annuaire Ldap et puis on tape sur entrer pour continuer.
Apres le mot de passe, l’installation est terminée.Donc passons à la reconfiguration du service slapd.
Configuration du service Annuaire Ldap
Lors de la configuration de l'annuaire, il est nécessaire d'intervenir sur plusieurs fichiers de configuration situés dans le répertoire /etc/ldap :
Comme nous constatons dans le /etc/ldap il n’y a pas le fichier slapd.conf nous allons le fichier dans ce meme repertoire
Copier slapd.conf dans /etc/ldap
Par défaut le fichier sldapd.conf se trouve dans le repertoire source du service sldap, donc essayons de copier ce fichier dans /etc/ldap. La commande qui permet de copier un fichier en ligne est
root@ismail:#cp /usr/share/slapd/slapd.conf /etc/ldap: cette commande veut dire que copie moi le fichier sldapd.conf qui se trouve dans /usr/share/slapd dans le repertoire courant(.) qui est /etc/ldap comme nous montre la figure ci-dessous :
Renommer le répertoire slapd.d en slapd.d.ancien
Pour renommer ? Par ce que le dossier slapd.d contient déjà des fichiers configurés par défaut, pour cela il est recommande de renommer ou soit de supprimer ce dossier Nous on l’a renommé comme slapd.d.ancien comme nous montre la figure ci-dessous.
Paramétrer le fichier ldap.conf pour préciser la base avec son adresse ip
Notre base est tchad.td et L’adresse ip l’annuaire Ldap 127.0.0.1
Configurer le fichier slapd.conf
Ce fichier comporte diverses informations telles que la racine supérieure de l'annuaire, l'administrateur principal de l'annuaire LDAP et son mot de passe, les droits d'accès par défaut, les fichiers d'objets et de syntaxe à utiliser ainsi que les règles d'accès pour les entrées et les attributs de l'annuaire LDAP.Éditons ce fichier pour faire des paramétrages : nano /etc/ldap/slapd.conf
Chargement de modules permettant d'étendre les fonctionnalités de OpenLDAP
Mettre le paramètre moduleload en back_hdb
Mettre le moteur permettant de récupérer les données en réponse à une requête en hdb
On choisi notre base de données qui sera hdb
On définit la ''racine'' de l'arbre (on parle de ''suffixe'' ou de ''basedn'')
Notre suffixe est "dc=tchad,dc=td"
L'administrateur de l'annuaire
rootdn "cn=isma,dc=tchad,dc=td"
rootpw passer # en clair ou généré via la commande slappasswd
Contrôle d'accès aux attributs sensibles
access to attrs=userPassword,shadowLastChange
by dn="cn=isma,dc=tchad,dc=td" write
by anonymous auth
by self write
by * none
Annuaire avec accès anonyme en lecture seule
access to dn.base="" by * read
access to *
by dn="cn=isma,dc=tchad,dc=td" write
by * read
Redémarrer le serveur slapd
Pour faire une action sur un service, on utilise la commande :
service {nomduservice} {actionàfaire},dans notre cas : service slapd restart
On constate que le service est bien redémarré,donc regardons le port d’écoute du service.
Regarder si le port est a l’écoute du service
Le port d’écoute du ldap est 389. netstat -anp | grep -w 389 est la commande qui permet de savoir si le port est à l'écoute du service.