Installation/configuration d’un serveur OpenLDAP
Introduction
Il est maintenant temps de consacrer la suite de cet ouvrage à l’utilisation du serveur OpenLDAP.
OpenLDAP est un projet libre de conception d’un serveur d’annuaire conforme à la norme LDAPv3 (http://www.openldap.org). Ce serveur, dérivé de l’implémentation mise au point par l’université du Michigan, est développé selon les termes de la licence GNU GPL, ce qui signifie qu’il est entièrement gratuit et que les sources de ce logiciel sont disponibles.
Dans ce chapitre, il sera l’objet de l’installation et de la configuration d’un serveur OpenLDAP. Pour ce faire, et avec tous les éléments vus précédemment, il faudra tout d’abord schématiser l’architecture LDAP souhaitée afin de l’intégrer dans l’environnement de production de l’entreprise.
Présentation de l’architecture LDAP à intégrer
Cette section va permettre d’exploiter les différentes études menées lors du chapitre Planification de l’intégration d’un annuaire LDAP dans le cadre de l’intégration d’une architecture LDAP dans un véritable réseau de production d’entreprise ultra-sécurisé de type "DataCenter". Il faudra donc positionner l’annuaire LDAP en tant que service d’authentification auprès de divers clients.
Ainsi, cet environnement héberge une centaine de serveurs Linux Red Hat appartenant à une trentaine de clients de l’entreprise. À cela s’ajoute une dizaine de serveurs dits d’infrastructure permettant d’encadrer ou d’administrer les serveurs hébergés. Ce sont par exemple des serveurs de surveillance (monitoring), de courrier (mail), de temps (ntp), de noms (dns), de virtualisation (ESX) et aussi des équipements matériels de type routeur Cisco ou de carte HP ILO.
Quelques applications notamment de sauvegarde et de surveillance auront elles aussi accès au service d’authentification LDAP, et viennent donc compléter la liste des applications devant utiliser le service d’authentification LDAP.
Tous les serveurs et applications clientes de l’annuaire LDAP sont isolés par client au niveau...
Installation du serveur OpenLDAP
Comme pour la plupart des applications sous Linux, OpenLDAP peut être installé de deux manières différentes :
-
Sous forme de fichiers appelés paquetages RPM (ou plus fréquemment package RPM) pour les distributions de la branche Red Hat.
-
Ou bien à partir des sources de l’application à compiler sur son système.
Dans la mesure du possible, il est préférable d’utiliser les fichiers RPM disponibles et gérés dans chaque distribution, car cela facilitera la gestion des mises à jour de l’application, mais également de la gestion des prérequis (installation des paquetages de dépendance).
1. Les prérequis applicatifs
OpenLDAP s’appuie sur un certain nombre de bibliothèques de logiciels qui doivent être au préalable installés afin de pouvoir utiliser certaines fonctionnalités de l’annuaire. Ainsi, par exemple, si l’annuaire doit être configuré pour utiliser le protocole LDAPS, il faudra au préalable s’assurer que les librairies des logiciels OpenSSL, GnuTLS, ou bien MozNSS TLS ont bien été installées. Voici une liste non exhaustive de logiciels permettant de bénéficier de toutes les fonctionnalités de l’annuaire :
-
Pour LDAPS : OpenSSL, GnuTLS, ou bien MozNSS TLS
-
Pour SASL : Cyrus SASL
-
Pour Kerberos : Cyrus SASL + Heimdal ou MIT Kerberos V
2. À partir de packages RPM (exemple de la distribution Red Hat)
Dans le cas d’une installation d’OpenLDAP sur un Linux Red Hat 6 - 64 bits, les fichiers RPM d’OpenLDAP se trouvent sur le DVD d’installation de la distribution ou bien directement sur le site officiel de la société Red Hat.
Une fois le DVD (ou l’image ISO) monté et présent sur le système, il sera possible de lister tous les packages OpenLDAP disponibles à l’installation.
Exemple
[root@ldap01 yum.repos.d]# yum search openldap
Loaded plugins: product-id, refresh-packagekit, security,
subscription-manager
This system is not registered to Red Hat Subscription Management.
You can use subscription-manager to register.
========================= N/S Matched: openldap
====================================
compat-openldap.i686...
Configuration du serveur OpenLDAP
Le démon ou processus serveur d’OpenLDAP se nomme "slapd" et utilise depuis la version d’OpenLDAP v2.3, non plus un fichier "plat" contenant ses informations de configuration, mais un mécanisme de configuration d’exécution dynamique chargée dans un DIT dédié (cn=config) et stocké sur le système sous forme de fichier LDIF dans le répertoire suivant : /etc/openldap/slapd.d.
Ce mécanisme de configuration se nomme "OLC" pour "On-Line Configuration".
Ainsi, la modification de la configuration doit se faire directement dans l’annuaire à l’aide de commandes LDAP (ex. : ldapmodify, ldapadd...) ou bien par l’intermédiaire d’un navigateur LDAP. Mais il ne faut surtout pas, et en aucun cas, modifier les fichiers de configuration LDIF avec un éditeur de texte de type "vi", car ceux-ci pourraient y inclure des caractères non tolérés pouvant ainsi corrompre la configuration du serveur LDAP.
De plus, cette innovation permet au démon "slapd" d’intégrer à "chaud" les modifications apportées à sa configuration sans redémarrage de l’annuaire comme cela était le cas dans les versions précédentes avec le fichier /etc/openldap/slapd.conf.
En effet, dans l’ancienne version, lors de l’ajout par exemple d’un schéma, il fallait donc modifier le "slapd.conf" pour y ajouter la référence à celui-ci, ajouter son fichier LDIF dans le répertoire de configuration et puis redémarrer le service. Dans de très gros environnements, ce processus pouvait prendre énormément de temps et donc impacter la production. Mais désormais avec OLC l’ajout de ce schéma se fait en ligne de commande avec prise en compte immédiate.
La configuration via le fichier "slapd.conf" est toujours supportée, mais dépréciée, et disparaîtra très certainement dans les futures versions.
Cependant, lors de l’installation initiale d’un serveur OpenLDAP, il est (très) utile de se servir de ce fichier de configuration comme fichier de configuration initial pour ensuite le convertir au nouveau format. Cette...