Skip to main content

[Debian] Serveur Samba

Introduction

Le service samba est disponible sur les différentes distributions Linux et permet de partager des fichiers comme le ferait un serveur FTP par exemple mais permet la compatibilité native avec Windows ce qui est intéressant.

image.png

Source

Installation

Commencez par installer le paquet samba :

sudo apt install -y samba

Puis configurez un partage :

nano /etc/samba/smb.conf
[<SHARE_NAME>]
   comment = Partage de données
   path = <SHARE_PATH>
   valid users = admin @LECTEURS
   guest ok = no
   read only = no
   browseable = yes
   create mask = 0664
   directory mask = 0775
   force group = LECTEURS

Cette configuration autorise un utilisateur admin (qui a les droits d'écriture) ainsi que les utilisateurs du groupe LECTEURS qui ont seulement les droits de lecture sur le partage). Vous pouvez bien sûr modifier cette configuration à souhait.

D'ailleurs, pensez à vérifier que l'utilisateur est bien propriétaire du dossier du partage.

Définissez un mot de passe samba à votre utilisateur :

smbpasswd -a <USER>

Vous pouvez tester votre fichier de configuration grâce à la commande testparm :

testparm

Enfin, activez et démarrez le service samba :

systemctl enable --now smbd

Monter un partage

Ensuite ce qui est intéressant c'est de monter le partage que l'on vient de créer sur le client qui va l'utiliser.

Tout d'abord, installez le paquet cifs-utils :

sudo apt update && sudo apt install -y cifs-utils

Créez le fichier contenant les identifiants du partage et enlevez lui les droits de lecture :

sudo nano /root/.creds
username=myUser
password=myPass
domain=WORKGROUP
sudo chmod 600 /root/.creds

Créez le dossier qui va accueillir le point de montage :

sudo mkdir /media/share

Testez le montage de votre partage :

sudo mount -t cifs -o credentials=/root/.creds //<IP>/<SHARE> /media/share

Afin de rendre persistent votre point de montage, éditez le fichier /etc/fstab :

sudo nano /etc/fstab

Et ajoutez une entrée de la sorte :

//<IP>/<SHARE>    </media/share>    cifs    uid=0,credentials=/root/.creds-nas,iocharset=utf8,vers=3.0    0 0