Joindre une machine Debian/Ubuntu à un domaine Active Directory
Bonjour à tous ! Aujourd’hui un nouveau tutoriel sur l’ajout d’une machine Ubuntu dans un domaine Active Directory. Je pars du principe que votre domaine AD, est correctement configuré et fonctionnel. Et que vos machines peuvent se joindre mutuellement par le biais de la fameuse commande ping. Toutes les commandes ci-dessous seront exécutées par l’intermédiaire de l’utilisateur root.
Préambule
Voilà comment mon réseau est configuré pour cette démonstration.
- Domain controller : 192.168.145.128/24 domaine : coud.local, netbios : dc
- Machine linux : 192.168.145.141/24 hostname ubuntu-info
Afin d’éviter de rencontrer des erreurs bêtes, je vous invite à exécuter toutes les commandes préfixées avec sudo, ou si vous êtes flemmard, sous le pseudonyme root.
Sur votre machine Linux, il va falloir ajouter l’ip de votre domain controller en tant que serveur dns principal.
Ensuite, vous pouvez changer le nom de votre machine si vous le souhaité, mais cela n’est pas obligatoire. N’oubliez pas de redémarrer votre machine avant de poursuivre, pour que les modifications soient prises en compte.
sudo hostnamectl set-hostname ubuntu-info
# Optionelle
Installation des paquets requis et configuration
Nous allons commencer par exécuter quelques actions « Routinière »
Pinguez le contrôleur de domaine (étape bloquante)
ping dc.coud.local
Puis, mettez à jour les paquets de votre machine.
sudo apt update
Installez les différents paquets requis, pour l’ajout de la machine au domaine coud.local
sudo apt -y install realmd libnss-sss libpam-sss sssd sssd-tools adcli samba-common-bin oddjob oddjob-mkhomedir packagekit
sudo realm discover coud.local
sudo realm join -U administrator coud.local
sudo realm list
Ensuite copier coller, ce bloc de commande dans votre terminal. Il va nous permettre de créer automatiquement le dossier de l’utilisateur /home/ »user », lors de sa première connexion.
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
Appuyez sur la touche « entrer » après que le copier/coller de ce bloc dans votre terminal
sudo pam-auth-update
Cochez toutes les options
sudo systemctl restart sssd
sudo systemctl status sssd
Nous allons prendre un exemple avec trois utilisateurs de mon AD. hello, nestor et world. le premier et le dernier feront partie du groupe hw. Ce groupe disposera de privilège administrateur. (voir partie optionnelle)
Avant de continuer, nous allons vérifier que les utilisateurs sont bien reconnus par Ubuntu comme étant des utilisateurs du domaine coud.local
id [email protected]
id [email protected]
id [email protected]
Je vais autoriser seulement Nestor à se connecter à notre machine ubuntu.
sudo realm permit [email protected]
# Vérifier que son mdp n'est pas obsolète au cas ou.
Certaines fois, si vous êtes sur une VM, vous pouvez rencontrer un problème de rafraîchissement de l’IHM, dans ce cas la avant de vous connecter, veuillez redémarrer votre machine Ubuntu, avant de tester la connexion.
reboot # optionelle
Connectez-vous avec l’utilisateur que vous avez autorisé.
Puis entrer le mot de passe de cette utilisateur.
Vous voilà connectés à votre machine Ubuntu avec un compte présent dans votre domaine AD. 🙂
Pour les plus déterminés (Partie avancé)
Autoriser l’accès à un groupe d’utilisateurs du domaine
sudo realm permit -g groupName
Ajouter plusieurs groupes d’utilisateurs
sudo realm permit 'Domain Users' 'admin users'
Autoriser la connexion de tous les utilisateurs du domaine (non recommandé) :
sudo realm permit --all
Desactiver la connexion de tous les utilisateurs :
sudo realm deny --all
Configurer l’authentification avancé pour octroyer des droits sudo à un utilisateur membre du domaine
Nous devons créer le fichier suivant :
sudo nano /etc/sudoers.d/domain_admins
[email protected] ALL=(ALL) ALL
Rappel : Pour promouvoir un simple utilisateur. (Autoriser d’abord la connexion « Normal » avec : realm permit [email protected]
)
Promouvoir un groupe entier d’utilisateur.
%[email protected] ALL=(ALL) ALL
Rappel : pour promouvoir (Autoriser d’abord la connexion « Normal » avec : sudo realm permit -g groupName
)
Connexion SSH
ssh COUD\\world@localhost
# connexion ssh depuis le serveur ubuntu vers le serveur ubuntu en guise de test:)
# Coud = Netbios du domaine
# world = un utilisateur AD qui a été autorisé à se connecter en amont
Attention, si vous utilisez putty, depuis un ordinateur distant, mettez simplement un seul antislash \
Enfin, pour terminer, nous pouvons constater que dans la console Active directory users and computers votre objet ordinateur est bel est bien présent.
J’espère que vous êtes arrivé au bout du tutoriel sans trop de mal ^^
++
Geoffrey pour Le guide du sysops
En savoir plus sur Le Guide Du SecOps
Subscribe to get the latest posts sent to your email.