Chapitre 25. LDAP - Service d'annuaire

Table des matières

25.1. LDAP vs NIS
25.2. Structure d'une arborescence LDAP
25.3. Configuration de serveur avec slapd.conf
25.4. Gestion de données dans l'annuaire LDAP
25.5. Client LDAP de YaST
25.6. Configuration d'utilisateurs et de groupes LDAP dans YaST
25.7. Pour plus d'informations

Résumé

LDAP (Lightweight Directory Access Protocol) est un jeu de protocoles conçu pour l'accès aux annuaires d'informations et leur maintenance. LDAP peut être utilisé à diverses fins, telles que la gestion d'utilisateurs et de groupes, la gestion de configuration système ou la gestion d'adresses. Ce chapitre propose des informations de base sur le fonctionnement d'OpenLDAP et sur la gestion de données LDAP avec YaST. Alors qu'il existe plusieurs implémentations du protocole LDAP, ce chapitre est exclusivement consacré à l'implémentation OpenLDAP.

Au sein d'un environnement réseau, il est crucial de conserver les informations importantes sous une forme structurée et rapidement disponible. Cela est possible grâce à un service d'annuaire qui, à l'instar des pages jaunes, stocke les informations sous une forme bien structurée et rapidement accessible.

Dans le cas idéal, un serveur central stocke les données dans un annuaire et les distribue à tous les clients par le biais d'un protocole donné. Les données sont structurées de manière à être accessibles par une large palette d'applications. En mettant à disposition un dépôt de données central, cette solution évite que chaque outil d'agenda électronique ou client de messagerie électronique ne gère sa propre base de données. Cela réduit considérablement les tâches administratives liées aux informations. L'utilisation d'un protocole ouvert et standardisé comme LDAP garantit qu'un maximum d'applications clientes pourra accéder aux données.

Dans ce contexte, l'annuaire est un type de base de données optimisé pour des consultations et des recherches rapides et efficaces :

La conception d'un service d'annuaire comme LDAP n'est pas prévue pour prendre en charge des mécanismes complexes de mise à jour ou de requête. Toutes les applications qui accèdent à ce service doivent y accéder rapidement et facilement.

De nombreux services d'annuaire existaient déjà et continuent d'exister sous Unix et ailleurs. Novell NDS, Microsoft ADS, Banyan's Street Talk et le standard OSI X.500 ne sont que quelques exemples. LDAP était initialement prévu comme une version allégée de DAP, le protocole d'accès aux annuaires, qui avait été développé pour les accès X.500. Le standard X.500 réglemente l'organisation hiérarchique des entrées d'annuaire.

LDAP est une version réduite de DAP. Sans perdre la hiérarchie des entrées X.500, profitez des fonctionnalités inter-plates-formes de LDAP et économisez des ressources. L'utilisation de TCP/IP simplifie grandement l'établissement d'interfaces entre une application d'accueil et le service LDAP.

Entre temps, LDAP a évolué et est de plus en plus employé comme solution autonome sans support X.500. LDAP prend en charge les références à LDAPv3 (la version du protocole contenue dans le paquetage openldap2), ce qui permet la création de bases de données distribuées. L'utilisation de SASL (simple authentication and security layer) est aussi une nouveauté.

LDAP ne se limite pas aux requêtes de données sur les serveurs X.500, comme c'était initialement prévu. Le serveur Open source slapd peut stocker des informations d'objet dans une base de données locale. Il existe également une extension nommée slurpd, responsable de la réplication des serveurs LDAP multiples.

Le paquetage openldap2 se compose des éléments suivants :

slapd

Serveur LDAPv3 autonome qui administre les informations d'objet dans une base de données BerkeleyDB.

slurpd

Programme permettant la réplication des modifications apportées aux données du serveur LDAP local sur d'autres serveurs LDAP installés sur le réseau.

autres outils de maintenance système

slapcat, slapadd, slapindex


25.1. LDAP vs NIS

L'administrateur système d'Unix utilise traditionnellement le service NIS pour la résolution de noms et la distribution de données dans un réseau. Les données de configuration contenues dans les fichiers de /etc et dans les répertoires group, hosts, mail, netgroup, networks, passwd, printcap, protocols, rpc et services sont distribuées par des clients dans l'ensemble du réseau. La maintenance de ces fichiers ne nécessite aucun effort particulier puisqu'il s'agit de simples fichiers texte. La manipulation de grandes quantités de données devient néanmoins de plus en plus difficile en raison de l'absence de structure. Le service NIS est réservé aux plates-formes Unix. Il ne constitue donc pas un système d'administration de données centralisé approprié en cas de réseaux hétérogènes.

À la différence de NIS, le service LDAP ne se limite pas aux réseaux Unix purs. Les serveurs Windows (à partir de 2000) prennent le service d'annuaire LDAP en charge. Novell propose également un service LDAP. Les tâches applicatives mentionnées plus haut sont en outre prises en charge dans les systèmes autres qu'Unix.

Le principe LDAP peut être appliqué à toute structure de données qui doit être administrée de façon centralisée. Voici quelques exemples d'applications :

  • Utilisation en remplacement du service NIS.

  • Routage de courrier (postfix, sendmail).

  • Carnets d'adresses pour clients de messagerie, tels que Mozilla, Evolution et Outlook.

  • Administration de descriptions de zone pour un serveur de noms BIND9.

  • Authentification utilisateur avec Samba dans les réseaux hétérogènes.

Cette liste peut être étendue puisque, contrairement à NIS, LDAP est extensible. La structure hiérarchique clairement définie simplifie l'administration de gros volumes de données en facilitant les recherches.