OpenLDAP-2.4.48
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.4.48-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
ln -sf ../lib/slapd /usr/sbin/slapd
Avertissement
Pour une mise à jour depuis une installation précédente qui
utilise Berkely DB comme moteur, vous devrez copier le(s) base(s)
de données utilisant l'utilitaire slapcat, replacer tous les
fichiers dans /var/lib/openldap
,
changer toutes les occurences de bdb
par mdb
dans /etc/openldap/slapd.conf
et dans tous les
fichiers dans /etc/openldap/slapd.d
, et importer en utilisant
l'utilitaire slapadd une fois l'installation
terminée.
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 lançant les
commandes suivantes :
patch -Np1 -i ../openldap-2.4.48-consolidated-1.patch &&
autoconf &&
./configure --prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var \
--libexecdir=/usr/lib \
--disable-static \
--disable-debug \
--with-tls=openssl \
--with-cyrus-sasl \
--enable-dynamic \
--enable-crypt \
--enable-spasswd \
--enable-slapd \
--enable-modules \
--enable-rlookups \
--enable-backends=mod \
--disable-ndb \
--disable-sql \
--disable-shell \
--disable-bdb \
--disable-hdb \
--enable-overlays=mod &&
make depend &&
make
Les tests semblent fragiles. Des erreurs peuvent faire que les
tests s'arrêtent avant la fin, a priori à cause de problèmes de
temps. Les tests prennent environ 65 minutes indépendamment du
processeur. 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.4.48 &&
cp -vfr doc/{drafts,rfc,guide} \
/usr/share/doc/openldap-2.4.48
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-ndb
: Ce paramètre
désactive le serveur de Cluster MySQL NDB qui cause un échec de configuration
si MySQL est présent.
--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.
--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.
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)
Note
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 :
Répertoire d'adresse Mozilla
Par défaut le support LDAPv2 est désactivé dans le fichier
slapd.conf
. Une fois que la base de
données est correctement paramétrée et que Mozilla est configuré pour utiliser le
répertoire, vous devez ajouter allow
bind_v2
au fichier slapd.conf
.
Unité Systemd
Pour automatiser le démarrage du serveur LDAP au lancement du
système, installez l'unité slapd.service
incluse dans le paquet
blfs-systemd-units-20180105 en
utilisant la commande suivante :
make install-slapd
Note
Vous devrez modifier le fichier /etc/default/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 systemctl :
systemctl start slapd
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
Contenu
Programmes installés:
ldapadd, ldapcompare, ldapdelete,
ldapexop, ldapmodify, ldapmodrdn, ldappasswd, ldapsearch,
ldapurl, ldapwhoami, slapacl, slapadd, slapauth, slapcat,
slapd, slapdn, slapindex, slappasswd, slapschema et
slaptest
Bibliothèques installées:
liblber.so, libldap.so, libldap_r.so, et
plusieurs dans /usr/lib/openldap
Répertoires installés:
/etc/openldap, /{usr,var}/lib/openldap et
/usr/share/doc/openldap-2.4.48
Descriptions courtes
ldapadd
|
ouvre une connexion sur un serveur LDAP, s'authentifie
(bind) et ajoute les entrées.
|
ldapcompare
|
ouvre une connexion sur un serveur LDAP, s'authentifie et
effectue une comparaison en utilisant des paramètres
spécifiés.
|
ldapdelete
|
ouvre une connexion sur un serveur LDAP, s'authentifie et
supprime une ou plusieurs entrées.
|
ldapexop
|
exécute les opérations étendues de LDAP spécifiées par
oid ou l'un des mots-clés spéciaux whoami, cancel, or
refresh.
|
ldapmodify
|
ouvre une connexion sur un serveur LDAP, s'authentifie et
modifie des entrées.
|
ldapmodrdn
|
ouvre une connexion sur un serveur LDAP, s'authentifie et
modifie le RDN des entrées.
|
ldappasswd
|
est un outil utilisé pour paramétrer le mot de passe d'un
utilisateur LDAP.
|
ldapsearch
|
ouvre une connexion sur un serveur LDAP, s'authentifie et
effectue une recherche en utilisant des paramètres
spécifiés.
|
ldapurl
|
est une commande qui permet soit de composer soit de
décomposer des URI LDAP.
|
ldapwhoami
|
ouvre une connexion sur un serveur LDAP, s'authentifie et
affiche des informations sur qui on est.
|
slapacl
|
est utilisé pour vérifier le comportement de slapd en
vérifiant l'accès aux répertoires de données par rapport
aux directives de la liste des contrôles d'accès définies
dans sa configuration.
|
slapadd
|
est utilisé pour ajouter des entrées spécifiées au format
d'échange de répertoire LDAP (LDIF) dans une base de
données LDAP.
|
slapauth
|
est utilisé pour vérifier le comportement de slapd dans
le mappage des identités pour l'authentification et
l'usage des autorisations, tel que spécifié dans in
slapd.conf.
|
slapcat
|
est utilisé pour justifier une sortie LDAP LDIF basée sur
le contenu d'une base de données slapd.
|
slapd
|
est le serveur LDAP autonome.
|
slapdn
|
vérifie la liste des DNS représentée sous forme de chaîne
basée sur une syntaxe de schéma.
|
slapindex
|
est utilisé pour régénérer des index slapd basés sur le
contenu actuel d'une base de données.
|
slappasswd
|
est un outil de mot de passe de OpenLDAP.
|
slapschema
|
est utilisé pour vérifier le respect des schémas dans le
contenu de la base de données slapd.
|
slaptest
|
garde-fou du fichier slapd.conf .
|
liblber.so
|
est un ensemble de routines de règles d'encodage de base
légères. Ces routines sont utilisées par les routines de
la bibliothèque LDAP pour encoder et décoder des éléments
du protocole LDAP en utilisant les règles de l'encodage
de base (légèrement simplifiées) définies par LDAP. Elles
ne sont en général pas utilisées en principe par une
application LDAP sauf dans la gestion des contrôles et
des opérations étendues.
|
libldap.so
|
supporte les programmes LDAP et offre des fonctionnalités
pour d'autres programmes qui interagissent avec LDAP.
|
libldap_r.so
|
contient les fonctions exigées par des programmes LDAP
pour produire des résultats à partir de requêtes LDAP.
|
Last updated on 2019-08-17 22:16:30 +0000