Remarque :
- Ce tutoriel est disponible dans un environnement d'atelier gratuit fourni par Oracle.
- Il utilise des exemples de valeur pour les informations d'identification Oracle Cloud Infrastructure, la location et les compartiments. A la fin de votre atelier, remplacez ces valeurs par celles propres à votre environnement cloud.
Utilisation et activation des listes de contrôle d'accès sur Oracle Linux
Introduction
Les listes de contrôle d'accès (ACL) permettent de contrôler l'accès aux répertoires et aux fichiers. Les ACL peuvent définir des autorisations de lecture, d'écriture et d'exécution pour le propriétaire, le groupe et tous les autres utilisateurs système.
Une ACL se compose d'un ensemble de règles qui spécifient comment un utilisateur ou un groupe spécifique peut accéder aux fichiers et répertoires compatibles ACL. Une entrée d'ACL standard spécifie les informations d'accès pour un seul fichier ou répertoire. Une entrée d'ACL par défaut est définie uniquement sur les répertoires et spécifie les informations d'accès par défaut pour tout fichier du répertoire ne disposant pas d'ACL d'accès.
Lors de la définition d'une ACL par défaut sur un répertoire, ses sous-répertoires héritent automatiquement des mêmes droits. Les ACL peuvent être utilisées avec les systèmes de fichiers btrfs, ext3, ext4, OCFS2 et XFS, ainsi que les systèmes de fichiers NFS montés.
Objectifs
- Vérifier la prise en charge de l'ACL du système de fichiers
- Utiliser les commandes
setfacletgetfaclpour ajouter et afficher des règles d'ACL
Conditions
Système doté d'un disque disponible et d'une installation entièrement corrigée d'Oracle Linux.
Environnement des exercices de configuration
Remarque : lorsque vous utilisez l'environnement d'atelier gratuit, reportez-vous à Oracle Linux Lab Basics pour obtenir des instructions de connexion et d'utilisation.
-
S'il n'est pas déjà connecté, ouvrez un terminal et connectez-vous via SSH à l'instance ol-node01.
ssh oracle@<ip_address_of_instance> -
Vérifiez que les volumes de blocs existent.
sudo lsblk -fLa sortie de l'environnement d'atelier gratuit affiche deux périphériques en mode bloc :
sda, qui contient le système d'exploitation de base etsdb, que cet atelier utilise. L'option-faffiche le type de système de fichiers (FSTYPE) et l'identificateur universel (UUID) des blocs.
Montage du système de fichiers avec la prise en charge ACL
-
Créez un répertoire de point de montage.
sudo mkdir /test -
Vérifiez que la prise en charge des ACL existe.
Les systèmes de fichiers Oracle Linux tels que
ext4,btrfsetxfsactivent l'option de montage acl par défaut. Sur un système de fichiersext4tel que/dev/sdb1, vérifiez-le avectune2fs.sudo tune2fs -l /dev/sdb1 | grep -i aclExemple de sortie :
[oracle@ol-node01 ~]$ sudo tune2fs -l /dev/sdb1 | grep -i acl Default mount options: user_xattr acl -
Montez le disque avec la prise en charge d'ACL.
Si l'option de montage acl n'est pas activée par défaut sur le système de fichiers, transmettez
-o acllors de l'utilisation de la commandemount. Etant donné que/dev/sdb1utiliseext4, cette option est déjà activée par défaut.sudo mount -t ext4 /dev/sdb1 /testPour rendre ce point de montage persistant après les réinitialisations, ajoutez-le au fichier fstab.
MYUUID=$(sudo blkid | grep UUID= | grep sdb1 | awk '{ print $2 }') echo "$MYUUID /test ext4 defaults 0 0" | sudo tee -a /etc/fstab > /dev/null -
Vérifiez que le montage du système de fichiers existe.
df -T | grep sdb1La sortie indique que le système de fichiers ext4
/dev/sdb1existe au point de montage/test.
Utiliser la fonctionnalité ACL
-
Essayez de créer un fichier sous le nouveau point de montage.
touch /test/file1Exemple de sortie :
touch: cannot touch '/test/file1': Permission deniedLa commande échoue car l'utilisateur
oraclen'est pas autorisé à créer des fichiers dans le répertoire/test. -
Obtenir les informations ACL du répertoire.
sudo getfacl /testExemple de sortie :
[oracle@ol-node01 ~]$ sudo getfacl /test getfacl: Removing leading '/' from absolute path names # file: test # owner: root # group: root user::rwx group::r-x other::r-x -
Ajoutez une règle d'ACL au répertoire.
sudo setfacl -m u:oracle:rwx /testLa règle octroie les droits d'accès read, write et execute à l'utilisateur
oracle. -
Vérifiez les informations ACL mises à jour du répertoire.
sudo getfacl /testExemple de sortie :
getfacl: Removing leading '/' from absolute path names # file: test # owner: root # group: root user::rwx user:oracle:rwx group::r-x mask::rwx other::r-xLa sortie affiche la nouvelle ligne
user:oracle:rwxajoutée. -
Affiche le format de liste long du répertoire uniquement.
ls -ld /testExemple de sortie :
drwxrwxr-x+ 3 root root 4096 Jul 13 20:48 /testLes autorisations affichées dans la sortie incluent un signe plus (
+) indiquant l'inclusion d'une ACL. -
Essayez de créer à nouveau le fichier.
touch /test/file1La commande doit réussir cette fois.
-
Confirmez la création du fichier.
ls -l /test
Consultez les pages man getfacl ou man setfacl pour obtenir des options et des exemples supplémentaires.
Pour plus d'informations
Voir d'autres ressources connexes :
Ressources de formation supplémentaires
Explorez d'autres ateliers sur docs.oracle.com/learn ou accédez à davantage de contenu de formation gratuit sur le canal Oracle Learning YouTube. En outre, accédez à education.oracle.com/learning-explorer pour devenir explorateur Oracle Learning.
Pour consulter la documentation du produit, consultez Oracle Help Center.
Use and Enable ACLs on Oracle Linux
F60349-01
July 2022
Copyright © 2022, Oracle and/or its affiliates.