Recherche de site Web

Comment configurer le client LDAP pour connecter l'authentification externe


LDAP (abréviation de Lightweight Directory Access Protocol) est un ensemble de protocoles standard largement utilisé dans l'industrie pour accéder aux services d'annuaire.

En termes simples, un service d'annuaire est une base de données centralisée en réseau optimisée pour l'accès en lecture. Il stocke et donne accès à des informations qui doivent être partagées entre les applications ou qui sont hautement 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 montrerons 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, sinon configurez 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

Lors de l'installation, vous serez invité à fournir les détails de votre serveur LDAP (indiquez les valeurs en fonction de votre environnement). Notez que le package ldap-auth-config qui est installé automatiquement effectue la plupart des configurations en fonction des entrées que vous saisissez.

Saisissez ensuite le nom de la base de recherche LDAP, vous pouvez utiliser à cet effet les composants de leurs noms de domaine comme indiqué sur la capture d'écran.

Choisissez également la version LDAP à utiliser et cliquez sur Ok.

Configurez maintenant l'option pour vous permettre de créer des utilitaires de mot de passe qui utilisent pam pour se comporter 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, saisissez le mot de passe à utiliser lorsque ldap-auth-config tente de se connecter à l'annuaire LDAP à l'aide du 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 exécutant.

sudo auth-client-config -t nss -p lac_ldap

Configurez ensuite le système pour utiliser 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 devriez maintenant pouvoir vous connecter à l'aide d'informations d'identification basées sur LDAP.

sudo pam-auth-update

Si vous souhaitez que le répertoire personnel de l'utilisateur soit créé automatiquement, vous devez alors 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) avec 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 si le Fournisseur (ldap1.example.com) ne répond plus, le Consommateur (ldap2 .example.com) tentera d'être contacté pour le traiter.

Pour vérifier les entrées LDAP d'un utilisateur particulier à partir du serveur, exécutez par exemple la commande getent.

getent passwd tecmint

Si la commande ci-dessus affiche les détails de l'utilisateur spécifié à partir du fichier /etc/passwd, votre ordinateur client est maintenant configuré pour s'authentifier auprès du serveur LDAP, vous devriez pouvoir vous connecter à l'aide des 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 utilisez 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 s'authentifier à l'aide de LDAP. Vous pouvez utiliser l'utilitaire authconfig, qui est une interface permettant de configurer les ressources d'authentification du 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 de base d'utilisateur local lors de la première connexion s'il n'en existe pas.

Ensuite, testez si les entrées LDAP d'un utilisateur particulier 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 client 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 autoriser la création automatique de répertoires personnels par mkhomedir.

Pour plus d'informations, consultez la documentation appropriée dans le 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.