Création d'un share public

Avant tout nous allons devoir un créer un répertoire sur notre système hôte que l’on appellera (par convention) « Public »

mkdir /home/defte/Public

Dans ce répertoire on créera un fichier texte :

echo "Bienvenue sur le share public" > /home/defte/Public/welcome.txt

Ensuite nous allons modifier les droits sur ce répertoire afin que n’importe qui y ait accès :

sudo chmod 0777 /home/defte/Public
sudo chown -R nobody:nogroup /home/defte/Public

Puis dans notre fichier de configuration Samba nous allons ajouter ces lignes:

[Public]
   path = /home/defte/Public # Répertoire en accès libre
   guest ok = yes # Les invités ont le droit d'y accéder
   guest only = no # Tout le monde y a accès
   read only = no # On y a accès en lecture et en écriture
   create mode = 0777 # Tout le monde peut créer, modifier et supprimer un fichier
   directory mode = 0777 # Tout le monde peut créer ou supprimer un répertoire
   force user = nobody # L'utilisateur est "nobody"

Lorsqu’un utilisateur va se connecter depuis son poste, il se verra attribuer un utilisateur présent sur le système qui héberge le share. Cet utilisateur, c’est celui que l’on définit dans la directive « force user »

On redémarre le service smbd :

sudo systemctl restart smbd

Et on accède au fameux share :

samba5.png

A savoir que l’on pourra ensuite filtrer les accès à certain share en se servant des directives « valid users » et « invalid users »:

valid users = some_user

ou donner accès à un certain groupe :

valid users = @some_group

L’@ indiquant à Samba que la valeur qui suit est le nom d’un groupe et non pas celui d’un utilisateur.

Il sera d’ailleurs possible de lister l’ensemble des connections à nos share en utilisant la commande :

sudo smbstatus

samba6.png