Joindre une machine virtuelle SUSE Linux Enterprise à un domaine managé Microsoft Entra Domain Services
Pour permettre aux utilisateurs de se connecter aux machines virtuelles (VM) dans Azure à l’aide d’un seul ensemble d’informations d’identification, vous pouvez joindre des machines virtuelles à un domaine managé Microsoft Entra Domain Services. Quand vous joignez une machine virtuelle à un domaine managé Domain Services, les comptes d’utilisateurs et les informations d’identification du domaine peuvent être utilisés pour se connecter aux serveurs et les gérer. Les appartenances aux groupes du domaine managé sont également appliquées pour vous permettre de contrôler l’accès aux fichiers ou aux services sur la machine virtuelle.
Cet article montre comment joindre une machine virtuelle SUSE Linux Enterprise (SLE) à un domaine managé.
Prérequis
Pour effectuer ce tutoriel, vous avez besoin des ressources et des privilèges suivants :
- Un abonnement Azure actif.
- Si vous n’avez pas d’abonnement Azure, créez un compte.
- Un client Microsoft Entra associé à votre abonnement, soit synchronisé avec un annuaire sur site, soit avec un annuaire cloud uniquement.
- Si nécessaire, créez un client Microsoft Entra ou associez un abonnement Azure à votre compte.
- Un domaine géré Microsoft Entra Domain Services activé et configuré dans votre client Microsoft Entra.
- Si nécessaire, le premier tutoriel crée et configure un domaine managé Microsoft Entra Domain Services.
- Un compte d’utilisateur membre du domaine managé.
- Des noms de machine virtuelle Linux uniques d’un maximum de 15 caractères pour éviter les noms tronqués susceptibles de générer des conflits dans Active Directory.
Créer une machine virtuelle Linux SLE et s’y connecter
Si vous disposez d’une machine virtuelle Linux SLE dans Azure, connectez-vous-y en utilisant SSH, puis passez à l’étape suivante pour commencer à configurer la machine virtuelle.
Si vous avez besoin de créer une machine virtuelle Linux SLE ou si vous souhaitez créer une machine virtuelle de test dans le cadre de cet article, vous pouvez employer l’une des méthodes suivantes :
Au moment de créer la machine virtuelle, faites attention aux paramètres de réseau virtuel et veillez à ce que la machine virtuelle puisse communiquer avec le domaine managé :
- Déployez la machine virtuelle sur le même réseau virtuel ou sur un réseau appairé dans lequel vous avez activé Microsoft Entra Domain Services.
- Déployez la machine virtuelle dans un sous-réseau différent de celui de votre domaine managé Microsoft Entra Domain Services.
Une fois la machine virtuelle déployée, suivez les étapes pour vous connecter à la machine virtuelle avec SSH.
Configurer le fichier hosts
Pour que le nom d’hôte de la machine virtuelle soit correctement configuré pour le domaine managé, modifiez le fichier /etc/hosts et définissez le nom d’hôte :
sudo vi /etc/hosts
Dans le fichier hosts, mettez à jour l’adresse localhost. Dans l’exemple suivant :
- aaddscontoso.com est le nom de domaine DNS de votre domaine managé.
- linux-q2gr est le nom d’hôte de votre machine virtuelle SLE que vous joignez au domaine managé.
Mettez à jour ces noms avec vos propres valeurs :
127.0.0.1 linux-q2gr linux-q2gr.aaddscontoso.com
Quand vous avez terminé, enregistrez et quittez le fichier hosts à l’aide de la commande :wq
de l’éditeur.
Joindre la machine virtuelle au domaine managé en utilisant SSSD
Pour joindre le domaine managé à l’aide de SSSD et du module User Logon Management de YaST, procédez comme suit :
Installez le module YaST User Logon Management :
sudo zypper install yast2-auth-client
Ouvrez YaST.
Pour utiliser la découverte automatique DNS ultérieurement, configurez les adresses IP de domaine managé (Active Directory server) en tant que serveur de nom pour votre client.
Dans YaST, sélectionnez System > Network Settings.
Sélectionnez l’onglet Hostname/DNS, puis entrez la ou les adresses IP du domaine managé dans la zone de texte Name Server 1. Ces adresses IP sont affichées dans la fenêtre Propriétés du centre d’administration Microsoft Entra pour votre domaine managé, par exemple 10.0.2.4 et 10.0.2.5.
Ajoutez vos propres adresses IP de domaine managé, puis sélectionnez OK.
Dans la fenêtre principale de YaST, choisissez Network Services>User Logon Management.
Le module s’ouvre avec une vue d’ensemble montrant les différentes propriétés réseau de votre ordinateur et la méthode d’authentification actuellement utilisée, comme le montre l’exemple de capture d’écran suivant :
Pour commencer la modification, sélectionnez Change Settings.
Pour joindre une machine virtuelle à un domaine managé, procédez comme suit :
Dans la boîte de dialogue, sélectionnez Add Domain.
Spécifiez le nom de domaine (Domain name) correct, par exemple aaddscontoso.com, puis spécifiez les services à utiliser pour les données d’identité et l’authentification. Sélectionnez Microsoft Active Directory pour les deux.
Assurez-vous que l’option Enable the domain est sélectionnée.
Lorsque vous êtes prêt, sélectionnez OK.
Acceptez les paramètres par défaut dans la boîte de dialogue suivante, puis sélectionnez OK.
La machine virtuelle installe des logiciels supplémentaires le cas échéant, puis vérifie si le domaine managé est disponible.
Si tout est correct, la boîte de dialogue suivante s’affiche pour indiquer que la machine virtuelle a découvert le domaine managé, mais que vous n’êtes pas encore inscrit (Not yet enrolled).
Dans la boîte de dialogue, spécifiez le nom d’utilisateur (Username) et le mot de passe (Password) d’un utilisateur qui fait partie du domaine managé. Si nécessaire, ajoutez un compte d’utilisateur à un groupe dans Microsoft Entra ID.
Pour vous assurer que le domaine actuel est activé pour Samba, activez l’option Overwrite Samba configuration to work with this AD.
Pour vous inscrire, sélectionnez OK.
Un message s’affiche pour confirmer que vous êtes correctement inscrit. Pour terminer, sélectionnez OK.
Une fois la machine virtuelle inscrite dans le domaine managé, configurez le client en utilisant Manage Domain User Logon, comme illustré dans la capture d’écran suivante :
Pour autoriser les connexions à l’aide des données fournies par le domaine managé, cochez la case de l’option Allow Domain User Logon.
Si vous le souhaitez, sous Enable domain data source, cochez les sources de données supplémentaires nécessaires pour votre environnement. Ces options incluent les utilisateurs autorisés à utiliser sudo ou les lecteurs réseau disponibles.
Pour permettre aux utilisateurs du domaine managé d’avoir des répertoires de base sur la machine virtuelle, cochez la case de l’option Create Home Directories.
Dans la barre latérale, sélectionnez Service Options › Nom à changer, puis Extended Options. Dans cette fenêtre, sélectionnez fallback_homedir ou override_homedir, puis sélectionnez Add.
Spécifiez une valeur pour l’emplacement du répertoire de base. Pour que les répertoires de base respectent le format /home/USER_NAME, utilisez /home/%u. Pour plus d’informations sur les variables possibles, consultez la page man sssd.conf (
man 5 sssd.conf
), section override_homedir.Sélectionnez OK.
Pour enregistrer les modifications, sélectionnez OK. Vérifiez ensuite que les valeurs affichées sont désormais correctes. Pour quitter la boîte de dialogue, sélectionnez Cancel.
Si vous avez l’intention d’exécuter simultanément SSSD et Winbind (par exemple, lors de la jointure via SSSD, mais en exécutant un serveur de fichiers Samba), l’option Samba kerberos method doit être définie sur secrets and keytab dans smb.conf. L’option SSSD ad_update_samba_machine_account_password doit également être définie sur true dans sssd.conf. Ces options empêchent le keytab système de se désynchroniser.
Joindre la machine virtuelle au domaine managé en utilisant Winbind
Pour joindre le domaine managé à l’aide de Winbind et du module Windows Domain Membership de YaST, procédez comme suit :
Dans YaST, sélectionnez Network Services > Windows Domain Membership.
Entrez le domaine à joindre dans Domain or Workgroup dans l’écran Windows Domain Membership. Entrez le nom de domaine managé, par exemple aaddscontoso.com.
Afin d’utiliser la source SMB pour l’authentification Linux, activez l’option Use SMB Information for Linux Authentication.
Pour créer automatiquement un répertoire de base local pour les utilisateurs de domaine managé sur la machine virtuelle, activez l’option Create Home Directory on Login.
Activez l’option Offline Authentication pour permettre aux utilisateurs du domaine de se connecter même si le domaine managé est temporairement indisponible.
Si vous souhaitez modifier les plages UID et GID pour les utilisateurs et groupes Samba, sélectionnez Expert Settings.
Configurez la synchronisation de l’heure NTP (Network Time Protocol) pour votre domaine managé en sélectionnant NTP Configuration. Entrez les adresses IP du domaine managé. Ces adresses IP sont affichées dans la fenêtre Propriétés du centre d’administration Microsoft Entra pour votre domaine managé, par exemple 10.0.2.4 et 10.0.2.5.
Sélectionnez OK et confirmez la jonction de domaine lorsque vous y êtes invité.
Indiquez le mot de passe d’un administrateur du domaine managé, puis sélectionnez OK.
Une fois que vous avez joint le domaine managé, vous pouvez vous y connecter à partir de votre station de travail à l’aide du gestionnaire d’affichage de votre bureau ou de la console.
Joindre la machine virtuelle au domaine managé à l’aide de Winbind à partir de l’interface de ligne de commande YaST
Pour joindre le domaine managé à l’aide de winbind et de l’interface de ligne de commande YaST :
Joindre le domaine :
sudo yast samba-client joindomain domain=aaddscontoso.com user=<admin> password=<admin password> machine=<(optional) machine account>
Joindre la machine virtuelle au domaine managé à l’aide de Winbind à partir du terminal
Pour joindre le domaine managé à l’aide de Winbind et de l’interface de ligne de commande samba net
:
Installez le client Kerberos et samba-winbind :
sudo zypper in krb5-client samba-winbind
Modifiez les fichiers de configuration :
/etc/samba/smb.conf
[global] workgroup = AADDSCONTOSO usershare allow guests = NO #disallow guests from sharing idmap config * : backend = tdb idmap config * : range = 1000000-1999999 idmap config AADDSCONTOSO : backend = rid idmap config AADDSCONTOSO : range = 5000000-5999999 kerberos method = secrets and keytab realm = AADDSCONTOSO.COM security = ADS template homedir = /home/%D/%U template shell = /bin/bash winbind offline logon = yes winbind refresh tickets = yes
/etc/krb5.conf
[libdefaults] default_realm = AADDSCONTOSO.COM clockskew = 300 [realms] AADDSCONTOSO.COM = { kdc = PDC.AADDSCONTOSO.COM default_domain = AADDSCONTOSO.COM admin_server = PDC.AADDSCONTOSO.COM } [domain_realm] .aaddscontoso.com = AADDSCONTOSO.COM [appdefaults] pam = { ticket_lifetime = 1d renew_lifetime = 1d forwardable = true proxiable = false minimum_uid = 1 }
/etc/security/pam_winbind.conf
[global] cached_login = yes krb5_auth = yes krb5_ccache_type = FILE warn_pwd_expire = 14
/etc/nsswitch.conf
passwd: compat winbind group: compat winbind
Vérifiez que la date et l’heure dans Microsoft Entra ID et Linux sont synchronisées. Pour ce faire, vous pouvez ajouter le serveur Microsoft Entra au service NTP :
Ajoutez la ligne suivante à
/etc/ntp.conf
:server aaddscontoso.com
Redémarrez le service NTP :
sudo systemctl restart ntpd
Joignez le domaine :
sudo net ads join -U Administrator%Mypassword
Activez winbind comme source de connexion dans les modules PAM (Pluggable Authentication Modules) Linux :
config pam-config --add --winbind
Activez la création automatique des répertoires de démarrage afin que les utilisateurs puissent se connecter :
sudo pam-config -a --mkhomedir
Démarrez et activez le service Winbind :
sudo systemctl enable winbind sudo systemctl start winbind
Autoriser l’authentification par mot de passe pour SSH
Par défaut, les utilisateurs ne peuvent se connecter à une machine virtuelle qu’avec l’authentification par clé publique SSH. L’authentification par mot de passe échoue. Quand vous joignez la machine virtuelle à un domaine managé, ces comptes de domaine doivent utiliser l’authentification par mot de passe. Mettez à jour la configuration SSH pour autoriser l’authentification par mot de passe comme suit.
Ouvrez le fichier sshd_conf avec un éditeur :
sudo vi /etc/ssh/sshd_config
Mettez à jour la ligne pour PasswordAuthentication sur yes :
PasswordAuthentication yes
Quand vous avez terminé, enregistrez et quittez le fichier sshd_conf à l’aide de la commande
:wq
de l’éditeur.Pour appliquer les modifications et permettre aux utilisateurs de se connecter à l’aide d’un mot de passe, redémarrez le service SSH :
sudo systemctl restart sshd
Accorder les privilèges sudo au groupe « Administrateurs du contrôleur de domaine AAD »
Pour accorder des privilèges administratifs aux membres du groupe AAD DC Administrators sur la machine virtuelle SLE, ajoutez une entrée au fichier /etc/sudoers. Une fois ajoutés, les membres du groupe AAD DC Administrators peuvent utiliser la commande sudo
sur la machine virtuelle SLE.
Ouvrez le fichier sudoers pour le modifier :
sudo visudo
Ajoutez l’entrée suivante à la fin du fichier /etc/sudoers. Étant donné que le nom de groupe Administrateurs du contrôleur de domaine AAD contient un espace, incluez-y une barre oblique inverse en guise de caractère d’échappement. Ajoutez votre propre nom de domaine, par exemple aaddscontoso.com :
# Add 'AAD DC Administrators' group members as admins. %AAD\ DC\ Administrators@aaddscontoso.com ALL=(ALL) NOPASSWD:ALL
Quand vous avez terminé, enregistrez et quittez l’éditeur à l’aide de la commande
:wq
de l’éditeur.
Se connecter à la machine virtuelle à l’aide d’un compte de domaine
Pour vérifier que la machine virtuelle a bien été jointe au domaine managé, démarrez une nouvelle connexion SSH en utilisant un compte d’utilisateur du domaine. Vérifiez qu’un répertoire de base a été créé et que l’appartenance au groupe du domaine est appliquée.
Créez une connexion SSH à partir de votre console. Utilisez un compte de domaine qui appartient au domaine managé à l’aide de la commande
ssh -l
, par exemplecontosoadmin@aaddscontoso.com
, puis entrez l’adresse de votre machine virtuelle, par exemple linux-q2gr.aaddscontoso.com. Si vous utilisez Azure Cloud Shell, utilisez l’adresse IP publique de la machine virtuelle plutôt que le nom DNS interne.sudo ssh -l contosoadmin@AADDSCONTOSO.com linux-q2gr.aaddscontoso.com
Une fois connecté à la machine virtuelle, vérifiez que le répertoire de base a bien été initialisé :
sudo pwd
Vous devez vous trouver dans le répertoire de base /home et votre propre répertoire doit correspondre au compte d’utilisateur.
Vérifiez maintenant que les appartenances aux groupes sont correctement résolues :
sudo id
Vos appartenances aux groupes du domaine managé doivent s’afficher.
Si vous vous êtes connecté à la machine virtuelle en tant que membre du groupe Administrateurs AAD DC, vérifiez que vous pouvez bien utiliser la commande
sudo
:sudo zypper update
Étapes suivantes
Si vous avez des difficultés à connecter la machine virtuelle au domaine managé ou à vous connecter avec un compte de domaine, consultez Résoudre les problèmes de jonction à un domaine.