RHEL 7 – Catatan RHCSA (Lembar Cheat)
Daftar kontrol akses file (FACL) atau hanya ACL adalah daftar pengguna/grup tambahan dan izin mereka ke file. Meskipun izin file default melakukan tugasnya dengan sempurna, itu tidak memungkinkan Anda untuk memberikan izin kepada lebih dari satu pengguna atau satu grup pada file yang sama.
Cara mengetahui jika file memiliki ACL yang dilampirkan
Perintah ls -l akan menghasilkan output seperti gambar di bawah ini. Perhatikan + tanda tangani di akhir izin. Ini mengonfirmasi bahwa file tersebut memiliki ACL yang dilampirkan.
# ls -l -rw-r--r-+ 1 root root 0 Sep 19 14:41 file
Melihat ACL
Untuk menampilkan detail informasi ACL dari sebuah file gunakan perintah getfacl. Jika Anda perhatikan dengan seksama, pengguna sam dan john memiliki beberapa izin tambahan (ditampilkan disorot). Izin pengguna/grup default ditentukan menggunakan "pengguna::izin" dan "grup::
# getfacl /tmp/test # file: test # owner: root # group: root user::rw- user:john:rw- user:sam:rwx group::r-- mask::rwx other:---
Sebaliknya, jika Anda memeriksa ACL pada file dengan "tanpa ACL", baris "pengguna:" tambahan dan baris "masker" tidak akan ditampilkan dan izin file standar akan ditampilkan. :
# getfacl test # file: test # owner: root # group: root user::rw- group::r-- other::r--
Membuat dan Mengelola FACL
Perintah setfacl digunakan untuk mengatur ACL pada file yang diberikan. Untuk memberikan akses rw ke pengguna john pada file /tmp/test :
# setfacl -m u:john:rw /tmp/test
Opsi -m memberi tahu setfacl untuk memodifikasi ACL pada file yang disebutkan dalam baris perintah. Alih-alih pengguna john, kami dapat memiliki grup untuk memiliki izin khusus pada file:
# setfacl -m g:accounts:rw /tmp/test
FACL untuk beberapa pengguna dan grup juga dapat diatur dengan satu perintah :
# setfacl -m u:john:rw,g:accounts:rwx /tmp/test
ACL default
Dengan menyetel ACL default, Anda akan menentukan izin yang akan disetel untuk semua item baru yang dibuat di direktori. Namun izin file dan subdirektori yang ada tetap sama.
Untuk membuat FACL default pada direktori :
# setfacl -m default:u:john:rw /accounts
Perhatikan izin default dalam perintah getfacl :
# getfacl accounts/ # file: accounts/ # owner: root # group: root user::rwx group::r-x other::r-x default:user::rwx default:user:john:rw- default:group::r-x default:mask::rwx default:other::r-x
Menghapus FACL
Untuk menghapus ACL, gunakan perintah setfacl dengan opsi -x :
# setfacl -x u:john /tmp/test
Perintah di atas menghapus ACL untuk pengguna john pada file /tmp/test. ACL untuk pengguna/grup lain jika ada tetap tidak terpengaruh. Untuk menghapus semua ACL yang terkait dengan file, gunakan opsi -b dengan setfacl :
# setfacl -b /tmp/testAnda juga dapat membuat cadangan ACL menggunakan getfacl, dan memulihkan ACL menggunakan perintah setfacl. Untuk membuat cadangan, gunakan getfacl -R /dir> file.acls. Untuk memulihkan pengaturan dari file cadangan, gunakan setfacl –restore=file.acl