Concepts de base et utilisation typique de Linux ACL_LINUX_Operating System

2020-05-23

Qu'est-ce que l'ACL

Le nom complet d'ACL est Access Control List (liste de contrôle d'accès), une liste de contrôle d'accès pour les fichiers / répertoires. Il fournit un mécanisme de gestion des autorisations supplémentaire et plus flexible pour le système de fichiers basé sur la gestion des autorisations UGO. Il est conçu comme un complément à la gestion des droits sur les fichiers UNIX.

ACL vous permet de définir toutes les autorisations d'accès aux fichiers ou aux répertoires pour tout utilisateur ou groupe d'utilisateurs.

À quoi sert ACL

Puisqu'il s'agit d'un complément à la gestion des pouvoirs UGO, ACL a naturellement besoin des compétences que UGO ne peut pas ou est difficile à faire.

1. Vous pouvez définir des autorisations pour les utilisateurs

2. Vous pouvez définir des autorisations pour les groupes d'utilisateurs

3. Les fichiers / répertoires enfants héritent des autorisations du répertoire parent

Vérifiez si ACL est pris en charge

ACL nécessite la coopération du noyau Linux et du système de fichiers pour fonctionner. La plupart des distributions Linux que nous pouvons voir sont prises en charge par défaut. Mais il vaut mieux pouvoir vérifier en premier:


 sudo tune2fs -l / dev / sda1 | grep "Options de montage par défaut:"
 Options de montage par défaut: user_xattr acl 
 

Nous pouvons voir que le support acl a été ajouté par défaut (Options de montage par défaut :).

Comment définir ACL

Nous pouvons utiliser les commandes setfacl et getfacl pour définir ou observer les autorisations acl des fichiers / répertoires.

setfacl

Il n'y a pas beaucoup de paramètres, ils sont listés directement:


 setfacl [-bkRd] [{-m | -x} paramètre acl] nom de fichier / répertoire
 -m: configure les paramètres acl suivants pour les fichiers / répertoires et ne peut pas être utilisé avec -x;
 -x: supprime les paramètres acl suivants, qui ne peuvent pas être utilisés avec -m;
 -b: supprime tous les paramètres de configuration ACL;
 -k: supprime les paramètres ACL par défaut;
 -R: configure récursivement acl;
 -d: configurez le "paramètre acl par défaut", qui n'est valide que pour le répertoire, et les données nouvellement créées dans ce répertoire feront référence à cette valeur par défaut; 
 

getfacl


 fichier / répertoire getfacl nom 
 

Exemple

Définir des autorisations pour les utilisateurs

Créez d'abord un fichier de test test, puis vérifiez ses autorisations par défaut:


 test tactile
 ll test
 -rw-r - r-- 1 racine root 0 28 mai 09:04 test
 test getfacl
 # fichier: test
 # propriétaire: root
 # groupe: racine
 user :: rw-
 groupe :: r--
 autre :: r - 
 

Définissez les autorisations de lecture et d’écriture des fichiers de test pour les utilisateurs Apache:


 setfacl –m u: apache: test rwx 
 

Vérifiez la modification des attributs du fichier de test:


 ll test
 -rw-rwxr- + 1 racine root 0 28 mai 09:04 test 
 

La partie autorité a plus de "+", et elle est différente de l'original (644).

Affichez les modifications des autorisations ACL:


 test getfacl
 ...
 utilisateur: apache: rwx
 ...
 masque :: rwx
 ... 
 

Par rapport à avant le réglage, il y a plus d'utilisateurs: apache: rwx et mask :: rwx. À l'heure actuelle, l'utilisateur apache a déjà l'autorisation de lire, écrire et exécuter des fichiers de test.

Définir les autorisations pour les groupes d'utilisateurs

Presque les mêmes que pour les paramètres de l'utilisateur, il suffit de remplacer le u en minuscule par le g en minuscule.

Les fichiers / répertoires enfants héritent des autorisations du répertoire parent

Ceci est un excellent exemple, il permet aux sous-fichiers ou sous-dossiers que nous créons d'hériter des autorisations du dossier parent!


 mkdir mydir
 ll -d mydir
 drwxr-xr-x 2 root root 4096 28 mai 09:35 mydir
 setfacl –m d: u: apache: rwx mydir 
 

Notez que le paramètre d joue ici un rôle décisif.

Vérifiez les modifications des attributs:


 getfacl mydir
 ...
 par défaut: user :: rwx
 par défaut: utilisateur: apache: rwx
 par défaut: group :: r-x
 par défaut: mask :: rwx
 par défaut: autre :: r-x 
 

Plus d'entrées au début de la valeur par défaut, essayez de créer un nouveau fichier sous mydir:


 touchez mydir / abc
 getfacl mydir / abc
 ...
 utilisateur: apache: rwx #effective: rw-
 group :: r-x #effective: r--
 masque :: rw-
 ... 
 

OK, il semble assez bon. Par défaut, les utilisateurs Apache peuvent lire, écrire et exécuter ce fichier.

Voici une brève introduction au concept d'ACL et à une utilisation typique. Pour plus d'utilisation, veuillez vous référer au document d'aide.

le


www.xd1998.com@2001-2030Partage De Technologie