préparation à la certification LPIC2 version 3.5 en français
Chapitre : Topic 210 : Gestion des clients réseau
Configuration des serveurs DHCP, de l'authentification PAM et du client LDAP
Partie 3 : Clients LDAP
Topic 210.3
Introduction au protocol LDAP et présentation des outils clients permettant la manipulation (ajout, modification, modification du mot de passe et suppression) et la recherche d'entrées : ldapadd, ldapmodify, ldappassword, ldapdelete et ldapsearch.
Supports créés par Noël Macé sous Licence Creative Commons BY-NC-SA.
1. Linux LPIC2 noelmace.com
Noël Macé
Formateur et Consultant indépendant expert Unix et FOSS
http://www.noelmace.com
Clients LDAP
Gestion des clients réseau
Licence Creative Commons
Ce(tte) œuvre est mise à disposition selon les termes de la
Licence Creative Commons Attribution - Pas d’Utilisation Commerciale - Partage dans les Mêmes Conditions 3.0 France.
2. Linux LPIC2 noelmace.com
Plan
• Introduction : les annuaires
• Lightweight Directory Access
Protocol
• Entrées LDAP
• Attributs
• Filtres LDAP
• Opérateurs
• Clients LDAP sous GNU/Linux
installation
• Recherche
• Modification du mot de passe
d'un utilisateur
• Ajout et modification d'une
entrée
• Suppression d'une entrée
3. Linux LPIC2 noelmace.com
Introduction : les annuaires
• stockage de données hiérarchisées
• destiné au stockage de données pérennes
plus rapide en consultation qu'en mise à jour des données qu'une base de donnée "classique"
utilisateurs (le plus souvent), matériel, ressources, etc ...
• Les principaux serveurs d'annuaire
OpenLDAP (Libre - The OpenLDAP Project)
Active Driectory (Microsoft)
eDirectory (Novell)
Open Directory (Apple)
• Tous sont aujourd'hui basés sur (ou compatibles) LDAP
4. Linux LPIC2 noelmace.com
Lightweight Directory Access Protocol
• norme pour les systèmes d'annuaires
données
nommage
modèle fonctionnel
sécurité
réplication
• créé par Tim Howes (Université du Michigan), Steve Kille (ISODE) et Wengyik Yeong
(Performance Systems International) en 1993
initialement pour simplifier l'accès (interrogation et modification) aux services d'annuaires
X.500 (DAP)
• très nombreuses RFCs (cf liste)
5. Linux LPIC2 noelmace.com
Entrées LDAP
• identifiée par un nom distinct
DN, distinguished name
Relative Distinguished Name (RDN) suivi du DN de son parent
• organisation hierarchique
ex : cn=Richard Stallman,ou=people, dc=noelmace,dc=com
• Chaque entrée est constituée d'un ensemble d'attributs
nom + type + une ou plusieurs valeurs
normaux : définissant l'objet
• nom, prénom, etc …
opérationnels : réservés au serveur
• ex : date de modification
6. Linux LPIC2 noelmace.com
Attributs
• Quelques exemples d'attributs courants
uid (userid) : identifiant
cn (common name) : nom
givenname : prénom
sn (surname) : surnom
o (organization) : entreprise
ou (organizational unit) : service
mail : adresse mail
7. Linux LPIC2 noelmace.com
Filtres LDAP
• définis par la RFC 2254
• permettent la récupération (recherche) des entrées LDAP
"semblables" à une clause WHERE de requête SQL
• s'écrit sous la forme : attribut OPERATEUR valeur
8. Linux LPIC2 noelmace.com
Opérateurs
Type Opérateur Description
Égalité = le champs doit avoir la valeur donnée
Présence * Joker (tout hormis NULL)
Groupement () Permet de séparer / grouper des filtres afin
d'employer d'autres opérateurs logiques
Et & Tout les filtres doivent être vrais
Ou inclusif | Au moins un filtre doit être vrais
Négation ! Exclusion de tout les objets correspondant au
filtre
Égalité approximative ~= -
Plus grand ou égal >= -
Plus petit ou égal <= -
9. Linux LPIC2 noelmace.com
Clients LDAP sous GNU/Linux
• Recherche
ldapsearch
• Manipulation des entrée
ldappasswd
ldapadd & ldapmodify
ldapdelete
• Options communes
obsolètes (remplacées par -H)
• -h : hôte
• -p : port
-H : URI du serveur LDAP
-D binddn : DN de l'utilisateur permettant la connexion au serveur
-w passwd : mot de passe de l'utilisateur permettant la connexion au serveur
11. Linux LPIC2 noelmace.com
Recherche
• récupération des entrées d'un annuaire LDAP à l'aide de filtres
• Options
-s {base|one|sub|children} : portée de la recherche
• respectivement : sur un objet de base, un niveau, la sous-arborescence (par défaut)
ou les enfants (LDAPv3)
-b : point de départ de la recherche
• Exemple
$ ldapsearch [options] filtre [attrs...]$ ldapsearch [options] filtre [attrs...]
$ ldapsearch -h myhost -p 389 -s base -b "ou=people,dc=example,dc=com" "objectclass=*"$ ldapsearch -h myhost -p 389 -s base -b "ou=people,dc=example,dc=com" "objectclass=*"
12. Linux LPIC2 noelmace.com
Modification du mot de passe d'un utilisateur
• opération définie par la RFC 3062
sur l'attribut userPassword (RFC 2256 section 5.36)
• Options
-x : authentification simple (au lieu de SASL)
-s newpasswd : nouveau mot de passe
-W : demander un nouveau mot de passe de manière interactive (au lieu de -s)
• sera sinon généré par le serveur
• Exemple
$ ldappasswd [options] [user]$ ldappasswd [options] [user]
$ ldappasswd -x -h localhost -D "cn=root,dc=example,dc=com"
-s secretpassword uid=admin,ou=users,ou=horde,dc=example,dc=com
$ ldappasswd -x -h localhost -D "cn=root,dc=example,dc=com"
-s secretpassword uid=admin,ou=users,ou=horde,dc=example,dc=com
13. Linux LPIC2 noelmace.com
Ajout et modification d'une entrée
• Ajout d'une entrée :
lien vers ldapmodify activant l'option -a
• Modification d'une entrée :
• Options
-f : lire les informations de modification à partir du fichier au lieu de l'entrée standard
• Exemple
$ ldapadd [options]$ ldapadd [options]
$ ldapmodify [options]$ ldapmodify [options]
$ ldapadd -c -x -W -D cn=root,dc=example,dc=com -H ldaps://ldap1.example.com/ -f grclient.ldif$ ldapadd -c -x -W -D cn=root,dc=example,dc=com -H ldaps://ldap1.example.com/ -f grclient.ldif
dn: cn=clients,ou=Group,dc=example,dc=com
cn: clients
gidNumber: 10001
memberUid: pierre
memberUid: paul
memberUid: jacque
description: Clients de l'entreprise
objectClass: posixGroup
dn: cn=clients,ou=Group,dc=example,dc=com
cn: clients
gidNumber: 10001
memberUid: pierre
memberUid: paul
memberUid: jacque
description: Clients de l'entreprise
objectClass: posixGroup
15. Linux LPIC2 noelmace.com
Ce qu’on a couvert
• Introduction au LDAP
objectif, contexte et structure
• interrogation et de mise à jour des données d'un serveur LDAP
ajout et gestion d'utilisateurs
import, ajout et modification des entrées
• Utilitaires
ldapsearch, ldapadd, ldapmodify, ldappasswd et ldapdelete)
•
Weight : 2
Description : Candidates should be able to perform queries and updates to an LDAP server. Also
included is importing and adding items, as well as adding and managing users.
210.3 LDAP client usage
16. Linux LPIC2 noelmace.com
Licence
Ce(tte) œuvre (y compris ses illustrations, sauf mention explicite) est mise à disposition selon les termes de la
Licence Creative Commons Attribution - Pas d’Utilisation Commerciale - Partage dans les Mêmes Conditions 3.0 France.
Pour voir une copie de cette licence, visitez http://creativecommons.org/licenses/by-nc-sa/3.0/fr/ ou écrivez à :
Creative Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, USA.
Vous êtes libre de :
partager — reproduire, distribuer et communiquer cette œuvre
remixer — adapter l’œuvre
Selon les conditions suivantes :
Attribution — Vous devez clairement indiquer que ce document, ou tout document dérivé de celui, est (issu de) l’œuvre
originale de Noël Macé (noelmace.com) (sans suggérer qu'il vous approuve, vous ou votre utilisation de l’œuvre, à moins
d'en demander expressément la permission).
Pas d’Utilisation Commerciale — Vous n’avez pas le droit d’utiliser cette œuvre à des fins commerciales (ie. l'intention
première ou l'objectif d'obtenir un avantage commercial ou une compensation financière privée). Pour obtenir ce droit, une
autorisation explicite de l'auteur est requise.
Partage dans les Mêmes Conditions — Si vous modifiez, transformez ou adaptez cette œuvre, vous n’avez le droit de
distribuer votre création que sous une licence identique ou similaire à celle-ci.
Pour toute demande de collaboration, d'utilisation commerciale ou de publication de ce support ou d'un dérivé de celui-ci sous une
licence incompatible, contacter l'auteur via les contacts indiqués sur le site http://www.noelmace.com. Vous êtes par ailleurs
vivement encouragé (sans obligation légale) à communiquer avec celui-ci si vous réalisez une œuvre dérivée ou toute amélioration
de ce support.