* Quelques informations sur pam
Une fois les tests finalisés, cette page le sera aussi ! N'hésitez pas à contribuer
D'autre pistes sont à étudier parmi lesquelles SADMS développé par notre collègue Bernard Bou : http://sadms.sourceforge.net/
En anglais dans le texte :
As a domain member, the Linux host
Ce document est basé sur la page dédiée du wiki linuxedu (merci à Alexandre pour cette page)
Abréviations :
Logiciels nécessaires :
Note : Le paquet samba-client est un paquet virtuel fourni par smbclient
sudo apt-get install samba samba-common smbclient winbind
pour /etc/samba/smb.conf
Le fichier suivant permet d'intégrer la station au domaine :
[global]
security = ADS
realm = D-CROC-MAGNON.local
password server = SERVEUR01.D-CROC-MAGNON.local
# workgroup est le nom "court" du CDe
workgroup = D-CROC-MAGNON
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
# nous n'avons qu'un seul CD
# et cela permet de se logguer avec USERNAME au lieu de D-MON_ETAB+USERNAME
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
A ce stade un petit testparm pour éviter les soucis Puis arrêter samba et winbind :
sudo /etc/init.d/samba stop sudo /etc/init.d/winbind stop
Joindre le domaine avec
net join -D D-CROC-MAGNON -U Administrateur
ensuite redémarrer samba et winbind :
/etc/init.d/winbind start /etc/init.d/samba/samba start
et tester : wbinfo -u wbinfo -g
Attention aux problèmes réseau au démarrage, si au reboot machine “wbinfo -u” ne donne rien, relancer /etc/init.d/winbind start
: Script éventuel à placer dans /etc/network/if-up/ pour être sur qu'il soit lancé après le réseau
pour /etc/nsswitch.conf
Remplacer les trois premières lignes qui sont :
passwd: compat group: compat shadow: compat
par ceci :
passwd: compat winbind shadow: compat group: compat winbind
Pour joindre le domaine, nous allons utiliser la commande “net”. Elle va lire dans smb.conf les informations utiles. Elle permet d'administrer les partages samba ou CIFS distants. Il est possible de lui passer en argument le nom d'une OU cible….
Pour tester la liaison avec le domaine :
sudo net ads testjoin
sudo net ads join -D D-CROC-MAGNON -U Administrateur
Rentrer successivement le mot de passe root (pour sudo) et le mot de passe Administrateur de SERVEUR01
ou celle-ci en mettant le mot de passe en clair
sudo net ads join -D D-CROC-MAGNON -U admin%passwd
Le message suivant s'affiche :
Password: Joined domain D-CROC-MAGNON.
Remarques :
: avec ADS, il faut kerberos, avec RPC, non ?La station est maintenant intégrée au domaine et apparait lors du lancement de Magret Serveur. L'OU par défaut est
Ensuite démarrer samba, puis winbind
sudo /etc/init.d/samba start
sudo /etc/init.d/winbind start
Pour faire des vérifications, nous allons utiliser le programme wbinfo qui interroge le démon winbind.
La commande suivante liste tous les utilisateurs du domaine :
wbinfo -u
Si la commande renvoie “Error looking up domain users”, vérifier les messages renvoyés par “wbinfo -t”. Cette commande teste si la station
On liste tous les groupes du domaine :
wbinfo -g
On vérifie le module nsswitch de winbind avec getent qui renvoie les bases données passwd et group.
Liste des utilisateurs d'Active Directory :
getent passwd
Liste des groupes Active Directory :
getent group
À ce stade, on peut se connecter à la machine Linux à l'aide d'un compte local ou un compte d'utilisateur du domaine. À la première connexion d'un utilisateur du domaine, un répertoire « home » sera créé.
Il faut ensuite modifier pam, qui est le service gérant l'authentification.
Pour l'authentification il faut utiliser le modules pam_winbind
Pour monter automatiquement le répertoire partagé en même temps que la connection, il faut utiliser les modules pam_mount et pam_mkhomedir
voilà le détail de mon fichier de config pam
Ce fichier gère l'ouverture de session
session required pam_unix.so session required pam_mkhomedir.so skel=/etc/skel umask=0022 session optional pam_mount.so
Ce fichier gère l'authentification. On y met les modules que l'on souhaite voir tester les couples login/mot de passe
auth optional pam_mount.so auth sufficient pam_unix.so use_first_pass auth required pam_group.so use_first_pass auth required pam_winbind.so use_first_pass
password sufficient pam_unix.so nullok obscure min=4 max=8 md5
Ce fichier gère l'autorisation de connexion. On peut donner des restriction en fonction du login, de la date, de l'heure, etc. L'ordre semble important. En priorité on se connecte avec un compte d'utilisateur du domaine sur la machine (pam_winbind.so en premier donc). Ici pas de restrictions.
account sufficient pam_winbind.so account required pam_unix.so
/etc/krb5.conf
[libdefaults]
default_realm = D-CROC-MAGNON.local
krb4_config = /etc/krb.conf
krb4_realms = /etc/krb.realms
kdc_timesync = 1
ccache_type = 4
forwardable = true
proxiable = true
[realms]
D-CROC-MAGNON.local = {
kdc = serveur01
admin_server = serveur01
default_domain = D-CROC-MAGNON.local
}
[domain_realm]
.mit.edu = ATHENA.MIT.EDU
mit.edu = ATHENA.MIT.EDU
.media.mit.edu = MEDIA-LAB.MIT.EDU
media.mit.edu = MEDIA-LAB.MIT.EDU
.whoi.edu = ATHENA.MIT.EDU
whoi.edu = ATHENA.MIT.EDU
.stanford.edu = stanford.edu
.projet.tut = PROJET.TUT
peojet.tut = PROJET.TUT
[login]
krb4_convert = true
krb4_get_tickets = false
: paramétrer : /etc/hosts avec un Nom de Domaine Pleinement Qualifié (FQFN)
Pour tester :
kinit test
A classer :
Manuel de références : http://us1.samba.org/samba/docs/man/Samba-HOWTO-Collection/winbind.html chapitre III-24 de l'official samba-HOWTO
https://help.ubuntu.com/community/ActiveDirectoryWinbindHowto
http://doc.ubuntu-fr.org/tutoriel/comment_ajouter_machine_ubuntu_dans_domaine_active_directory
http://www.supinfo-projects.com/fr/2006/integration_linux_ad/
http://forum.ubuntu-fr.org/viewtopic.php?id=27699
http://forum.ubuntu-fr.org/viewtopic.php?id=324028
Un méthode analogue avec d'autres outils : http://developer.novell.com/wiki/index.php/HOWTO:_Configure_Ubuntu_for_Active_Directory_Authentication