Configuration du client LDAP pour connecter l’authentification externe
LDAP (abréviation de Lightweight Directory Access Protocol) est un ensemble de protocoles standard de l’industrie, largement utilisé pour accéder aux services d’annuaire.
En termes simples, un service d’annuaire est une base de données centralisée, basée sur le réseau, optimisée pour l’accès en lecture. Il stocke et permet d’accéder à des informations qui doivent être partagées entre les applications ou qui sont fortement distribuées.
Les services d’annuaire jouent un rôle important dans le développement d’applications intranet et Internet en vous aidant à partager des informations sur les utilisateurs, les systèmes, les réseaux, les applications et les services sur l’ensemble du réseau.
Un cas d’utilisation typique de LDAP consiste à offrir un stockage centralisé des noms d’utilisateur et des mots de passe. Cela permet à diverses applications (ou services) de se connecter au serveur LDAP pour valider les utilisateurs.
Après avoir configuré un serveur LDAP fonctionnel, vous devrez installer des bibliothèques sur le client pour vous y connecter. Dans cet article, nous allons montrer comment configurer un client LDAP pour se connecter à une source d’authentification externe.
J’espère que vous disposez déjà d’un environnement de serveur LDAP fonctionnel, si vous n’avez pas configuré le serveur LDAP pour l’authentification basée sur LDAP.
Comment installer et configurer le client LDAP dans Ubuntu et CentOS
Sur les systèmes clients, vous devrez installer quelques packages nécessaires pour que le mécanisme d’authentification fonctionne correctement avec un serveur LDAP.
Configurer le client LDAP dans Ubuntu 16.04 et 18.04
Commencez par installer les packages nécessaires en exécutant la commande suivante.
$ sudo apt update && sudo apt install libnss-ldap libpam-ldap ldap-utils nscd
Au cours de l’installation, vous serez invité à fournir des détails sur votre serveur LDAP (fournissez les valeurs en fonction de votre environnement). Notez que le paquet ldap-auth-config qui est installé automatiquement effectue la plupart des configurations en fonction des entrées que vous entrez.
Ensuite, entrez le nom de la base de recherche LDAP, vous pouvez utiliser les composants de leurs noms de domaine à cet effet, comme indiqué dans la capture d’écran.
Choisissez également la version LDAP à utiliser et cliquez sur OK.
Configurez maintenant l’option pour vous permettre de faire en sorte que les utilitaires de mots de passe qui utilisent pam se comportent comme si vous modifiiez les mots de passe locaux et cliquez sur Oui pour continuer.
Ensuite, désactivez l’exigence de connexion à la base de données LDAP à l’aide de l’option suivante.
Définissez également le compte LDAP pour root et cliquez sur OK.
Ensuite, entrez le mot de passe à utiliser lorsque ldap-auth-config tente de se connecter à l’annuaire LDAP en utilisant le compte LDAP pour root.
Les résultats de la boîte de dialogue seront stockés dans le fichier /etc/ldap.conf. Si vous souhaitez apporter des modifications, ouvrez et modifiez ce fichier à l’aide de votre éditeur de ligne de commande préféré.
Ensuite, configurez le profil LDAP pour NSS en l’exécutant.
$ sudo auth-client-config -t nss -p lac_ldap
Configurez ensuite le système pour qu’il utilise LDAP pour l’authentification en mettant à jour les configurations PAM. Dans le menu, choisissez LDAP et tout autre mécanisme d’authentification dont vous avez besoin. Vous devez maintenant pouvoir vous connecter à l’aide d’informations d’identification LDAP.
$ sudo pam-auth-update
Si vous souhaitez que le répertoire personnel de l’utilisateur soit créé automatiquement, vous devez effectuer une configuration supplémentaire dans le fichier PAM de session commune.
$ sudo vim /etc/pam.d/common-session
Ajoutez-y cette ligne.
session required pam_mkhomedir.so skel=/etc/skel umask=077
Enregistrez les modifications et fermez le fichier. Redémarrez ensuite le service NCSD (Name Service Cache Daemon) à l’aide de la commande suivante.
$ sudo systemctl restart nscd
sudo systemctl enable nscd
Remarque : Si vous utilisez la réplication, les clients LDAP devront faire référence à plusieurs serveurs spécifiés dans /etc/ldap.conf. Vous pouvez spécifier tous les serveurs sous cette forme :
uri ldap://ldap1.example.com ldap://ldap2.example.com
Cela implique que la demande expirera et que si le Fournisseur (ldap1.example.com) ne répond plus, le Consommateur (ldap2.example.com) tentera d’être joint pour la traiter.
Pour vérifier les entrées LDAP d’un utilisateur particulier à partir du serveur, exécutez la commande getent, par exemple.
$ getent passwd tecmint
Si la commande ci-dessus affiche les détails de l’utilisateur spécifié à partir du fichier /etc/passwd, votre machine cliente est maintenant configurée pour s’authentifier auprès du serveur LDAP, vous devriez pouvoir vous connecter à l’aide d’informations d’identification basées sur LDAP.
Configurer le client LDAP dans CentOS 7
Pour installer les packages nécessaires, exécutez la commande suivante. Notez que dans cette section, si vous exploitez le système en tant qu’utilisateur administratif non root, utilisez la commande sudo pour exécuter toutes les commandes.
# yum update && yum install openldap openldap-clients nss-pam-ldapd
Ensuite, activez le système client pour qu’il s’authentifie à l’aide de LDAP. Vous pouvez utiliser l’utilitaire authconfig, qui est une interface permettant de configurer les ressources d’authentification système.
Exécutez la commande suivante et remplacez example.com par votre domaine et dc=example,dc=com par votre contrôleur de domaine LDAP.
# authconfig --enableldap --enableldapauth --ldapserver=ldap.example.com --ldapbasedn="dc=example,dc=com" --enablemkhomedir --update
Dans la commande ci-dessus, l’option --enablemkhomedir crée un répertoire personnel local lors de la première connexion s’il n’en existe pas.
Ensuite, testez si les entrées LDAP d’un utilisateur particulier proviennent du serveur, par exemple l’utilisateur tecmint.
$ getent passwd tecmint
La commande ci-dessus doit afficher les détails de l’utilisateur spécifié à partir du fichier /etc/passwd, ce qui implique que la machine cliente est maintenant configurée pour s’authentifier auprès du serveur LDAP.
Important : Si SELinux est activé sur votre système, vous devez ajouter une règle pour permettre la création automatique de répertoires personnels par mkhomedir.
Pour plus d’informations, consultez la documentation appropriée du catalogue de documents du logiciel OpenLDAP.
Résumé
LDAP est un protocole largement utilisé pour interroger et modifier un service d’annuaire. Dans ce guide, nous avons montré comment configurer un client LDAP pour se connecter à une source d’authentification externe, sur les machines clientes Ubuntu et CentOS. Vous pouvez laisser vos questions ou commentaires en utilisant le formulaire de commentaires ci-dessous.







