Linux Réseaux
Samba
Installation et configuration d'un serveur de partage de fichiers



Pour : Linux (Debian, Ubuntu, ...)


Ce tutoriel vous montre a travers un exemple, la marche a suivre pour installer et configurer un serveur de partage de fichiers avec Samba.


1) Installation

On va faire l'installation de Samba depuis les dépôts:

# apt-get install libcupsys2 samba samba-common



Saisissez le nom de votre domaine ou de votre groupe de travail.


2) Configuration de Samba

Samba se configure par l'intermédiaire du fichier "smb.conf":

# nano /etc/samba/smb.conf



Voici un exemple simplifié d'un fichier smb.conf:

# Fichier de configuration du serveur samba #======================= Paramètres généraux ======================= [global] # Nom du groupe de travail ou du domaine workgroup = workgroup # Nom du serveur samba ou description server string = %h server (Samba sur serveur de démonstration) # A décommenter si on veut limiter l'accès par un réseau uniquement # interfaces = 127.0.0.0/8 eth0 # Emplacement des fichiers log log file = /var/log/samba/log.%m # Taille max des fichiers log en Ko. max log size = 1000 # Niveau de précision des log de 0 à 7 syslog = 0 # Action a effectuer en cas de bug du serveur samba panic action = /usr/share/samba/panic-action %d # Type d'authentification user = par login et mot de passe utilisateur security = user # On crypte les mots de passe encrypt passwords = true # Stockage des mots de passe passdb backend = tdbsam obey pam restrictions = yes # Mise à jour de toutes les bases de mots de passe unix password sync = yes # Programme de mise à jour des mots de passe passwd program = /usr/bin/passwd %u passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:*$ *password\supdated\ssuccessfully* . pam password change = yes # Action en connexion annonyme map to guest = bad user # Activation de la possibilité de partages publics usershare allow guests = yes #======================= Définition des partages ======================= # Définition du partage des répertoires utilisateurs [homes] comment = Répertoire personnel # On a le droit de parcourrir son répertoire browseable = yes # Droits par défaut sur les fichiers crées create mask = 0700 # Droits par défaut sur les répertoires crées directory mask = 0700 # A décommenter pour un répertoire commun [commun] comment = Répertoire commun # Chemin d'accès au répertoire path = /commun # Droit de lecture aux utilisateurs annonymes guest ok = yes # Donnée les droits d'écritures writeable = yes # Donnée que les droits de lecture # read only = no # On a le droit de parcourrir son répertoire browseable = yes # Droits par défaut sur les fichiers qui seront crées dans le répertoire create mask = 0700 # Droits par défaut sur les répertoires qui seront crées dans le répertoire directory mask = 0700




3) Pour créer un répertoire commun qui s'appellerait par exemple "commun"

On crée un groupe qui porte le nom de commun:

# addgroup commun



Editez le fichier "group":

# nano /etc/group



Et recherchez la ligne commençant par "commun", normalement tous à la fin.
La ligne devrait ressemblé à quelque chose comme ça et peut-être avec un autre numéro:
commun:x:1004:
Ajouter les noms des utilisateurs et/ou des groupes qui seront autorisé a ce connecter.
Les noms doivent être sur la même ligne, séparé par des virgules.


4) Tester la syntaxe d'écriture du fichier smb.conf

Grace a l'outil "testparm" suivie de l'emplacement du fichier de configuration.

testparm /etc/samba/smb.conf




5) Ajouter des comptes dans la base de samba

Pour nos utilisateurs ayant un compte local sur la machine puissent accéder aux partages via le réseau, il faut les ajouter dans la base de compte de samba et leur définir un mot de passe à l'aide de la commande smbpasswd :

# smbpasswd -a <nom_de_l'utilisateur> New SMB password : Retype new SMB password :




6) Les autorisations
Vérifier que les utilisateurs et les groupes ont les autorisations nécéssaires sur les répertoires partagées, dont ceux qui sont en commun:

ls -ail



Puis ajouter le groupe autorisé a ce connecter, dans notre exemple ce sera le groupe "commun" sur le répertoire "/commun".
Syntaxe:
chown root:<nom_du_groupes> <nom_du_répertoire_partagé>
Exemple:

chown root:commun /commun



Puis appliquer les droits nécessaires:
Syntaxe:
chmod 755 <nom_du_répertoire_partagé>
Exemple:

chmod 755 /commun




7) Redémarrage
Redémarrer le service Samba.

/etc/init.d/samba restart


Maintenant vos partages sont accessible depuis Linux, Mac et Windows.



Problème:
Si les postes clients sous Linux arrive a se connecter sur le serveur Samba mais pas les postes clients Windows, pensez a vérifier les pare-feu.



smbclient

Cette outil en ligne de commande permet de ce connecter à un partage sur des machines sous Linux et Windows.

Voici la syntaxe de base pour ce connecter:
smbclient \\\\nom_ou_ip_serveur_samba\\nom_du_partage -U nom_utilisateur

Envoyer un fichier:

put [nom_du_fichier]



Télécharger un fichier:

get [nom_du_fichier]



Exécuter une action sur le poste local:

![commande_sur_la_machine_local]



Télécharger ou envoyer un répertoire:
Pour transférer un dossier, vous devez utiliser la commande mget pour télécharger ou mput pour envoyer.
Mais avant vous avez besoin d'ajouter des options, comme "recurse" pour activer le mode récursif et "prompt" pour éviter d'avoir des messages qui demande si oui ou non on veut copier récursivement.
Par exemple avant d'envoyer le répertoire "dossier-ced" avec mput, on active le mode recurse et prompt.

smb: \> recurse smb: \> prompt smb: \> mput dossier-ced



Afficher la liste des commandes:

? ou help



Message d'erreur SMBCLIENT

Ce message d'erreur s'affiche au momment d'envoyer un fichier.
nt_status_access_denied opening remote file

Verifier que l'utilisateur qui est utilisé pour "smbclient" à les droits d'accès en écriture dans le répertoire distant (chown, chmod ...).
Et verifier que le serveur Samba autorise le droit d'écriture dans ce partage, les umasks et que l'option "read only = no".



Lien pour aller sur le site de l'éditeur:
www.samba.org


Par O.Cédric
Sur www.octetmalin.net

Article publié le:
06/01/2012 13:54

Mise à jour le:
08/02/2012 13:24





Cette page vous à plus?

Dîtes que vous l'aimez en cliquant sur le bouton Facebook.