Demande #34869
Ajouter "vfs objects = acl_xattr" dans la configuration Samba de "scribe"
0%
Description
Il s'agit de la configuration Samba du serveur membre "scribe" du domaine dont le serveur "addc" est le contrôleur de domaine.
Les deux captures d'écran ci-jointes ont été réalisées après avoir placé des droits lorsque "acl_xattr" était activé, des droits qui ne peuvent pas être répliqués par les ACLs POSIX.
On voit qu'en mode "ACLs POSIX" des informations sont manquantes.
J'ignore dans quelles mesures cela peut affecter l'utilisation en production, en quoi l'absence de certaines ACLs NON-posix peut gêner, empêcher un fonctionnement normal côté client Windows.
Cependant, selon ces pages du wiki Samba :
https://wiki.samba.org/index.php/Setting_up_a_Share_Using_Windows_ACLs
"""
Idéalement, votre système prend en charge les ACL NFS4. L'exemple suivant est pour des systèmes comme Linux, où vous n'avez pas ce genre d'ACL. Pour configurer des partages à l'aide de listes de contrôle d'accès étendues (ACL) sur un membre de domaine Unix, vous devez activer la prise en charge dans le fichier smb.conf. Pour activer globalement la prise en charge ACL étendue, ajoutez les paramètres suivants à la section [global] de votre fichier smb.conf :
vfs objects = acl_xattr map acl inherit = yes # la ligne suivante n'est requise que pour les version de Samba inférieures à 4.9.0 (Scribe 2.8.1 => samba 2:4.13.17~dfsg-0ubuntu1.20.04.1) store dos attributes = yes
"""
https://wiki.samba.org/index.php/NFS4_ACL_overview
"""
Les ACL Windows sont très différentes des draft ACL POSIX, c'est pourquoi les gens ne sont souvent pas satisfaits du mappage que Samba peut faire entre les ACL Windows et les draft ACL POSIX. Ces mappages implémentés par Samba ou décrits ici sont souvent insuffisants et avec perte car les ACL POSIX ne permettent pas de définir les autorisations précises comme le font les ACL Windows. Le modèle d'héritage fonctionne également assez différemment et ne peut pas être mappé de l'un à l'autre.
Si vous utilisez le module Samba vfs acl_xattr, vous pouvez utiliser toutes les fonctionnalités ACL de Windows, mais vous ne pourrez pas gérer directement les ACL sur le système d'exploitation de l'hôte Samba et vous n'aurez pas les autorisations appliquées par le système de fichiers. Samba gère la gestion des autorisations dans l'espace utilisateur si vous utilisez acl_xattr. En conséquence, vous ne pourrez pas partager les fichiers autrement que via Samba car vous n'avez pas (ou partiellement) les autorisations sur les fichiers dans le système de fichiers lui-même.
"""
Afin de ne pas modifier le comportement des serveurs en production, on pourrait ajouter ces deux options ("vfs objects = acl_xattr" et " map acl inherit = yes") comme paramétrable dans gen_config. Et trouver une astuce pour que sur les serveurs déjà instanciés cette valeur soit à "non je n'active pas ces deux options" et que sur les nouveaux serveurs elle soit à "oui j'active".
Demandes liées
Historique
#1 Mis à jour par Klaas TJEBBES il y a plus d'un an
Sans "vfs objects = acl_xattr" on peut gérer les ACLs avec "setfacl/getfacl".
Avec "vfs objects = acl_xattr" on NE peut PAS gérer les ACLs avec "setfacl/getfacl".
Vu que Scribe utilise "setfacl/getfacl", l'activation de l'option "vfs objects = acl_xattr" est impossible.
Explications des différences côté serveur :
root@scribe: getfattr -m "" -d Nouveau\ dossier/ # file: Nouveau dossier/ security.NTACL=0sBAAEAAAAAgAEAAIAAQAijtr5oKOQmyhHNXx+KtYG5PbvB2IZ2oeZdmE+1yjbzwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcG9zaXhfYWNsAIDhEjcN6tgB7r9g+C49d406yyZaWcLBG5SKVXQWcBPhxbH4TQejvk0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEABIy0AAAA0AAAAAAAAADsAAAAAQUAAAAAAAUVAAAANSSRjyOZP4PzzlS3TwQAAAEFAAAAAAAFFQAAADUkkY8jmT+D885UtwECAAACAAgBCAAAAAADJAD/AR8AAQUAAAAAAAUVAAAANSSRjyOZP4PzzlS3agQAAAADJACvARoAAQUAAAAAAAUVAAAANSSRjyOZP4PzzlS3aQQAAAALFAAAAAAAAQEAAAAAAAMBAAAAABMkAKkAEgABBQAAAAAABRUAAAA1JJGPI5k/g/POVLdvBAAAABMkAKkAEgABBQAAAAAABRUAAAA1JJGPI5k/g/POVLdVBAAAABAkAP8BHwABBQAAAAAABRUAAAA1JJGPI5k/g/POVLdPBAAAABsUAP8BHwABAQAAAAAAAwAAAAAAECQAAAAAAAEFAAAAAAAFFQAAADUkkY8jmT+D885UtwECAAA= system.posix_acl_access=0sAgAAAAEABwD/////AgAAABEpAAACAAUAZSsAAAIABwB5KwAAAgAHAHorAAACAAUAfysAAAQAAAD/////CAAAABEpAAAIAAcAXysAAAgABQBlKwAACAAHAHkrAAAIAAcAeisAAAgABQB/KwAAEAAHAP////8gAAAA/////w== system.posix_acl_default=0sAgAAAAEABwD/////AgAHAF8rAAACAAUAZSsAAAIABwB5KwAAAgAHAHorAAACAAUAfysAAAQAAAD/////CAAAABEpAAAIAAUAZSsAAAgABwB5KwAACAAHAHorAAAIAAUAfysAABAABwD/////IAAAAP////8= user.DOSATTRIB=0sAAAEAAQAAABRAAAAEAAAABecWaJS6dgBF5xZolLp2AE= user.SAMBA_PAI=0sAgSMDgANAAABESkAAAAC/////wAAeisAAAABeisAAAAAeSsAAAABeSsAABAAfysAABABfysAABAAZSsAABABZSsAABAAXysAABABXysAABAAESkAABABESkAAAABESkAAAAAXysAAAAC/////wMAeisAAAMBeisAAAMAeSsAAAMBeSsAAAsBESkAABMAfysAABMBfysAABMAZSsAABMBZSsAABsAXysAAA==
- security.NTACL = ACL mises par Windows et écrites par Samba et le module "vfs objects = acl_xattr", ACL manipulables par "setfattr/getfattr" et "samba-tool ntacl set/samba-tool ntacl get"
- system.posix_acl_access = ACL POSIX manipulables par "setfacl/getfacl"
- system.posix_acl_default = ACL POSIX manipulables par "setfacl -d/getfacl -d"
- user.DOSATTRIB = mappage des attributs DOS (option samba "store dos attributes" qui est activé "yes" par défaut)
- user.SAMBA_PAI = enregistrement par Samba via l'option smb.conf "map acl inherit = yes" des options Windows "ACL héritée" et "ACL protégée"
#2 Mis à jour par Gilles Grandgérard il y a plus d'un an
- Lié à Tâche #34178: Assistance CD26 ajouté
#3 Mis à jour par Klaas TJEBBES il y a environ un an
- Description mis à jour (diff)
#4 Mis à jour par Klaas TJEBBES il y a environ un an
- Description mis à jour (diff)