« OpenLDAP tutorial », basée sur la pratique. La démarche de l’exposé se fait pas à pas en montrant tous les détails nécessaires au bon fonctionnement final. L’installation exposée comprend une configuration minimale pour un fonctionnement correcte. D’autres articles suivront pour améliorer l’installation sur différents aspects. Il est conseillé de suivre cette serie d’articles dans l’ordre.
- Cet article: Installation et configuration de base
- Modifier les paramètres par défaut
- Activer le Log OpenLDAP
- Accès à la configuration dynamique par l’administrateur
- Organisation et types de données
- Ajouter des données à l’annuaire
- Utilisation pour protéger l’accès à un site web
- OpenLDAP password policy – gérer les comptes des utilisateurs
Openldap tutorial, étape 1: Configurer correctement l’hôte Debian / Ubuntu.
La procédure d’installation du serveur met en place systématiquement une base de données. Le DIT (équivalent de l’instance pour les bases de données relationnelles) est sélectionné en fonction du nom de domaine de la machine hôte.hostname -fCette commande retourne le nom complet (full) de la machine. Exemple: desktop.meddeb.net. Dans ce cas la base de données aura pour DIT: dc=meddeb,dc=net (la partie droite du nom à partir du 1er point rencontré). Si la configuration ne vous convient pas, il faudrait la modifier (fichier /etc/hostname et /etc/hosts)
Openldap tutorial, étape 2: installer le serveur Openldap sur Debian / Ubuntu.
sudo apt-get purge slapd sudo apt-get install slapdLa procédure d’installation se lance et demande le mot de passe de l’administrateur du serveur. En plus des fichiers binaires exécutables, il est installé dans les dossiers:
- /usr/lib/ldap/ : librairies des modules (overlay), fichiers binaires natifs
- /etc/ldap/schema/ : Schémas disponibles par défaut, fichiers texte.
- /etc/ldap/slap.d/ : Configuration dynamique, fichiers texte.
- /var/lib/ldap/ : Données, fichiers de la base de données installée.
- /var/run/slapd/ : Paramètres d’exécution, fichiers texte.
Openldap tutorial, étape 3: installer les utilitaires client de Openldap.
sudo apt-get install ldap-utilsCeci installe les utilitaires clients Openldap, notamment l’utilitaire d’interrogation ldapsearch. Le fichier de configuration de ces utilitaires /etc/ldap/ldap.conf peut être très utile dans le mesure où il permet de fixer des paramètres par défaut. Cela simplifie l’interaction avec le serveur. Un contenu typique de ce fichier est:
BASE dc=meddeb,dc=net URI ldap://localhost SIZELIMIT 12 TIMELIMIT 15 DEREF never # TLS certificates (needed for GnuTLS) TLS_CACERT /etc/ssl/certs/ca-certificates.crt
Openldap tutorial, étape 4: Vérifier l’installation.
slapd -V ↵ @(#) $OpenLDAP: slapd (Ubuntu) (May 11 2016 16:12:05) $ buildd@lgw01-10:/build/openldap-mF7Kfq/openldap-2.4.42+dfsg/debian/build/servers/slapLa version du serveur installée est 2.4.42
ldapsearch -Y external -H ldapi:/// -b cn=config "(objectClass=olcGlobal)" -LLL ↵ SASL/EXTERNAL authentication started SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth SASL SSF: 0 dn: cn=config objectClass: olcGlobal cn: config olcArgsFile: /var/run/slapd/slapd.args olcLogLevel: none olcPidFile: /var/run/slapd/slapd.pid olcToolThreads: 1Ceci donne la partie globale de la configuration mise en place par défaut. On retrouve l’indication des deux fichiers des paramètres d’exécution dans le dossier /var/run/slapd/. On remarquera le paramètre olcLogLevel à none, à modifier impérativement.
sudo ldapsearch -Y external -H ldapi:/// -b dc=meddeb,dc=net -LLL ↵ ASL/EXTERNAL authentication started SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth SASL SSF: 0 dn: dc=meddeb,dc=net objectClass: top objectClass: dcObject objectClass: organization o: meddeb.net dc: meddeb dn: cn=admin,dc=meddeb,dc=net objectClass: simpleSecurityObject objectClass: organizationalRole cn: admin description: LDAP administratorCeci donne les deux seules entrées créées dans l’annuaire par défaut:
- dc=meddeb,dc=net, qui représente le DIT de l’annuaire.
- cn=admin,dc=meddeb,dc=net, qui est l’administrateur de l’annuaire dont le mot de passe a été saisie au cours de l’installation.