Nous avons vu une technique avec OpenMediaVault, nous allons voir maintenant comment le faire plus simplement avec samba.
Samba permet, sur linux de faire du partage de fichiers, il permet de créer des partages, de leur attribuer des droits ainsi que des utilisateurs / groupes pouvant y avoir accès. De la même façon cela permet de limiter l’accès en fonction des utilisateurs qui s’y connectent, ou tout simplement de leur attribuer ou non des droits d’écriture sur les dossiers et fichiers.
C’est une solution bien plus simple et bien plus rapide (vous n’aurez pas besoin de beaucoup de ram ni d’un processeur énorme). C’est pour cela que nous allons faire ce tuto avec un raspberry pi 3, ce qui suffit amplement.
Pour exemple, je possède un rpi3, un boitier usb3 comportant 4 disques sata et cela suffit à avoir un serveur Nas de 8 Teras.
La mise en place
Partons d’un système neuf, propre
- Ce que je conseille de faire en 1er est de vérifier les nom de dossiers de vos disques car il ne faudra pas les renommer par la suite (vu que samba redirigera vers ces dossiers). Si on souhaite le faire, il faut modifier le fichier de conf samba à chaque fois.
- Ajouter le ou les utilisateurs au système (adduser bidule)
- Ajouter l’utilisateur à samba (smbpasswd -a bidule)
- sur samba 4 : /usr/local/samba/bin/samba-tool user add votre_utilisateur_ici
- Ajouter le partage en éditant le fichier smb.conf
sudo nano /etc/samba/smb.conf
Descendre à la fin du fichier et ajouter votre partage (minicloud ici) :
[minicloud]
path = /mnt/usb32/minicloud/
comment = minicloud sur clé usb 32
valid users = @bioadmin
guest ok = no
browseable = yes
read only = no
Le nom entre [ ] est le nom que vous verrez quand vous serez connecté au réseau samba.
path est l’emplacement physique de votre dossier à partager
comment, si vous souhaitez mettre un commentaire sur le partage
valid users = votre ou vos utilisateurs / groupes (user ou @group)
guest : autoriser ou non les comptes invités
browsable : définit si on peut naviguer dans les dossiers
read only : lecture seule, aucune modification possible
Ainsi tous les comptes appartenant au groupe bioadmin seront autorisé à accéder au partage ci-dessus.
Pour que cela soit possible, il faut évidement un dossier qui soit accessible par ce groupe
Vous devez donc modifier le propriétaire du dossier pour que vos utilisateurs y accèdent
Vérifier qui est propriétaire : ls -la /votre_dossier
2ème colonne : proprio et groupe (permet de vérifier qui est propriétaire du dossier, pour modifier, utiliser sudo chown
sudo chown votre_utilisateur:le_groupe /chemin vers le dossier -R
Les droits d’écriture pour ce partage sont à régler en fonction
sudo chmod 770 permettra à l’user et au groupe de lire, de modifier ce partage, et rien aux autres
1ère colonne sur la gauche, sont spécifiés les droits pour l’user (u), le groupe (g), les autres (others) :
r(lecture) / w(écriture) / x(exécution)
Pour modifier les droits il suffit de spécifier qui a accès à quoi avec sudo chmod en ajoutant ou en retirant des droits spécifiques à ce que vous souhaitez faire avec ce partage.
user : chmod u+rwx
groupe : chmod g+rwx
others : chmod o-rwx
Ici, user et groupe accès total, modification et exécution,
others: aucun accès (équivalent à chmod 770)
Donc vous l’aurez compris, pour ajouter un droit à l’user : u+le_droit (r,w ou x)
Pour retirer un droit (toujours à l’user) : u-x (empêche l’user d’exécuter un programme se trouvant dans le partage)
Tout est à régler, pour user, group et others
Déjà, pour valider toutes les modifications effectuées, je vous encourage à redémarrer le service samba :
sudo service smbd restart
Accéder au partage samba depuis linux :
1. Soit ‘ajouter un serveur’ dans l’explorateur de fichiers
2. Soit dans l’explorateur encore, barre d’adresse : smb://nom-de-la-machine-serveur/ (affichera tous les partages)
3. Soit afficher / monter uniquement le dossier voulu : smb://nom-de-la-machine-serveur/nom-exact-du-partage
Sur vlc il suffit d’aller dans réseau pour voir le partage et lancer un média
Pour tout problème de droits, il faut revoir les options ci-dessus, chown et chmod
J’espère que ce tuto est clair, si ce n’est pas le cas, laissez un commentaire.