Comment authentifier un utilisateur Linux à l'aide du Directory Microsoft Active

Comment authentifier un utilisateur Linux à l'aide du Directory Microsoft Active
Active Directory (AD) est le service d'annuaire de Microsoft, et il est largement utilisé pour consolider l'authentification Windows et Linux dans un réseau hybride qui s'exécute sur les deux systèmes d'exploitation.

De quoi parlerons-nous?

Dans cet article, nous verrons comment authentifier un utilisateur Linux à l'aide du Directory Microsoft Active. Pour ce tutoriel, nous utilisons le serveur Windows 2016 et Ubuntu 20.04 OS.

Conditions préalables:

  1. Nous n'entrerons pas dans les détails de la répertoire actif, y compris ses fonctionnalités, sa configuration et sa maintenance. Pour ce guide, nous supposerons que vous savez comment configurer un domaine Active Directory et vous avez accès aux informations d'identification requises.
  2. Le contrôleur de domaine, le Windows Server 2016 dans ce cas, est configuré comme un résolveur DNS principal et faisant autorité pour le domaine.
  3. Le temps est correctement configuré et synchronisé sur les deux systèmes. Il peut être accompli via des services comme Chrony ou NTP.
  4. Pour notre tutoriel, nous utilisons le myCompany.domaine local.

Configuration du nom d'hôte du client

Tout d'abord, nous configurons le nom d'hôte d'Ubuntu pour pointer vers le domaine Active Directory. Par exemple, prenons-le comme myubuntu.mon entreprise.local. Maintenant, modifiez le fichier de nom d'hôte comme suit:

$ sudo echo myubuntu.mon entreprise.Nom local> / etc / hôte

Note: Nous ne pouvons pas utiliser le nom d'hôte comme localhost car il pointe vers 127.0.0.1.

Modification du fichier / etc / hosts

Maintenant, ouvrez le fichier / etc / hosts et spécifiez l'adresse IP de notre client avec son nom d'hôte spécifique du contrôleur de domaine:

Modification du / etc / résolv.fichier de confr

La requête DNS devrait d'abord atteindre le contrôleur de domaine sur notre machine client. Cela peut être accompli en utilisant le résolv.fichier de confr. Cependant, ce fichier est automatiquement mis à jour lorsque vous redémarrez le client. Par conséquent, toutes vos modifications manuelles disparaîtront.

Fait intéressant, nous pouvons résoudre ce comportement en utilisant le package RESOLVCONF. Accédez à ce lien pour réparer le résolv.problème de confusion.

La recherche de résolv.Le fichier conf dans notre cas est le suivant:

Synchronisation du temps

Les systèmes UNIX et Linux s'appuient sur le protocole de temps de réseau (NTP) pour leurs besoins de synchronisation temporelle. En ce qui concerne Ubuntu, il est centré sur le serveur NTP par défaut à NTP.ubuntu.com. Si vous voulez que votre machine Ubuntu se synchronise parfaitement avec le contrôleur Active Directory, vous ne pouvez pas compter sur une source de synchronisation externe. Donc, ce que vous devez faire, c'est configurer votre machine Ubuntu pour utiliser le contrôleur Active Directory comme serveur NTP. Vous pouvez accomplir cette tâche en installant et en configurant un service tel que NTP ou Chrony.

Note: Avant, nous pouvons continuer à l'étape suivante pour ajouter notre client du système Ubuntu au domaine Active Directory, testez la connectivité réseau entre eux. Nous pouvons le faire en pingant le nom de domaine et le nom DNS Active Directory:

$ ping myCompany.local
$ ping win-2rifamt88gr.mon entreprise.local

Avoir un DNS et une résolution de nom d'hôte fiables est crucial.

Installation du package REALMD

Maintenant, nous installons le package REALMD et déterminons si nous faisons déjà partie du domaine Active Directory. Nous ne devrions pas avoir d'adhésion au domaine car REALMD n'a pas été installée auparavant:

$ sudo apt install roomd

Maintenant, exécutez la commande suivante:

$ REALM LISTE

Ici, un résultat vide indique que l'hôte n'est pas encore lié au service de domaine Active Directory.

Découvrir le domaine

En continuant, nous découvrons maintenant notre domaine cible en utilisant la commande suivante:

$ royaume découvrir macompany.local

Remplacez macompany.local avec votre nom de domaine. La sortie doit être quelque chose comme ce qui suit:

MON ENTREPRISE.LOCAL
Type: Kerberos
Royaume-Nom: MyCompany.LOCAL
nom de domaine: myCompany.local
configuré: membre de Kerberos
serveur-logiciel: directeur actif
Software du client: SSSD
Package requis: SSSD-Tools
Package requis: SSSD
Package requis: libnss-SSS
Package requis: libpam-sss
Package requis: Adcli
Package requis: Samba-Common-bin
Login-formats:% u @ myCompany.local
Police de connexion: Autoriser-REALM-Logins

Notamment, la sortie spécifie les packages requis pour rejoindre le domaine. Cela vérifie également les packages les plus appropriés à installer avec SSSD.

Installation des packages et rejoindre le domaine

Installons les packages précédents:

$ sudo apt installer sssd sssd-tools libnsss-sss libpam-sss adcli samba-commimon-bin

Maintenant, pour rejoindre le domaine AD (Active Directory) et configurer le SSSD, nous utilisons à nouveau la commande Realm:

$ sudo royaume rejoignez moncompany.local

Entrez le mot de passe de l'administrateur lorsque vous avez invité. Vous pouvez également spécifier un autre compte en utilisant le drapeau -u:

Si vous exécutez à nouveau la commande de la liste des domaines, vous verrez la sortie comme suit:

Nous n'avons pas besoin de toucher la configuration SSSD car cela est déjà géré par l'outil de royaume.

Création du répertoire domestique

Une chose que nous devons faire nous-mêmes est de définir le répertoire domestique pour que les utilisateurs d'annonces puissent se connecter à notre machine client. Cela peut être fait avec la commande suivante:

$ sudo pam-uut-update - Mkhomedir

De même, nous pouvons récupérer les détails de ces utilisateurs d'annonces à l'aide de la commande suivante:

$ GETENT PASSWD Administrateur @ MyCompany.local

Nous pouvons également spécifier les autres utilisateurs avec leur nom complet. Par exemple:

$ Getent passwd Linuxhint @ MyCompany.local

Connexion avec les comptes des utilisateurs d'annonces

Enfin, nous pouvons nous connecter avec le compte des utilisateurs d'annonces:

$ sudo connexion

Cela vous demande de saisir les détails de l'utilisateur de l'annonce: leur nom d'utilisateur et leurs mots de passe. Lorsque vous vous connectez avec succès, vous verrez l'écran suivant:

Notamment, le répertoire domestique est automatiquement créé ici:

Conclusion

Nous avons maintenant appris à ajouter un client hôte Linux à un serveur Windows. On peut bénéficier des avantages des deux systèmes en intégrant Linux à un domaine Active Directory existant. Si vous avez plus de cinq systèmes, envisagez de les gérer avec un service d'annuaire.