Pour prendre en charge True SSO sur des postes de travail Ubuntu/Debian, vous pouvez intégrer la machine virtuelle (VM) de base à un domaine Active Directory (AD) à l'aide des solutions Samba et Winbind.
Remarque : vous pouvez également configurer True SSO à l'aide de la solution de jonction de domaine SSSD, comme décrit dans la section Configurer True SSO avec SSSD sur des postes de travail Ubuntu/Debian.
Pour intégrer une VM Ubuntu/Debian à un domaine AD à l'aide de Samba et Winbind, utilisez la procédure suivante.
Certains exemples de la procédure utilisent des valeurs d'espace réservé pour représenter des entités dans votre configuration réseau, telles que le nom d'hôte de votre VM. Remplacez les valeurs d'espace réservé par des informations spécifiques à votre configuration, comme décrit dans le tableau suivant.
| Valeur d'espace réservé | Description |
|---|---|
| dns_IP_ADDRESS | Adresse IP de votre serveur de nom DNS |
| mydomain.com | Nom DNS de votre domaine AD |
| MYDOMAIN.COM | Nom DNS de votre domaine AD en majuscules |
| myhost | Nom d'hôte de votre VM Ubuntu/Debian |
| MYDOMAIN | Nom DNS du groupe de travail ou domaine NT qui inclut votre serveur Samba, en majuscules |
| ads-hostname | Nom d'hôte de votre serveur AD |
| admin-user | Nom d'utilisateur de l'administrateur de domaine AD |
Conditions préalables
Vérifiez les points suivants :
- Le serveur AD peut être résolu par DNS sur la VM.
- Le protocole NTP (Network Time Protocol) est configuré sur la VM.
Procédure
-
Sur la VM Ubuntu/Debian, installez les modules
sambaetwinbind.sudo apt install samba krb5-config krb5-user winbind libpam-winbind libnss-winbind -
Configurez les paramètres d'authentification Kerberos.
-
Si la fenêtre des paramètres d'authentification Kerberos ne s'affiche pas sur le système, exécutez la commande suivante pour l'afficher.
sudo dpkg-reconfigure krb5-config -
Pour Default Kerberos version 5 realm, entrez le nom DNS de votre domaine AD en majuscules.
Par exemple, si votre nom de domaine AD est
mydomain.com, entrezMYDOMAIN.COM. -
Pour Kerberos servers for your realm, entrez le nom d'hôte de votre serveur AD (représenté par
ads_hostnamedans les exemples de cette procédure). -
Pour Administrative server for your Kerberos realm, entrez à nouveau le nom d'hôte de votre serveur AD.
-
-
Mettez à jour la configuration PAM.
-
Ouvrez la page de configuration PAM.
pam-auth-update -
Sélectionnez Create home directory on login, puis OK.
-
-
Modifiez le fichier de configuration
/etc/nsswitch.conf, comme indiqué dans l'exemple suivant.passwd: compat winbind group: compat winbind shadow: compat gshadow: files -
Si le système détecte automatiquement le serveur DNS approprié, ignorez cette étape et passez à l'étape suivante. Si le système ne parvient pas à détecter le serveur DNS approprié, effectuez cette étape pour définir le serveur DNS manuellement.
Pour vous assurer que le fichier généré automatiquement
resolv.conffait référence à votre domaine AD en tant que domaine de recherche, modifiez les paramètres de NetworkManager pour la connexion à votre système. Les sous-étapes suivantes fournissent les exemples d'instructions pour un système Ubuntu 20.04.-
Ouvrez le panneau de configuration NetworkManager et accédez à Paramètres IPv4 pour la connexion à votre système. Pour Méthode, sélectionnez Adresses automatiques (DHCP) uniquement. Dans la zone de texte Serveurs DNS, entrez l'adresse IP de votre serveur de nom DNS (représenté par
dns_IP_ADDRESSdans les exemples de cette procédure). Cliquez ensuite sur Enregistrer. -
Modifiez le fichier
/etc/dhcp/dhclient.conf, comme indiqué dans l'exemple suivant.supersede domain-name "mydomain.com"; prepend domain-name-servers dns_IP_ADDRESS; -
Modifiez le fichier
/etc/systemd/resolved.conf, comme indiqué dans l'exemple suivant.DNS=dns_IP_ADDRESS Domains="mydomain.com"Remarque : un nouvel adaptateur réseau virtuel est ajouté lors de la création d'un poste de travail virtuel Instant Clone. Lorsque vous ajoutez l'adaptateur réseau à un poste de travail virtuel cloné, le modèle de poste de travail virtuel efface les paramètres de l'adaptateur réseau, tels que le serveur DNS. Pour conserver le paramètre de serveur DNS lors de l'ajout d'un nouvel adaptateur réseau, vous devez indiquer un serveur DNS pour la VM.
-
Spécifiez le serveur DNS en modifiant le fichier de configuration
/etc/resolv.conf, comme indiqué dans l'exemple suivant. Si un avertissement s'affiche, vous pouvez ignorer et poursuivre les modifications.nameserver dns_IP_ADDRESS search mydomain.com -
Redémarrez la VM et reconnectez-vous.
-
-
Modifiez le fichier de configuration
/etc/hosts, comme indiqué dans l'exemple suivant.127.0.0.1 localhost 127.0.1.1 myhost.mydomain.com myhost -
Modifiez le fichier de configuration
/etc/samba/smb.conf, comme indiqué dans l'exemple suivant.[global] security = ads realm = MYDOMAIN.COM workgroup = MYDOMAIN idmap uid = 10000-20000 idmap gid = 10000-20000 winbind enum users = yes winbind enum groups = yes template homedir = /home/%D/%U template shell = /bin/bash client use spnego = yes client ntlmv2 auth = yes encrypt passwords = yes winbind use default domain = yes restrict anonymous = 2 kerberos method = secrets and keytab winbind refresh tickets = true -
Redémarrez le service
smbd.sudo systemctl restart smbd.service -
Modifiez le fichier de configuration
/etc/krb5.confafin que son contenu soit semblable à l'exemple suivant.[libdefaults] default_realm = MYDOMAIN.COM dns_lookup_realm = true dns_lookup_kdc = true [realms] MYDOMAIN.COM = { kdc = ads-hostname admin_server = ads-hostname } [domain_realm] .mydomain.com = MYDOMAIN.COM mydomain.com = MYDOMAIN.COM -
Joignez la VM Ubuntu/Debian au domaine AD.
-
Initiez un ticket Kerberos.
sudo kinit admin-userLorsque vous y êtes invité, entrez votre mot de passe administrateur.
-
Vérifiez que le ticket a bien été créé.
sudo klistCette commande renvoie des informations sur le ticket, y compris son heure de début et son délai d'expiration valides.
-
Créez un fichier keytab Kerberos.
sudo net ads keytab create -U admin-user -
Joignez le domaine AD.
sudo net ads join -U admin-user
-
-
Redémarrez et vérifiez le service Winbind.
-
Redémarrez le service Winbind.
sudo systemctl restart winbind.service -
Pour vérifier le service Winbind, exécutez les commandes suivantes et vérifiez qu'elles renvoient le résultat correct.
sudo wbinfo -usudo wbinfo -gsudo getent passwdsudo getent group
-
-
Redémarrez la VM et reconnectez-vous.
Étape suivante
Configurer True SSO avec Samba sur des postes de travail Ubuntu/Debian
Cette page vous a-t-elle été utile ?