Il y a quelque temps, lors d'une conversation dans IRC, un utilisateur d'un canal dans lequel je me trouvais a suggéré à quelqu'un de définir un répertoire afin qu'il hérite de l'ID utilisateur sur les fichiers pour résoudre un problème rencontré par quelqu'un d'autre. À l'époque, j'ai pris la parole et dit que "Linux ne prend pas en charge les répertoires setuid". Après cela, la personne qui m'a donné des conseils m'a montré une boîte à pâte ( http://codepad.org/4In62f13 ) de son système honorant la permission setuid définie sur un répertoire.
Juste pour expliquer, quand je dis "linux ne prend pas en charge les répertoires setuid", ce que je veux dire, c'est que vous pouvez aller dans "répertoire chmod u + s" et cela mettra le bit sur le répertoire. Cependant, Linux (tel que je l'ai compris) ignore ce bit (sur les répertoires).
Essayez comme je pourrais, je ne peux pas tout à fait répliquer cette boîte à pâte. Quelqu'un m'a suggéré une fois qu'il pourrait être possible d'émuler le comportement avec selinux - et de jouer avec les règles, il est possible de forcer un uid sur un fichier, mais pas à partir d'une autorisation de répertoire setuid (que je peux voir). La lecture sur Internet a été assez peu informative - la plupart des endroits affirment "non, setuid sur les répertoires ne fonctionne pas avec linux" avec parfois "cela peut être fait dans des circonstances spécifiques" (comme ceci: http://arstechnica.com/ etc / linux / 2003 / linux.ars-12032003.html )
Je ne me souviens pas qui était la personne d'origine, mais le système d'origine était un système Debian 6, et le système de fichiers qu'il exécutait était monté xfs avec "default, acl". J'ai essayé de le répliquer, mais pas de chance jusqu'à présent (essayé jusqu'à présent avec différentes versions de debian, ubuntu, fedora et centos)
Quelqu'un peut-il me dire sur quoi ou comment obtenir un système pour honorer setuid sur un répertoire?
grpid|bsdgroups
ounogrpid|sysvgroups
) qui signifie que les fichiers dans les répertoires sont créés avec le groupe du répertoire plutôt qu'avec le groupe du propriétaire; peut-être jouer avec ça?