ACL

Les ACLs ( Access Control List) Permet d'étendre les droits POSIX qui permet de donné un contrôle d'accès donnant ou supprimant des droits d'accès à une personne ou un groupe.

Prérequis pour utiliser les ACLs sous Linux:

  • Prérquis du Kernel
    • CONFIG_FS_POSIX_ACL=y
    • CONFIG_Système_de_fichier_FS_POSIX_ACL=y

Pour vérifier que ces prérequis sont présent :

        # grep ACL /boot/config-*
            /boot/config-3.10.0-514.16.1.el7.x86_64:CONFIG_EXT4_FS_POSIX_ACL=y
            /boot/config-3.10.0-514.16.1.el7.x86_64:CONFIG_XFS_POSIX_ACL=y
            /boot/config-3.10.0-514.16.1.el7.x86_64:CONFIG_BTRFS_FS_POSIX_ACL=y
            /boot/config-3.10.0-514.16.1.el7.x86_64:CONFIG_FS_POSIX_ACL=y
  • Outils prérequis :

  • Paquet acl
  • Système de fichier : option de montage dans /etc/fstab colonnes 4 paramètres "option" acl

Fonctionnement :

  • 3 bits de permission
  • Mise en place par le propriétaire

Afficher les ACLs :

Syntaxe :

getfacl FICHIER

Créer ou modifier les ACLs :

Syntaxe :

setfacl [OPTIONS] -m [d:] permission [PERMISSIONS] FICHIER

Options :

Options Description
-r Récursive
-d Héritage (directory)
  • Permission:
    • Préfixe : [utilisateur, groupe] droits

Exemple :

setfacl -m u: shado:rw- FICHIER 

Supprimer un ACL :

  • Toutes les ACLs

        setfacl -b FICHIER 

Uniquement les permissions par défaut :

setfacl -k fichier
  • Une ACl :

    setfacl -x (acl_name) FICHIER 
  • Masque :

Exemple :

setfacl -m ::r-x FICHIER

Hiérarchie des droits sur les système Linux :

  • Droits POSIX propriétaire
    • Masque
      • ACL utilisateur
        • ACL groupe
          • ACL g::
            • POSIX groupe propriétaire