Déjà petite explication par ce que j'entends par autonome. Pour moi autonome veut dire sans authentification centralisé par un AD.
Cependant, il sera possible de mettre en place des ACL basé sur les groupes ou les noms d'utilisateurs.
Il faut commencer par installer tout les packets nécessaires :
# apt install samba acl xattr
Ensuite il vous faudra remplacer le contenu du fichier /etc/samba/smb.conf par celui ci:
[global] admin users = sambaadmin server string = Serveur de fichiers workgroup = WORKGROUP log file = /var/log/samba/log.%m max log size = 1000 syslog = 0 panic action = /usr/share/samba/panic-action %d map to guest = Bad User obey pam restrictions = Yes pam password change = Yes passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* . passwd program = /usr/bin/passwd %u server role = standalone server unix password sync = Yes dns proxy = No idmap config * : backend = tdb store dos attributes = Yes map acl inherit = Yes vfs objects = acl_xattr [Mon partage] path = /mnt/data/Mon partage read only = No
Pour créer des partages multiples, il vous faudra simplement copier/coller la section “Mon partage” et de l'ajuster.
Il vous faudra définir un mot de passe au compte “sambaadmin” :
# smbpasswd -a sambaadmin
puis on va redémarrer les services samba :
# systemctl restart smbd nmbd
Alors il vous faudra simplement ajouter cette ligne au fichier /etc/group :
groupe1:x:10000:utilisateur1,utilisateur2
qu'il faudra ajuster :
Puis il faudra l'ajouter a samba :
net groupmap add rid=10000 ntgroup="groupe1" unixgroup=groupe1 type=d
Alors il vous faudra simplement ajouter cette ligne au fichier /etc/passwd :
utilisateur1:x:20000:65534:Prénom NOM,Adresse,Num de tel,adresse mail:/dev/null:/bin/false
qu'il faudra ajuster :
Puis il faudra l'ajouter a samba via :
# smbpasswd -a utilisateur1
Seul les utilisateurs (ou groupe) ayant la permission SeDiskOperatorPrivilege ont le droit de changer les permissions sur les partages réseaux. Par défaut, seul les administrateurs samba ont le droit de les modifier.
Pour ajouter cette permission à un groupe ou un utilisateur, il vous faut taper (en ayant le mot de passe du compte sambaadmin :
net rpc rights grant "groupe1" SeDiskOperatorPrivilege -U sambaadmin
Puis vous pourrez modifier vos ACL. Pour cela je vous renvoie vers la page de documentation officiel de SAMBA (en Anglais)
Pour cela il vous faudra ajouter ceci dans la section du partage dans le fichier /etc/samba/smb.conf :
vfs objects = recycle,acl_xattr recycle:excludedir = /recycle,/tmp,/temp,/TMP,/TEMP recycle:exclude = *.tmp,*.temp,*.o,*.obj,*.TMP,*.TEMP recycle:noversions = *.tmp,*.temp,*.o,*.obj,*.TMP,*.TEMP recycle:versions = No recycle:keeptree = Yes recycle:touch = Yes recycle:repository = /mnt/data/%S/Corbeille
et chaque fichiers supprimés seront placer dans le dossier Corbeille a la racine dans le dossier /mnt/data/%S/Corbeille (%S représente le nom du partage)