Pertanyaan :Cara mencegah pengguna tertentu agar tidak dapat menjalankan perintah tertentu.
Teknik ini menggunakan daftar kontrol akses sistem file (ACL) untuk mencegah akses yang tidak diinginkan.
Perhatian :Fasilitas sudo tidak cocok untuk tujuan ini. Secara khusus, "mengurangi" executable dari preset ALL yang diizinkan tidak berfungsi seperti yang diharapkan.Contoh di bawah ini mencegah pengguna john membuat direktori apa pun melalui perintah mkdir. Langkah-langkahnya adalah:
1. Temukan jalur absolut ke perintah yang akan dikontrol:
# which mkdir /bin/mkdir
2. Tampilkan ACL saat ini untuk program tersebut:
# getfacl /bin/mkdir # file: bin/mkdir # owner: root # group: root user::rwx group::r-x other::r-x
Pengguna, grup, dan entri lainnya sesuai dengan izin akses file tradisional yang dikelola oleh perintah chmod.
3. Tambahkan aturan kontrol akses untuk pengguna john:
# /bin/setfacl -m u:john:--- /bin/mkdir
4. Lihat kontrol akses yang diperbarui:
# getfacl /bin/mkdir getfacl: Removing leading '/' from absolute path names # file: bin/mkdir # owner: root # group: root user::rwx user:john:--- group::r-x mask::rwx other::r-x
5. Uji setelan:
# su - john $ mkdir -bash: /bin/mkdir: Permission denied
Pertimbangkan untuk menambahkan jam tangan eksekusi menggunakan alat auditctl untuk meningkatkan perlindungan ini.
Cara mengaudit semua Perintah yang dijalankan di OEL 5,6 menggunakan auditd