Active Directory

De DiouxX's Wiki
Révision datée du 21 juin 2017 à 13:26 par Ddevleeschauwer (discussion | contributions) (installation des package nécessaire à l'intégration)
Aller à : navigation, rechercher
Cette page regroupe un ensemble 'information sur l'installation,configuration, interaction avec l'Active Directory Windows

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

Konsole.png
[root@ordi ~]# apt update && apt upgrade -y


BlocNotes.png
À noter !
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 qu'il coïncide avec le serveur d'authentification.


Konsole.png
[root@ordi ~]# nano /etc/hosts


127.0.1.1       yourmachine.domain.be yourmachine


BlocNotes.png
À noter !
Modifier les informations pour qu'elles correspondent à votre nom de machine et de domaine


  • 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 aptitude install krb5-user adcli packagekit realmd -y
fi

if ! $(sudo which ntpd 2>/dev/null); then
    sudo aptitude 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 aptitude 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.

modification des fichiers de configuration

allez dans le fichier /etc/sssd/sssd.conf modifier la ligne suivant :

 use_fully_qualified_names = False

Faire un reboot system.

Afin de pour voir se connecter en ssh à la machine, activer le autehntifcation kerberos.

Modifier la configuration du serveur ssh dans /etc/ssh/sshd_config en activant les 3 variable suivante:

# Kerberos options
KerberosAuthentication yes

# GSSAPI options
GSSAPIAuthentication yes
GSSAPICleanupCredentials yes

redémarrer les service SSH

Konsole.png
[root@ordi ~]# service ssh restart

Vérification du fonctionnement

Pour verrifier le bon fonctionnement

taper getent passwd nom_du_user

Konsole.png
[root@ordi ~]# getent passwd mdaniel
mdaniel:*:47401107:47400513:Maxime Daniel:/home/test.pass.be/mdaniel:/bin/bash

autres commandes

Konsole.png
[root@ordi ~]# su - mdaniel
Création du répertoire « /home/test.pass.be/mdaniel »

Test d'un connexion ssh avec le user AD

Konsole.png
[user@ordi ~]$ ssh mdaniel@192.168.100.6
mdaniel@192.168.100.6's password: 
mdaniel@test-debprox:~$ 
Konsole.png
[user@ordi ~]$ pwd
/home/test.pass.be/mdaniel