Metode yang paling kuat tampaknya adalah auditd:
http://blog.ptsecurity.com/2010/11/requirement-10-track-and-monitor-all.html
Auditd pada dasarnya memotong semua panggilan sistem dan memeriksanya terhadap seperangkat aturan Anda. Jadi dalam /etc/audit/audit.rules
file Anda, Anda akan memiliki sesuatu seperti berikut:
# This file contains the auditctl rules that are loaded
# whenever the audit daemon is started via the initscripts.
# The rules are simply the parameters that would be passed
# to auditctl.
# First rule - delete all
-D
# Increase the buffers to survive stress events.
# Make this bigger for busy systems
-b 320
# Feel free to add below this line. See auditctl man page
-a always,exit -F euid=0 -F perm=wxa -k ROOT_ACTION
Aturan terakhir menjadi satu-satunya aturan non-default.
Kelemahan utama dengan pendekatan ini (dan alasan saya menemukan pertanyaan ini ketika mencari alternatif) adalah bahwa file log mentah cukup samar dan hanya membantu setelah menjalankan program kueri pada file log mentah: ausearch
Contoh kueri untuk aturan itu adalah:
ausearch -ts today -k ROOT_ACTION -f audit_me | aureport -i -f
Solusi akal sehat mungkin akan membuat cron yang akan menanyakan log audit mentah Anda dan kemudian mengirimkannya ke solusi logging Anda.