J'ai un dossier spécifique situé dans "/home/…/reboot/". J'ai une série d'utilisateurs qui nécessitent un accès en lecture seule aux fichiers en constante évolution qu'ils contiennent. Mon problème est que les mêmes utilisateurs ne sont pas autorisés à afficher les fichiers du répertoire parent.
À l'heure actuelle, la seule chose que j'ai en place est que leur dossier de départ se trouve dans "/home/…/reboot/" en modifiant le fichier etc/passwd ; et j'ai besoin de bloquer tous les accès aux autres dossiers. Comment pourrais-je leur donner uniquement accès à ce répertoire ?
Réponse acceptée :
Créez une vue en lecture seule de ce répertoire dans un emplacement différent. Vous pouvez le faire avec bindfs.
Disons que le répertoire en question est /home/confidential/reboot
et que vous souhaitez donner un accès en lecture seule aux utilisateurs du groupe mygroup
. Créez un répertoire /views/mygroup/reboot
qui est accessible à ce groupe.
mkdir -p /views/mygroup/reboot
chown root:mygroup /views/mygroup
chmod 750 /views/mygroup
Créez la vue en lecture seule avec bindfs
. Le processus bindfs doit avoir l'autorisation de lire les fichiers et d'accéder au point de montage; ici, vous l'exécuteriez probablement en tant que root.
bindfs -p a-w /home/confidential/reboot /views/mygroup/reboot
Si les fichiers sous /home/confidential/reboot
ne sont pas lisibles par les utilisateurs de mygroup
et vous voulez les rendre ainsi, changez la spécification des autorisations en -p a=rX
.
Pour créer la vue en lecture seule au démarrage, ajoutez-la à /etc/fstab
:
bindfs#/home/confidential/reboot /views/mygroup/reboot fuse perms=a=rX