Samba

Samba permet de connecter à un serveur débian ( dans notre cas ), des stations fonctionnant sous : Karmic Koala, Xp, Vista, Seven.
Le serveur se comporte alors comme un serveur de fichiers capables d'offrir les services suivant :

  • partage d'imprimantes
  • exécution de scripts de connexion personnalisés
  • partage de fichiers et de répertoires
  • gestion des autorisations d'accès
  • respect des comptes utilisateurs

Installation

Ouvrez une console sur le serveur débian ( ctrl + alt + F1 à F6 ) et tapez la ligne de commande suivante :

aptitude install smb 
Laissez le s'installer et se lancer automatiquement.

Paramétrage

Laissez toutes les options par défaut en prenant garde toutefois de bien indiquer le bon groupe de travail ( par défaut WORKGROUP ).

Configuration ouverte

Creez le répertoire que vous voulez partager avec la commande mkdir.

mkdir /home/lenomdedossierquivabien 

Accordez les droits à tout le monde en utilisant la commande chmod

chmod 777 /home/lenomdedossierquivabien 

Éditez le fichier smb.conf grâce à la commande nano.

nano /etc/samba/smb.conf 

Allez à la fin du fichier et ajoutez ceci :

[lenomdedossierquivabien]
        comment = dossier trop bien
        writeable = yes
        locking = no
        path = /media/lenomdedossierquivabien
        public = yes
        browseable = yes
        read only = no
        guest ok =yes
        create mode = 777
        directory mode = 777 
Précisons que cette configuration n'est pas la plus recommandée car elle accorde à tous "tout les droits", dont celui de suppression …

Configuration restrictive.

Le but est ici de restreindre l'accès aux seuls utilisateurs enregistrés sur le serveur et de définir leurs droits sur les dossiers et fichiersPrenons un exemple, une famille à trois enfants Kévin ( 17 ans ), Daïlami (15 ans), Angélique ( 7 ans ) et possède des copies de ses DVD préfèrés.Kévin et Daïlami aiment tout les deux les films d'épouvante, alors que cela fait peur à Angélique qui préfère les déssins animés. Nous allons faire en sorte que les plus grands puissent accéder aux deux dossiers ( Films et Animés ), et seulement à Animés pour angélique.

Créez les répertoires que vous voulez partager avec la commande mkdir.

mkdir /Films && mkdir /Animés 
Les caractères && permettent de chainer les commandes.

Accordez les droits à tout le monde grâce à la commande chmod, car c' est samba qui gérera les accès.

chmod 777 /Films && chmod 777 /Animés 

Créez des utilisateurs ayant le même login et mot de passe que sur leurs séssion avec la commande adduser.

adduser kevin 

Tapez deux fois le mot de passe, puis remplissez ( ou pas ) les champs suivants, Nom complet, Numéro de bureau, Téléphone Professionnel, Téléphone personnel, Autre, et comfirmez avec O ( confirmation par défaut en appuyant sur "enter" ). Puis recommencez pour dailami et angelique.

Créez les groupes grâce à la commande groupadd.

groupadd petits && groupadd grands 

Mettez les utilisateurs dans les groupes avec la commande addgroup.

addgroup kevin grands && addgroup dailami grands 
addgroup angelique petits 

Changez le groupe propriétaire des dossiers en utilisant la commande chgrp.

chgrp grands /Films && chgrp petits /Animés 

Définir les mots de passe samba à l'aide smbpasswd.

smbpasswd -a kevin 

samba vous demandera de lui indiquer le mot de passe de kevin, puis relancez la même commande pour dailami et angelique.

Configurer le fichier smb.conf

Pour configurer le fichier smb.conf il faut tout d'abord l'éditer.
nano /etc/samba/smb.conf 
Allez à la fin du fichier, puis le modifier suivant vos besoin avec l'aide des commandes suivantes :


Paramètre valeur par défaut description
path =   Chemin du répertoire à partager
comment =   Texte visible dans le voisinage réseau client
public = no Partage en accès libre sans authentification
valid users = tous Liste des users autorisés à se connecter à la ressource
writeable = yes no Permet ou non l'écriture sur le dossier
write list = tous les utilisateurs Liste des users autorisés à écrire
browseable = yes Visibilité du partage par tous, même les utilisateurs non enregistés
create mask = 0744 Droits maxi accordés à un fichier créé dans la ressource
ces droits seront en intersection (and) avec les droits Linux (umask)
directory mask = 0755 Droits maxi accordés à un répertoire créé dans la ressource
ces droits seront en intersection (and) avec les droits Linux (umask)
force group =   Impose un groupe propriétaire d'un dossier ou d'un fichier lors de sa création dans le partage



Voici ce que cela donne dans notre cas :
[[Films]
comment = Partage pour adolescents
path = /Films
read only = no
public = no
writable = yes
valid users = @grands
browseable = yes
locking = no
force group = grands
create mask = 0777
directory mask = 0777 
[Animés]
comment = Partage pour enfants
path = /Animés
read only = no
public = no
writable = yes
valid users = @grands,@petits
browseable = yes
locking = no
force group = petits
create mask = 0775
directory mask = 0775 


Navigation
Outils personnels