Hanya untuk sedikit memperluas jawaban di atas di sini adalah kasus penggunaan dunia nyata. Saya menjalankan aplikasi analisis log perusahaan Splunk pada kotak Redhat. Ini berjalan di bawah pengguna splunk dan grup splunk. Ini mencegah splunk mengakses log di / var / log karena hanya dapat diakses oleh root (atau admin sudo)
Untuk memungkinkan akses hanya baca untuk splunk saja, saya telah menggunakan beberapa ACL dan modifikasi logrotate untuk bertahan.
Anda dapat secara manual mengatur ACL dengan
sudo setfacl -m g:splunk:rx /var/log/messages
Ini tidak akan bertahan karena logrotate tidak akan menerapkan kembali pengaturan ACL jadi untuk solusi yang lebih permanen saya menambahkan aturan untuk logrotate untuk mengatur ulang ACL. Saya menambahkan file ..
/etc/logrotate.d/Splunk_ACLs
dengan
{
postrotate
/usr/bin/setfacl -m g:splunk:rx /var/log/cron
/usr/bin/setfacl -m g:splunk:rx /var/log/maillog
/usr/bin/setfacl -m g:splunk:rx /var/log/messages
/usr/bin/setfacl -m g:splunk:rx /var/log/secure
/usr/bin/setfacl -m g:splunk:rx /var/log/spooler
endscript
}
Periksa status ACL file dengan
$ getfacl /var/log/messages
Untuk info lebih lanjut tentang ACL, lihat
https://help.ubuntu.com/community/FilePermissionsACLs
http://bencane.com/2012/05/27/acl-using-access-control-lists-on-linux/