aurelien@aschnoebelen.fr:~/blog $

aurelien@aschnoebelen.fr: ~ $ cat ./articles/ajouter-debian-a-un-domaine-active-directory/

· 3 min de lecture · #active-directory #debian #linux #windows · dir: Linux dir: Sysadmin

Ajouter Debian à un domaine Active Directory

Guide pas à pas pour joindre une machine Debian à un domaine Active Directory avec realmd, SSSD et PAM.

Avant toute chose, vérifiez que les DNS de votre système sont bien configurés vers celui de votre contrôleur de domaine. Comme pour une machine Windows, il est nécessaire que cela soit correctement configuré pour pouvoir joindre votre domaine. Vous pouvez le vérifier avec un nslookup votredomaine.local.

Dans le cas où ce n’est pas fonctionnel, vous pouvez configurer la carte réseau de votre machine en modifiant /etc/network/interfaces. Exemple de ma configuration pour une interface portant le nom ens18 :

/etc/network/interfaces ini
iface ens18 inet static
        address 192.168.1.10/24
        gateway 192.168.1.254
        dns-nameservers 192.168.1.11 192.168.1.12
        dns-search aurelien.local

Puis redémarrez le service réseau :

Terminal bash
sudo systemctl restart networking.service

Installez ensuite les dépendances nécessaires :

Terminal bash
sudo apt install realmd sssd sssd-tools libnss-sss libpam-sss adcli samba-common-bin oddjob oddjob-mkhomedir packagekit

Joindre le domaine

Testez la disponibilité de votre domaine avec la commande suivante :

Terminal bash
sudo realm discover votredomaine.local

Capture d’écran du realm discover

Pour joindre votre machine à votre domaine, tapez la commande suivante :

Terminal bash
sudo realm join -v --user=Administrateur votredomaine.local

S’il n’y a pas d’erreur, vous pouvez déplacer la machine dans la bonne OU sur votre DC.

Configuration

Désactiver le FQDN

Je préfère configurer SSSD pour éviter d’utiliser les extensions en @votredomaine.local. Si vous décidez de le garder, pour la suite de la configuration, pensez à toujours rajouter @votredomaine.local pour les noms de groupes et pour les utilisateurs.

Terminal bash
sudo nano /etc/sssd/sssd.conf

Et modifiez les lignes :

/etc/sssd/sssd.conf ini
fallback_homedir = /home/%u@%d
use_fully_qualified_names = True

par :

/etc/sssd/sssd.conf ini
fallback_homedir = /home/%u
use_fully_qualified_names = False

Puis redémarrez le service sssd :

Terminal bash
sudo systemctl restart sssd

Automatiser la création du répertoire dans /home

Lancez l’utilitaire pam-auth-update et sélectionnez “Create home directory on login

Terminal bash
sudo pam-auth-update

Capture d’écran de pam_auth-update

Sécuriser l’installation

Pour autoriser un groupe à se connecter, utilisez la commande :

Terminal bash
sudo realm permit -g VotreGroupe

Je vous laisse consulter l’aide de la commande realm pour affiner votre configuration. Pour ajouter plusieurs groupes, vous pouvez taper la commande plusieurs fois. Pour supprimer un groupe, éditez le fichier /etc/sssd/sssd.conf.

Pour autoriser un groupe à utiliser sudo, tapez la commande suivante pour éditer la configuration :

Terminal bash
sudo visudo

Et ajoutez la ligne suivante à votre configuration, sous la ligne %sudo :

/etc/sudoers text
%votregroupe  ALL=(ALL:ALL) ALL

Attention, si vous n’avez pas désactivé le FQDN, pensez à mettre le groupe entre guillemets comme ceci :

/etc/sudoers text
"%votregroupe@votredomaine.local"  ALL=(ALL:ALL) ALL

Connexion

Vous pouvez tester le bon fonctionnement de votre configuration en tapant :

Terminal bash
id utilisateur                       # Pour une config sans FQDN
id utilisateur@votredomaine.local   # Pour une config par défaut avec le fqdn

Si tout est correct, vous devriez avoir la liste des groupes de l’utilisateur. Testez une connexion :

Terminal bash
su - utilisateur

Tapez votre mot de passe, et vous devriez être connecté !

Pour aller plus loin

Vous pouvez consulter les sites suivants pour plus de détails + configuration graphique :