J'ai un partage Samba contenant de nombreux dossiers comme celui-ci:
share
- folderA
- folderB
- folderC
- folderD
Une vingtaine d'utilisateurs accèdent à ces partages. Chaque utilisateur peut avoir son accès individuel à certains des répertoires, par exemple Ben peut accéder au dossier A et au dossier C, mais pas au dossier B et au dossier D. Jenny peut accéder au dossier B et au dossier C, etc.
Je ne veux pas que les utilisateurs montent chaque dossier dont ils ont besoin. Je veux qu'ils montent le dossier "share" qui contient tous les sous-dossiers. L'accès est alors limité en définissant les autorisations Linux.
J'ai créé un groupe pour chaque sous-répertoire et ajouté les utilisateurs à ces groupes. Le contrôle d'accès fonctionne parfaitement pour les fichiers existants. Mais chaque fois qu'un utilisateur crée un fichier dans un sous-répertoire, il est refusé à tout autre utilisateur disposant de l'autorisation d'accès en lecture / écriture dans ce répertoire. Pour résoudre ce problème, j'ai joué avec le masquage de samba, mais je n'arrive pas à le faire fonctionner.
Ma conf Samba ressemble à ceci:
guest ok = no
[global]
workgroup = WORKGROUP
security = user
encrypt passwords = yes
[Share]
path = /var/samba
valid users = @everybody
read only = no
writeable = yes
[folderA]
path = /var/samba/folderA
valid users = @users_folderA
read only = no
writeable = yes
create mask = 770
directory mask = 770
force directory mode = 770
force group = users_folderA
[folderB]
path = /var/samba/folderB
valid users = @users_folderB
read only = no
writeable = yes
create mask = 770
directory mask = 770
force directory mode = 770
force group = users_folderB
[folderC]
path = /var/samba/folderC
valid users = @users_folderC
read only = no
writeable = yes
create mask = 770
directory mask = 770
force directory mode = 770
force group = users_folderC
[folderD]
path = /var/samba/folderD
valid users = @users_folderD
read only = no
writeable = yes
create mask = 770
directory mask = 770
force directory mode = 770
force group = users_folderD
Donc, évidemment, chaque utilisateur est dans le groupe tout le monde, afin qu'ils puissent monter le partage avec les sous-répertoires. L'accès à chaque sous-répertoire fonctionne parfaitement bien. Mais chaque fois que Ben crée un fichier dans le dossier C, le fichier obtient les autorisations de fichier -rwxr - r-- mais il devrait être -rwxrwx ---
Je pense que les partages pour les dossiers individuels ne fonctionnent pas du tout parce que j'ai essayé de mettre en écriture = non et en lecture seule = oui pour le tester. Redémarrer smbd et nmbd et remonter le partage réseau (sous Windows 10). Les utilisateurs ont pu créer des fichiers et modifier les leurs.
Cela fonctionne sur un Raspberry Pi avec Raspbian. Le disque dur contenant les fichiers est formaté en ext4 et monté via fstab.
force create mode = 770
instruction dans lafolderC
section de votre configuration.Réponses:
Essayez cette configuration (pour les sections de partage):
N'oubliez pas de vérifier la configuration et de redémarrer samba:
Définissez les autorisations:
De cette façon, l'accès direct aux dossiers internes n'est pas autorisé. De plus, ils ne sont pas visibles du tout et ne sont accessibles que via le dossier parent.
la source