📋 Rejoindre un AD


> Tips pour faire rejoindre un ordinateur / vm sous linux à un contrôleur de domaine
> Contents

Intégration à l’AD

DNS sur la machine linux : IP du controleur de domaine

Modifier le HOSTNAME si nécessaires :

bash
sudo hostnamectl set-hostname INSERERNOM
  • Vérifier si l’ordinateur arrive bien à contacter le contrôleur de domaine avec un ping
  • Mettre à jours les paquets de la machine avec apt update
  • Installer les paquets pour l’AD:
code
sudo apt -y install realmd libnss-sss libpam-sss sssd sssd-tools adcli samba-common-bin oddjob oddjob-mkhomedir packagekit
  • Vérifier si la machine arrive bien à contacté le domaine :
code
sudo realm discover FSEC.LAN
  • Créer un fichier dans /etc/krb5.conf et inclure :
code
[libdefaults]
    default_realm = FSEC.LAN
    dns_lookup_realm = true
    dns_lookup_kdc = true

    permitted_enctypes = aes256-cts-hmac-sha1-96 aes128-cts-hmac-sha1-96
    default_tkt_enctypes = aes256-cts-hmac-sha1-96 aes128-cts-hmac-sha1-96
    default_tgs_enctypes = aes256-cts-hmac-sha1-96 aes128-cts-hmac-sha1-96
  • Si nécessaire nettoyer :
code
sudo rm -f /etc/krb5.keytab
sudo systemctl stop sssd 2>/dev/null
sudo rm -rf /var/lib/sss/db/*
  • Rejoindre le domaine et mettre le mot de passe administrateur du domaine :
code
sudo realm join -U Administrateur fsec.lan
  • Pour tester si l’intégration à bien été effectuer :
code
# Identifier un user un valide
id usersAD@domain.lan

Création de répertoire automatique

  • Création automatique
code
sudo bash -c "cat > /usr/share/pam-configs/mkhomedir" <<EOF
Name: activate mkhomedir
Default: yes
Priority: 900
Session-Type: Additional
Session:
        required                        pam_mkhomedir.so umask=0022 skel=/etc/skel
EOF
  • pam Configuration : tout valider (sauf sss requiered)
code
sudo pam-auth-update
  • Inserer la commande suivant pour ajouter un contenu dans le fichier : /etc/pam.d/common-session
bash
session optional pam_mkhomedir.so skel=/etc/skel umask=077
  • Connexion au CLI avec un users de l’AD
code
su - usersAD@domain.lan

Un nouveau répertoire à été créer dans HOME avec une connexion d’un utilisateur du domaine. Pour ce déconnecter, faire exit

  • Redémarrer la machine afin d’activer une intégration plus complète au domaine. (REBOOT)

Connection via GUI

En fonction des interfaces graphiques sous linux, pour ce connecter à un USERS de l’AD via l’interface graphique pour changer.

Ubuntu est la solution la plus adapté aujourd’hui pour une intégrations à l’active directory. Pour se connecté à un users du domaine cliquer sur : Absent de la liste sur l’écran de connexion.

> – **L’écran graphique LightDM** n’affiche que les comptes locaux par défaut.
  • GDM3 : le plus robuste pour AD (Ubuntu, Debian, RHEL l’utilisent pour ça)
  • Solution 1 : Changer d’interface :
> Pour une meilleure compatibilité avec Active Directory, il est recommandé d’utiliser une distribution qui intègre nativement GDM3. Pour les distributions reposant sur LightDM, il convient d’appliquer la solution 2 afin d’activer la connexion manuelle et permettre l’authentification d’utilisateurs supplémentaires.
Display Manager AD Friendly Stabilité Configuration Recommandé
GDM3 ⭐⭐⭐⭐⭐ ⭐⭐⭐⭐⭐ Simple Oui
LightDM ⭐⭐☆☆☆ ⭐⭐⭐☆☆ Moyenne Seulement si tu veux rester léger
SDDM ⭐⭐☆☆☆ ⭐⭐☆☆☆ Moyenne Non pour AD
LXDM ⭐☆☆☆☆ ⭐⭐☆☆☆ Faible Non
code
sudo apt install gdm3
sudo dpkg-reconfigure gdm3
sudo systemctl reboot
  • Solution 2 : Rester sur LightDM et activer l’option : « Others Users »

Modifier le fichier suivant : /etc/lightdm/lightdm.conf et ajouter ou modifier les lignes suivantes :

code
[Seat:*]
greeter-show-manual-login=true
> – **greeter-show-manual-login=true** :

Force l’affichage d’un champ de login manuel → indispensable pour les comptes AD.

  • greeter-hide-users=true :

Empêche LightDM de lister les comptes locaux → évite les confusions et accélère PAM.

  • Redémarrer les services :
code
sudo systemctl restart sssd
sudo systemctl restart lightdm

A partir de maintenant, on peux se connecter avec les comptes de l’AD dans linux.

Gestions des permissions

Autoriser l’accès à un groupe d’utilisateurs du domaine

code
sudo realm permit -g groupName

Ajouter plusieurs groupes d’utilisateurs

code
sudo realm permit 'Domain Users' 'admin users'

Autoriser la connexion de tous les utilisateurs du domaine (non recommandé) :

code
sudo realm permit --all

Desactiver la connexion de tous les utilisateurs :

code
sudo realm  deny --all

Pour changer les droits administration dans le système linux :

code
sudo nano /etc/sudoers.d/domain_admins
bash
# exemple :
nestor@coud.local        ALL=(ALL)       ALL
%groupName@example.com     ALL=(ALL)   ALL