Intégration Client Ubuntu sur AD Windows Server 2003
Cahier des charges
La machine fonctionnant sous Ubuntu 11.04 (Narty Narwall) doit être en mesure de vérifier l'authentification des utilisateurs via le Contrôleur de Domaine Active Directory installé sur le serveur Windows Server 2003 R2.
Prérequis
- Serveur Windows Server 2003 pleinement installé et fonctionnel;
- Poste client fonctionnant sous Ubuntu 11.04 à jour.
Pour l'exemple, les informations suivantes seront dénies et devront être adapté en fonction de votre propre cas :
- Domaine Active Directory : GOULOUXIOU
- Nom de domaine Active Directory : GOULOUXIOU.LAN
- Serveur Contrôleur de Domaine Active Directory : ORCADE.GOULOUXIOU.LAN qui a pour IP 10.0.0.36
- Nom du poste client Ubuntu 11.04 : NOMMACHINE
Préliminaires
Résolution des noms
Il est nécessaire que la machine cliente puisse résoudre correctement le nom de domaine Active Directory ainsi que le nom du serveur de Domaine Active Directory. Pour cela, il faut éditer le fichier /etc/hosts et adapter une ligne :
127.0.1.1 NOMMACHINE NOMMACHINE.GOULOUXIOU.LAN
et en rajouter une seconde en fin de fichier :
10.0.0.36 GOULOUXIOU GOULOUXIOU.LAN ORCADE.GOULOUXIOU.LAN
Installation des paquets
L'intégration de la machine au contrôleur de domaine nécessite l'installation des paquets likewise-open5 krb5-user winbind et samba :
|
|
Configuration
Contrôleur de Domaine Active Directory
Par défaut, le login du compte administrateur est Administrateur. Ce dernier devra être modifié en administrator. Naviguez jusqu'au menu Démarrer / Tous les programmes / Outils d'administration / Utilisateurs et ordinateurs Active Directory. Ensuite, cliquez sur le dossier Users présent dans l'arborescence du Contrôleur de Domaine. Double-cliquez sur l'utilisateur Administrateur puis sous l'onglet Compte complétez les champs comme illustré dans la capture ci-dessous :
Likewise
Depuis un terminal de commande :
|
|
Le mot de passe du compte administrator du serveur Contrôleur de Domaine Active Directory est requis. Une fois le mot de passe renseigné, la machine peut s'identifier via Active directory. Le terminal retourne les information suivantes :
|
|
La machine doit également apparaître sur le Contrôleur de Domaine. Pour le vérifier, identifier vous sur votre serveur Windows Server 2003 puis naviguez dans le menu Démarrer / Tous les programmes / Outils d'administration / Utilisateurs et ordinateurs Active Directory.
Dans l'arborescence du contrôleur de domaine, cliquez sur le dossier Computers. La machine cliente Ubuntu doit y apparaître :
Kerberos
Suppression du fichier de configuration initial :
|
|
Création d'un nouveau fichier vierge:
|
|
On renseigne comme illustré ci-dessous le fichier nouvellement crée :
[logging] default = FILE10000:/var/log/krb5lib.log [libdefaults] ticket_lifetime = 24000 default_realm = GOULOUXIOU.LAN dns_fallback = no default_tkt_enctypes = rc4-hmac des-cbc-crc des-cbc-md5 default_tgs_enctypes = rc4-hmac des-cbc-crc des-cbc-md5 [realms] GOULOUXIOU.LAN = { kdc = ORCADE.GOULOUXIOU.LAN:88 admin_server = ORCADE.GOULOUXIOU.LAN:749 default_domain = GOULOUXIOU } [domain_realm] .goulouxiou.lan = GOULOUXIOU.LAN goulouxiou.lan = GOULOUXIOU.LAN
Pour tester l'authentification, on tente de se loguer avec le compte administrator du domaine. Pour cela, on tape depuis le terminal :
|
|
Le terminal doit demander le mot de passe du compte administrator. Pour vérifier que l'opération s'est déroulée correctement, on saisie la commande :
|
|
qui doit retourner dans ce cas :
|
|
Intégration de la machine au Contrôleur de Domaine
Configuration de Samba
Suppression du fichier de configuration Samba :
|
|
Création d'un nouveau fichier vierge :
|
|
On renseigne comme illustré ci-dessous le fichier nouvellement crée:
[global] security = ADS realm = GOULOUXIOU.LAN netbios name = OXTRODEX password server = ORCADE.GOULOUXIOU.LAN workgroup = GOULOUXIOU winbind separator = / idmap uid = 10000-20000 idmap gid = 10000-20000 winbind enum users = yes winbind enum groups = yes template homedir = /home/%D/%U template shell = /bin/bash client use spnego = yes winbind use default domain = yes # empêche le client de devenir maitre explorateur domain master = no local master = no preferred master = no os level = 0
On redémarre le serveur samba :
|
|
On redémarre winbind :
|
|
Puis on ajoute la machine au contrôleur de domaine :
|
|
Le terminal de commande doit retourner :
|
|
Authentification
Il s'agit maintenant d'implanter l'authentification via winbind dans le système d'ouverture de session d'Ubuntu.
Configuration de NSSWITCH
Ouverture du fichier /etc/nsswitch.conf.
- Adaptez les deux lignes suivantes :
passwd: compat lsass group: compat lsass
- Par :
passwd: compat lsass winbind group: compat lsass winbind
On vérifie le bon fonctionnement du module en tapant la commande :
|
|
Où l'on doit remarquer la présence des enregistrement suivants, correspondant aux utilisateurs du domaine Active Directory sur le serveur Windows Server 2003 :
|
|
Configuration de PAM
La configuration suivante permet aux utilisateurs du domaine de s'authentifier sur la machine cliente Ubuntu.
common-account
Sauvegarde du fichier /etc/pam.d/common-account :
|
|
Suppression du fichier /etc/pam.d/common-account :
|
|
Création d'un fichier vierge /etc/pam.d/common-account :
|
|
On renseigne comme illustré ci-dessous le fichier nouvellement crée :
account sufficient pam_winbind.so account sufficient pam_unix.so
common-auth
Sauvegarde du fichier /etc/pam.d/common-auth :
|
|
Suppression du fichier /etc/pam.d/common-auth :
|
|
Création d'un fichier vierge /etc/pam.d/common-auth :
|
|
On renseigne comme illustré ci-dessous le fichier nouvellement crée :
auth sufficient pam_winbind.so auth sufficient pam_unix.so nullok_secure use_first_pass auth required pam_deny.so
common-session
Sauvegarde du fichier /etc/pam.d/common-session :
|
|
Suppression du fichier /etc/pam.d/common-session :
|
|
Création d'un fichier vierge /etc/pam.d/common-session :
|
|
On renseigne comme illustré ci-dessous le fichier nouvellement crée :
session required pam_unix.so session required pam_mkhomedir.so umask=0022 skel=/etc/skel
sudo
Sauvegarde du fichier /etc/pam.d/sudo :
|
|
Suppression du fichier /etc/pam.d/sudo :
|
|
Création d'un fichier vierge /etc/pam.d/sudo :
|
|
On renseigne comme illustré ci-dessous le fichier nouvellement crée :
auth sufficient pam_winbind.so auth required pam_unix.so use_first_pass
Sources
- Bases de données Ubuntu Francophones : http://doc.ubuntu-fr.org/tutoriel/comment_ajouter_machine_ubuntu_dans_domaine_active_directory
- Communauté Ubuntu : http://forum.ubuntu-fr.org/viewtopic.php?id=143501