Introduction à OpenLDAP
        
        
          Le paquet OpenLDAP fournit une
          implémentation libre de Lightweight Directory Access Protocol
          (protocole d'accès au répertoire).
        
        
          
          
            Note
          
          
            Les versions de développement de BLFS peuvent ne pas arriver à
            contruire ou à exécuter certains paquets correctement si LFS ou
            des dépendances ont été mises à jour depuis la dernière version
            stable des livres.
          
         
        
          Informations sur le paquet
        
        
        
          Téléchargements supplémentaires
        
        
        
          Dépendances de OpenLDAP
        
        
          Recommandées
        
        
          Cyrus SASL-2.1.28
        
        
          Facultatives
        
        
          GnuTLS-3.8.10, unixODBC-2.3.14, MariaDB-11.8.3 ou
          PostgreSQL-18.0 ou MySQL, OpenSLP, WiredTiger
          et Berkeley
          DB (obsolète) (pour slapd, également obsolète)
        
       
      
        
          Installation de OpenLDAP
        
        
          
          
            Note
          
          
            Si vous souhaitez installer seulement le client ldap*, les pages de manuel
            correspondantes, les bibliothèques et fichiers d'en-têtes (soit
            une installation comme « client-seul »), tapez ces commandes au
            lieu des autres suivantes (pas de suite de test
            disponible) :
          
          patch -Np1 -i ../openldap-2.6.10-consolidated-1.patch &&
autoconf &&
./configure --prefix=/usr     \
            --sysconfdir=/etc \
            --disable-static  \
            --enable-dynamic  \
            --disable-debug   \
            --disable-slapd   &&
make depend &&
make
          
            Ensuite, en tant qu'utilisateur root :
          
          make install
         
        
          Il doit y avoir un utilisateur et un groupe dédié pour prendre le
          contrôle du démon slapd après qu'il est démarré.
          Tapez les commandes suivantes en tant qu'utilisateur root :
        
        groupadd -g 83 ldap &&
useradd  -c "OpenLDAP Daemon Owner" \
         -d /var/lib/openldap -u 83 \
         -g ldap -s /bin/false ldap
        
          Installez OpenLDAP en exécutant
          les commandes suivantes :
        
        patch -Np1 -i ../openldap-2.6.10-consolidated-1.patch &&
autoconf &&
./configure --prefix=/usr         \
            --sysconfdir=/etc     \
            --localstatedir=/var  \
            --libexecdir=/usr/lib \
            --disable-static      \
            --disable-debug       \
            --with-tls=openssl    \
            --with-cyrus-sasl     \
            --without-systemd     \
            --enable-dynamic      \
            --enable-crypt        \
            --enable-spasswd      \
            --enable-slapd        \
            --enable-modules      \
            --enable-rlookups     \
            --enable-backends=mod \
            --disable-sql         \
            --disable-wt          \
            --enable-overlays=mod &&
make depend &&
make
        
          Les tests sont fragiles et des erreurs peuvent faire que les tests
          s'arrêtent avant la fin. Certaines erreurs peuvent apparaitre à
          cause de problèmes de temps. Les tests prennent environ une heure
          et le temps est indépendant du CPU à cause de délais dans les
          tests. Sur la plupart des systèmes, les tests tourneront jusqu'au
          test test065-proxyauth for mdb. Pour
          tester les résultats, lancez : make test.
        
        
          Maintenant, en tant qu'utilisateur root :
        
        make install &&
