Ceci est une ancienne révision du document !



Les Access Control List : Gestion avancée des droits sous linux

Par défaut, la gestion des droits sous linux est relativement basique (bien que souvent suffisante). En effet, il est possible de permettre ou interdire la lecture, l'écriture et l'exécution de fichiers que pour trois catégories d'utilisateurs : le propriétaire du fichier, le groupe auquel appartient le propriétaire et le reste du monde. Cette gestion des droits permet de configurer les accès aux fichiers dans la plupart des situations simples mais peut s'avérer limitée, par exemple, dans un contexte où plusieurs utilisateurs doivent accéder à une ressource partagée alors qu'ils n'ont pas de groupe commun.

Les ACL permettent de pallier ce manque grâce à une gestion avancée des droits. Ainsi, il devient possible d'autoriser un utilisateur tiers à effectuer des opérations sur un fichier (dossier) sans autoriser tout un groupe ou tout le reste du monde. Voir les exemples pour plus d'informations.

Les ACL ne sont nativement pas activées sur Ubuntu mais le noyau les prend en charge. Le paquet apt://acl doit normalement être déjà installé.

La commande

grep ACL /boot/config-[version du noyau]

permet de vérifier si le noyau prend en charge les ACL. Elle doit retourner 'y' pour le type système de fichier qui nous intéresse.

Il faut maintenant préciser lors du montage de la partition que l'on veut utiliser les ACL.

Soit en montant la partition avec l'option acl

mount -t ext3 -o defaults,acl /dev/sdaX/ /mount/folder/

soit en inscrivant l'option dans le fichier fstab

UUID=xxxxxxxxx /               ext4    [autres options],acl 0       1

puis en remontant la partition (si l'on ne veut pas redémarrer)

mount -a -o remount /dev/sdax

En ligne de commande

l'attribution des droits se fait grâce à la commande setfacl, la lecture des droits avec getfacl

Ainsi les deux commandes suivantes sont équivalentes :

chmod u=rw fichier
setfacl -m u::rw fichier

En graphique

Une fois compris les concepts des ACL, il est possible de gérer les changements de droits en graphique grâce au paquet apt://eiciel.

Exemples

autoriser à "utilisateur" la lecture et l'écriture sur "fichier"

setfacl -m u:utilisateur:rw fichier

définir l'accès en lecture par défaut pour "utilisateur" pour les nouveaux fichiers créés dans "dossier"

setfacl -m d:u:utilisateur:rw dossier

Contributeur : nesthib

  • acl.1260884858.txt.gz
  • Dernière modification: Le 18/04/2011, 14:48
  • (modification externe)