Nota:
- Questa esercitazione è disponibile in un ambiente di laboratorio gratuito fornito da Oracle.
- Utilizza valori di esempio per le credenziali, la tenancy e i compartimenti di Oracle Cloud Infrastructure. Al termine del laboratorio, sostituire questi valori con quelli specifici del tuo ambiente cloud.
Utilizzare e abilitare le ACL su Oracle Linux
Introduzione
Le liste di controllo dell'accesso (ACL) offrono il controllo dell'accesso a directory e file. Le ACL possono impostare le autorizzazioni di lettura, scrittura ed esecuzione per il proprietario, il gruppo e tutti gli altri utenti del sistema.
Un'ACL è costituita da un set di regole che specificano in che modo un utente o un gruppo specifico può accedere ai file e alle directory abilitati per l'ACL. Una voce ACL normale specifica le informazioni di accesso per un singolo file o directory. Una voce ACL predefinita è impostata solo sulle directory e specifica le informazioni di accesso predefinite per qualsiasi file all'interno della directory che non dispone di un'ACL di accesso.
Quando si imposta una ACL predefinita su una directory, le relative sottodirectory ereditano automaticamente gli stessi diritti. Le ACL possono essere utilizzate con i file system btrfs, ext3, ext4, OCFS2 e XFS, nonché con i file system NFS attivati.
Obiettivi
- Controlla supporto ACL file system
- Utilizzare i comandi
setfaclegetfaclper aggiungere e visualizzare le regole ACL
Requisiti
Un sistema con un disco disponibile e un'installazione di Oracle Linux completamente patch.
Imposta ambiente laboratorio
Nota: quando si utilizza l'ambiente di laboratorio gratuito, vedere Oracle Linux Lab Basics per le connessioni e altre istruzioni d'uso.
-
Se non è già connesso, aprire un terminale e connettersi tramite ssh all'istanza ol-node01.
ssh oracle@<ip_address_of_instance> -
Verificare che i volumi a blocchi esistano.
sudo lsblk -fL'output dell'ambiente di laboratorio gratuito mostra due dispositivi a blocchi:
sda, che contiene il sistema operativo di base esdb, utilizzati da questo laboratorio. L'uso dell'opzione-fvisualizza il tipo di file system (FSTYPE) e l'identificatore univoco universale dei blocchi (UUID).
Attivazione del file system con supporto ACL
-
Creare una directory del punto di accesso.
sudo mkdir /test -
Verificare che il supporto ACL esista.
I file system Oracle Linux come
ext4,btrfsexfsabilitano l'opzione di attivazione acl come impostazione predefinita. In un file systemext4, ad esempio/dev/sdb1, verificarlo contune2fs.sudo tune2fs -l /dev/sdb1 | grep -i aclOutput di esempio:
[oracle@ol-node01 ~]$ sudo tune2fs -l /dev/sdb1 | grep -i acl Default mount options: user_xattr acl -
Installare il disco con il supporto di ACL.
Se per impostazione predefinita il file system non dispone dell'opzione di attivazione acl, passare a
-o aclquando si utilizza il comandomount. Poiché/dev/sdb1utilizzaext4, questa opzione è già attiva per impostazione predefinita.sudo mount -t ext4 /dev/sdb1 /testPer rendere persistente questo punto di attivazione tra i reboot, aggiungerlo al file 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 -
Verificare che il file system sia attivato.
df -T | grep sdb1L'output mostra che il file system ext4
/dev/sdb1esiste al punto di attivazione/test.
Usa funzionalità ACL
-
Provare a creare un file sotto il nuovo punto di attivazione.
touch /test/file1Output di esempio:
touch: cannot touch '/test/file1': Permission deniedIl comando non riesce perché l'utente
oraclenon dispone dell'autorizzazione per creare file nella directory/test. -
Recuperare le informazioni ACL della directory.
sudo getfacl /testOutput di esempio:
[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 -
Aggiungere una regola ACL alla directory.
sudo setfacl -m u:oracle:rwx /testLa regola concede l'autorizzazione lettura, scrittura ed esecuzione all'utente
oracle. -
Controllare le informazioni ACL aggiornate della directory.
sudo getfacl /testOutput di esempio:
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-xL'output mostra la nuova riga
user:oracle:rwxaggiunta. -
Mostra il formato elenco lungo solo della directory.
ls -ld /testOutput di esempio:
drwxrwxr-x+ 3 root root 4096 Jul 13 20:48 /testLe autorizzazioni mostrate nell'output includono un segno più (
+) che indica l'inclusione di una ACL. -
Provare a creare di nuovo il file.
touch /test/file1Questa volta il comando dovrebbe essere completato.
-
Confermare la creazione del file.
ls -l /test
Per ulteriori opzioni ed esempi, vedere le pagine man getfacl o man setfacl.
Per ulteriori informazioni
Vedere altre risorse correlate:
Altre risorse di apprendimento
Esplora altri laboratori su docs.oracle.com/learn o accedi ad altri contenuti per la formazione gratuita sul canale YouTube di Oracle Learning. Inoltre, visitare education.oracle.com/learning-explorer per diventare Oracle Learning Explorer.
Per la documentazione sul prodotto, visitare Oracle Help Center.
Use and Enable ACLs on Oracle Linux
F60348-01
July 2022
Copyright © 2022, Oracle and/or its affiliates.