sed -e "s/\.la/.so/" -i /etc/openldap/slapd.{conf,ldif}{,.default} &&
install -v -dm700 -o ldap -g ldap /var/lib/openldap     &&
install -v -dm700 -o ldap -g ldap /etc/openldap/slapd.d &&
chmod   -v    640     /etc/openldap/slapd.{conf,ldif}   &&
chown   -v  root:ldap /etc/openldap/slapd.{conf,ldif}   &&
install -v -dm755 /usr/share/doc/openldap-2.6.10 &&
cp      -vfr      doc/{drafts,rfc,guide} \
                  /usr/share/doc/openldap-2.6.10
       
      
        
          Explication des commandes
        
        
          --disable-static : Ce
          paramètre empêche l'installation des versions statiques des
          bibliothèques.
        
        
          --disable-debug : Ce
          paramètre désactive le code de déboguage dans OpenLDAP.
        
        
          --enable-dynamic : Ce
          paramètre oblige les bibliothèques OpenLDAP à se lier dynamiquement aux
          programmes de l'exécutable.
        
        
          --enable-crypt : Ce
          paramètre active les mots de passe crypt(3).
        
        
          --enable-spasswd : Ce
          paramètre active la vérification de mot de passe avec SASL.
        
        
          --enable-modules : Ce
          paramètre active le support des modules dynamiques.
        
        
          --enable-rlookups : Ce
          paramètre active les recherches inversées des noms d'hôte du
          client.
        
        
          --enable-backends : Ce
          paramètre active toutes les back-end disponibles.
        
        
          --enable-overlays : Ce
          paramètre active toutes les couches disponibles.
        
        
          --disable-sql : Ce
          paramètre désactive explicitement le terminal sql. Ne mettez pas ce
          paramètre si un serveur SQL est installé et que vous l'utilisez.
        
        
          --disable-wt : ce
          paramètre désactive explicitement le moteur Wiredtiger. Retirez ce
          paramètre si WiredTiger est installé et que vous allez utiliser un
          moteur WiredTiger.
        
        
          --libexecdir=/usr/lib : Ce
          paramètre contrôle où le répertoire /usr/lib/openldap est installé. Ce répertoire ne
          contient que des bibliothèques, donc il est mieux dans /usr/lib au lieu de /usr/libexec.
        
        
          --enable-slp : Ce paramètre active
          le support SLPv2. Utilisez ce paramètre si vous avez installé
          OpenSLP.
        
        
          --disable-versioning : ce
          paramètre désactive le versionnage de symboles dans les
          bibliothèques OpenLDAP. Le
          comportement par défaut est d'avoir le versionnage de symboles.
          Remarquez que si vous avez construit les applications avec ce
          paquet et avec le versionnage de symboles, puis supprimez les
          symboles, les applications peuvent ne plus se lancer.
        
        
          
          
            Note
          
          
            Vous pouvez lancer ./configure
            --help pour voir s'il y a d'autres paramètres que
            vous pouvez passer à la commande configure pour activer d'autres
            options ou d'autres paquets de dépendance.
          
         
        
          install ...,
          chown ... et
          chmod ... :
          Avoir les fichiers de configuration slapd et les bases de données
          ldap dans /var/lib/openldap lisibles par tous est un PROBLÈME DE
          SÉCURITÉ, en particulier depuis qu'un fichier stocke les mots de
          passe admin en TEXTE BRUT. C'est pour cela que le mode 640 et le
          propriétaire root:ldap sont utilisés. Le propriétaire est root,
          donc seul root peut modifier le fichier, et le groupe est ldap,
          pour que le groupe à qui appartient le démon slapd puisse lire mais
          pas modifier le fichier dans le cas d'une faille de sécurité.
        
       
      
        
          Configuration de OpenLDAP
        
        
          
            Fichiers de
            configuration
          
          
            
              - 
                
                  Pour le client LDAP : /etc/openldap/ldap.conf et ~/.ldaprc
                
               
              - 
                
                  Pour le serveur LDAP, il y a deux mécanismes de
                  configuration : un vieux fichier de configuration,
                  /etc/openldap/slapd.conf et
                  le système slapd-config recommandé qui
                  utilise une base de données LDIF stockée dans /etc/openldap/slapd.d.
                
               
            
           
         
        
          
            Informations sur la configuration
          
          
            Configurer des serveurs slapd peut être complexe.
            Sécuriser le répertoire LDAP, en particulier si vous stocker des
            données privées comme une base de données de mots de passe, peut
            être également une tâche compliquée. Pour configurer OpenLDAP vous devrez modifier soit le
            fichier /etc/openldap/slapd.conf
            (l'ancienne méthode) soit le fichier /etc/openldap/slapd.ldif puis utiliser
            ldapadd pour créer
            la base de configuration LDAP dans /etc/openldap/slapd.d (méthode recommandée par
            la documentation d'OpenLDAP).
          
          
            
            
              Avertissement
            
            
              Les instructions précédentes installent une structure LDAP vide
              et un fichier /etc/openldap/slapd.conf par défaut, qui sont
              suffisants pour tester la construction et d'autres paquets
              utilisant LDAP. Ne les utilisez pas sur un serveur en
              production.
            
           
          
            Parmi les ressources pour vous aider sur des sujets tels que le
            choix de configuration d'un répertoire, les définitions de la
            fondation et de la base de données, les paramètres du contrôle
            d'accès, l'exécution en tant qu'utilisateur différent de
            root et le paramétrage d'un
            environnement chroot, il y a :
          
          
         
        
          
            Script de
            démarrage
          
          
            Pour automatiser le démarrage du serveur LDAP au lancement du
            système, installez le script de démarrage
            /etc/rc.d/init.d/slapd
            inclus dans le paquet blfs-bootscripts-20250225 en
            utilisant la commande suivante :
          
          make install-slapd
          
            
            
              Note
            
            
              Vous devrez modifier le fichier /etc/sysconfig/slapd pour inclure les
              paramètres nécessaires à votre configuration spécifique. Voir
              les pages de man de slapd pour des informations
              de paramètre.
            
           
         
        
          
            Tester la configuration
          
          
            Démarrez le serveur LDAP en utilisant le
            script d'initialisation :
          
          /etc/rc.d/init.d/slapd start
          
            Vérifiez l'accès au serveur LDAP avec la commande suivante :
          
          ldapsearch -x -b '' -s base '(objectclass=*)' namingContexts
          
            Le résultat attendu est :
          
          # extended LDIF
#
# LDAPv3
# base <> with scope baseObject
# filter: (objectclass=*)
# requesting: namingContexts
#
#
dn:
namingContexts: dc=my-domain,dc=com
# search result
search: 2
result: 0 Success
# numResponses: 2
# numEntries: 1