Active Directory : Différence entre versions
(→Intégration d'un serveur Linux à l'AD) |
|||
| Ligne 102 : | Ligne 102 : | ||
</pre> | </pre> | ||
| − | Un redémarrage est nécessaire après cette | + | '''Un redémarrage est nécessaire après cette modification.''' |
* Modifier la configuration du serveur SSH dans avec le fichier {{ File | /etc/ssh/sshd_config }} en activant les 3 variable suivante: | * Modifier la configuration du serveur SSH dans avec le fichier {{ File | /etc/ssh/sshd_config }} en activant les 3 variable suivante: | ||
Version du 27 juin 2017 à 11:14
Interaction
Intégration d'un serveur Linux à l'AD
Configuration du système avant intégration
On va d'abord mettre à jour le système
S'assurer d'avoir une connexion SSH en root car nous allons désactiver les autres sources d'authentifications s'il y en a déjà configurées.
- Modifier le fichier /etc/hosts pour que le nom de la machine correspondent au nom du domaine à rejoindre.
127.0.1.1 yourmachine.domain.be yourmachine
Modifier les informations pour qu'elles correspondent à votre nom de machine et de domaine
- Au besoin, modifier le fichier /etc/nsswitch.conf pour retirer toutes occurrences de connexion ldap
- S'assurer que le dns pointe sur le serveur AD en modifiant au besoin le fichier /etc/resolv.conf
domain domain.be search domain.be nameserver IP-AD
Installation des paquets nécessaire à l'intégration
Pour installer et configurer les différents paquets nécessaire à l'authentification des utilisateurs avec notre AD, nous allons nous aider du script suivant :
#!/bin/bash
# This script should join Debian Jessie (8) to an Active Directory domain.
echo "Please authenticate with your sudo password"
sudo -v
if ! $(sudo which realmd 2>/dev/null); then
sudo apt install krb5-user adcli packagekit realmd -y
fi
if ! $(sudo which ntpd 2>/dev/null); then
sudo apt install ntp -y
fi
sudo mkdir -p /var/lib/samba/private
echo "Please enter the domain you wish to join: "
read DOMAIN
echo "Please enter a domain admin login to use: "
read ADMIN
sudo realm join --user=$ADMIN $DOMAIN
if [ $? -ne 0 ]; then
echo "AD join failed. Please run 'journalctl -xn' to determine why."
exit 1
fi
sudo systemctl enable sssd
sudo systemctl start sssd
echo "session required pam_mkhomedir.so skel=/etc/skel/ umask=0022" | sudo tee -a /etc/pam.d/common-session
# configure sudo
sudo apt install libsss-sudo -y
echo "%domain\ admins@$DOMAIN ALL=(ALL) ALL" | sudo tee -a /etc/sudoers.d/domain_admins
echo "The computer is joined to the domain. Please reboot, ensure that you are connected to the network, and you should be able to login with domain credentials."Lors de l’exécution du script, en plus de l'installation des paquets, il sera demandé de renseigné les informations suivantes :
- Le nom de domaine (ex: yourdomain.be)
- Le login de l'administrateur du domaine (ex: Administrator)
- Le mot de passe de l'administrateur du domaine
Une fois le script terminé, nous allons pouvoir passer à la configuration.
Configuration
Pour autoriser l'authentification des utilisateurs via notre AD, nous allons devoir modifier différents fichiers
- Le fichier /etc/sssd/sssd.conf avec la ligne suivants :
use_fully_qualified_names = False
Un redémarrage est nécessaire après cette modification.
- Modifier la configuration du serveur SSH dans avec le fichier /etc/ssh/sshd_config en activant les 3 variable suivante:
# Kerberos options KerberosAuthentication yes # GSSAPI options GSSAPIAuthentication yes GSSAPICleanupCredentials yes
Redémarrer le service SSH
Vérification
Pour vérifier le bon fonctionnement, nous allons pouvoir réaliser différents test
- Vérifier que le serveur linux arrive à retrouver les informations d'un utilisateur dans l'AD
user:*:47401107:47400513:FirstName Name:/home/domain.be/user:/bin/bash
- Vérifier la création de la home directory
Création du répertoire « /home/domain.be/user »
- Pour terminer, vérifier si vous arrivez à vous connecter en SSH avec l'utilisateur AD
