« Le système d'exploitation GNU-Linux/Le partage de fichiers Samba » : différence entre les versions
Contenu supprimé Contenu ajouté
coorections des tabulations qui font buguer WB |
coorections + mise en page |
||
Ligne 38 :
On peut ensuite créer différentes sections, une par partage voulu.
Samba peut fonctionner de différentes manières.
== Le partage par ressource sur un réseau Workgroup ==
Ligne 50 ⟶ 47 :
# PARTAGE PAR RESSOURCES (share)
# Il y a 2 cas possibles :
#
# CAS n°1 : on partage une ressource totalement anonyme
# CAS n°2 : on partage une ressource avec un mot de passe associé à la ressource
# Section GLOBAL
# Configuration globale de Samba
Ligne 130 ⟶ 132 :
# Sections REPERTOIRES PARTAGES
#
[cdrom]
# Le commentaire associé au CDROM
Ligne 149 ⟶ 151 :
#
[partage]
# Le commentaire associé au répertoire
Ligne 165 ⟶ 167 :
public = no
# Voir explication ci-dessous
valid users = invite
Ligne 179 ⟶ 174 :
directory mask = 0755
Dans le cas du mode share, pour pouvoir positionner un mot de passe sur une ressource, il faut créer un compte UNIX 'invite' :
# adduser --shell /bin/false --disabled-login invite
# smbpasswd -a invite
# mkdir /home/partage
# chown invite.invite /home/partage
Petit rappel : il est toujours utile de faire un '''testparm''' pour vérifier la cohérence du fichier de configuration, et ne pas oublier de relancer le service pour que les modifications soient prises en compte.
Ligne 205 ⟶ 199 :
# PARTAGE PAR UTILISATEUR (user) - Groupe de travail
# Il y a
#
# CAS n°1 :
# CAS n°2 : cas normal du mode user, on fait une authentification
# par login et mot de passe
Ligne 314 ⟶ 306 :
# Sections REPERTOIRES PARTAGES
# CAS n°
# Un CDROM
[cdrom]
Ligne 334 ⟶ 326 :
# CAS n°2 : un répertoire partagé qu'à certains utilisateurs
[prive]
# Le commentaire associé au répertoire
Ligne 351 ⟶ 342 :
public = no
# Voir explication ci-dessous
# le @prive désigne le groupe Unix 'prive'
valid users = @prive
# Masque de création des fichiers et répertoires
Ligne 387 ⟶ 350 :
directory mask = 0755
Dans le cas du mode user, pour ne partager une ressource partagée qu'a certains utilisateurs, il faut tout d'abord créer un compte UNIX pour chacun d'eux :
# adduser --shell /bin/false --disabled-login paul
# adduser --shell /bin/false --disabled-login pierre
On crée ensuite une entrée dans le fichier /etc/samba/smbpasswd :
# smbpasswd -a paul
# smbpasswd -a
Coté Linux, les utilisateurs doivent avoir le droit d'écriture sur le répertoire partagé. La meilleure méthode consiste à créer un groupe Unix contenant les utilisateurs autorisés, et d'attribuer le repertoire partagé au groupe en question :
# addgroup
# adduser paul prive
# adduser pierre prive
# mkdir /home/prive
# chgrp prive /home/prive
# chmod 770 /home/prive
# chmod g+s /home/prive
Avantage : pour partager cette ressource à de nouveaux utilisateurs, il suffit de leur créer le compte unix, une entrée dans smbpasswd et de les ajouter au groupe prive (il n'est plus nécessaire de modifier le fichier smb.conf).
== Le partage sur un domaine Microsoft ==
Voici un fichier '''/etc/samba/smb.conf''' permettant de rejoindre un domaine existant afin de partager des ressources :
Ligne 429 ⟶ 381 :
# déléguée à un controleur de domaine (PDC : Primary Domain Controller)
# Il y a
#
# CAS n°1 :
# CAS n°2 : cas normal du mode user, on fait une authentification
# par login et mot de passe
Ligne 442 ⟶ 392 :
[global]
# Nom du groupe de travail
workgroup =
# Nom Netbios de la machine (identification réseau)
Ligne 540 ⟶ 490 :
# Sections REPERTOIRES PARTAGES
# CAS n°
# Un CDROM
[cdrom]
Ligne 560 ⟶ 510 :
# CAS n°2 : un répertoire partagé qu'à certains utilisateurs
[prive]
# Le commentaire associé au répertoire
Ligne 576 ⟶ 525 :
# synonyme de guest ok = no
public = no
# Voir explication ci-dessous
# le @prive désigne le groupe Unix 'prive'
valid users = @prive
# Masque de création des fichiers et répertoires
Ligne 613 ⟶ 534 :
directory mask = 0755
Remarque : Pour que le serveur Linux puisse rejoindre le domaine existant, il faut se connecter au moins une fois avec le compte '''Administrateur''' définit sur le contrôleur de domaine, afin que ce dernier crée un compte machine :
# net join -W DOMAINE -U Administrateur -P
... à tester et à coller le résultat ....
Dans le cas du mode server, les utilisateurs (login et mot de passe) sont définit sur un serveur existant.
Coté Linux, les utilisateurs doivent avoir le droit d'écriture sur le répertoire partagé. Cependant, les utilisateurs ne sont pas définit sur le serveur Linux mais sur le contrôleur de domaine. La solution consiste à permettre à tout le monde d'écrire dans ce répertoire, Samba se chargeant de n'autoriser que les utilisateurs autorisés sur le contrôleur de domaine.
# mkdir /home/prive
# chmod
Ligne 739 ⟶ 639 :
# Logins autorisés à se connecter aux ressources administratives
# comme C$, ADMIN$ et IPC$
admin users = admin
Ligne 755 ⟶ 649 :
passwd program = /usr/bin/passwd %u
passwd chat = *Enter\snew\sUnix\spassword:* %n\n *Retype\snew\sUnix\spassword:* %n\n
# Nom du fichier netlogon
logon script = logon.bat
# Section NETLOGON
# Permet de faire exécuter un script d'initialisation réseau par le poste
# client du domaine. Ceci permet par exemple connecter un lecteur réseau (Z:) ou de synchroniser l'heure
[netlogon]
# Il n'apparaitra pas dans la liste des ressources partagées
browsable = no
#
path = /etc/samba/netlogon
Ligne 783 ⟶ 680 :
path = %H
browsable = no
Pour chaque membre du domaine, il faut créer un compte unix correspondant à la machine et rajouter une entrée de type machine dans smbpasswd.
Attention : ce login doit porter le nom netbios de la machine et se terminer par un dollar (d'ou le --force-badname) :
# adduser --shell /bin/false --disabled-login --force-badname nompc$
# smbpasswd -a -m nompc$
Il faut aussi créer le répertoire pouvant acceillir le '''netlogon''' :
# mkdir /etc/samba/netlogon
Le '''netlogon''' peut servir par exemple à créer automatiquement un volume réseau (ex: '''Z:'''), ou ajuster l'heure de l'ordinateur avec celle du contrôleur de domaine.
On peut optionnellement créer un fichier logon.bat :
# echo "echo @off" > /etc/samba/netlogon/logon.bat
# echo "echo Bienvenue sur le domaine" >> /etc/samba/netlogon/logon.bat
# echo "pause" >> /etc/samba/netlogon/logon.bat
|