Ceci est une ancienne révision du document !
Intégrer une machine Ubuntu dans un domaine NT Samba
Beaucoup de vieux réseau géré par un contrôleur de domaine NT4 ont été remplacés à moindre coût par des serveurs avec Samba paramétré en PDC. Ainsi les utilisateurs des différentes versions de MS Windows (win98 à XP) peuvent continuer à s'authentifier et partager des ressources. Mais si vous désirez également remplacer ou intégrer des machines équipées d'Ubuntu (K/X/Ed/Ubuntu compris) il serait intéressant qu'elles aient accès au même réseau et service.
Si c'est la connexion à un domaine Active Directory qui vous intéresse reportez vous à cette page.
Installation
Pour pouvoir intégrer un PC Ubuntu à un domaine Samba, il vous faut installer le paquet Winbind seul. Vous n'avez pas besoin du serveur Samba, seul le client-Samba installé par défaut avec votre Ubuntu suffit. Pour accéder aux partages SMB de manière automatique, il faut utiliser la librairie libpam-mount et smbfs. Pour l'installation choisissez votre méthode préférée.
sudo apt-get install winbind libpam-mount smbfs
Configuration
Plusieurs fichiers doivent être modifiés pour que l'authentification se fasse grâce au domaine.
nsswitch.conf
le fichier /etc/nsswitch.conf est le fichier de configuration des bases de données systèmes et des services de noms. C'est à lui que l'on va dire d'utiliser winbind pour trouver les noms d'utilisateurs et groupes rattachés au domaine. Il faut ajouter winbind à passwd et group et rajouter wins à hosts. Éditez le fichier :
sudo gedit /etc/nsswitch.conf
Exemple:
passwd: compat winbind group: compat winbind shadow: compat hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4 wins networks: files protocols: db files services: db files ethers: db files rpc: db files netgroup: nis
smb.conf
Le fichier /etc/samba/smb.conf est le fichier de configuration de votre client Samba mais aussi de Winbind.
éditez votre fichier
sudo gedit /etc/samba/smb.conf
puis modifiez ou ajoutez les paramétres suivant dans la section [Global] :
workgroup = NomDomaineSamba
cela correspond au nom de votre domaine
netbios name = Nom_netbios_de_ma_machine
c'est le nom que votre machine doit avoir sur le réseau NetBios attention ce nom doit être unique au risque de collision et impossibilité de vous connecter
security = DOMAIN
Ce paramètre indique que l'on veut que les options de sécurité soit au Domaine
wins server = 10.0.0.1
Très important pour la résolution de nom netbios, généralement c'est votre serveur Samba qui est serveur Wins.
winbind separator = /
c'est pour séparer le nom du domaine de l'utilisateur lors de la connexion (ex:DOMAIN_SMB/Nom_utilisateur)
winbind uid = 10000-20000
c'est pour indiquer la plage de numéro uid que les utilisateurs du domaine auront.
winbind gid = 10000-20000
Idem mais pour les groupes.
winbind use default domain = yes
Configure winbind en domaine par défaut.
template shell = /bin/bash
Donne le shell par défaut des utilisateurs du domaine
template homedir = /home/%D/%U
Indique l'emplacement des répertoires "Home" des utilisateurs du domaine. Il faudra créer le répertoire %D avec D = au nom du domaine Samba. Ce répertoire doit être créer avec les droits root, sinon les utilisateurs du domaine ne pourront pas ouvrir de session même si l'authentification a réussi.
Intégration de la machine au PDC Samba
Pour intégrer votre machine au domaine il vous faut vous connecter au serveur Samba avec :
sudo net rpc join -S IP_du_serveur -U root passwd: ##mot de passe pour sudo passwd: ##mot de passe de root connexion au domaine Joined domain NomDomaineSamba ##message si l'intégration a réussi
Si vous avez un message d'erreur comme :
Creation of workstation account failed .....
retapez :
sudo net rpc join -S IP_du_serveur -U root passwd: ##mot de passe de root connexion au domaine
Il faut que "root" ait le droit d'ajouter les machines dans le domaine.
Maintenant il faut relancer le démon Winbind
sudo /etc/init.d/winbind restart * Stopping the Winbind daemon winbind [ OK ] * Starting the Winbind daemon winbind [ OK ]
Pour tester si cela fonctionne quelques commandes :
wbinfo --own-domain ##renvoie le nom du domaine wbinfo -u ##renvoie la liste des utilisateurs du domaine wbinfo -g ##renvoie la liste des groupes
Configuration de pam_mount
Ici nous allons configurer le fichier /etc/security/pam_mount.conf, qui permettra de gérer le montage automatique des partages Samba de l'utilisateur.
exemple de fichier:
Configuration de PAM
Les fichiers pam permettent de gérer les connexions et autorisations quelles soient locales (gdm,kdm,xdm) ou distantes (ssh). Pour plus d'information sur PAM reportez vous à cette page http://www.linux-kheops.com/doc/cours/jgourdin/outils-tcp-ip/Linux-pam.html
Ici nous voulons que les utilisateurs du domaine puissent se connecter localement donc nous allons modifier le fichier /etc/pam.d/gdm si vous êtes sous Ed/Ubuntu et si vous utilisez Kubuntu c'est /etc/pam.d/kdm. En prmier faites une copie de sauvegarde de votre fichier d'origine.
sudo cp /etc/pam.d/gdm /etc/pam.d/gdm.bak
puis éditez le:
sudo gedit /etc/pam.d/gdm
Supprimez le contenu du fichier (attention d'avoir bien fait la sauvegarde du fichier avant) puis ajoutez les lignes suivantes:
auth required pam_mount.so auth sufficient pam_winbind.so use_first_pass auth required pam_unix.so use_first_pass account sufficient pam_winbind.so account sufficient pam_unix.so password required pam_unix.so nullok obscure min=4 max=8 md5 session required pam_unix.so session optional pam_mkhomedir.so session optional pam_mount.so
contributeurs: Manu