Ini adalah jawaban yang saya tulis untuk pertanyaan sebelumnya:
Umumnya jika Anda ingin tahu apa proses / pengguna / file lakukan tanpa harus menjalankannya 24/7 Anda menggunakan auditctl.
Dengan anggapan Anda memiliki kontrol audit kernel terbaru-ish harus operasi sederhana. (Ini dalam Debian-fu, jika Anda menjalankan terjemahan Red Hat yang sesuai)
# apt-get install auditd
Pastikan itu berjalan (/etc/init.d/auditd status).
auditctl -a entry,always -F arch=b64 -S open -F pid=<process id>
Ganti b64 dengan b32 jika Anda menjalankan lengkungan 32-bit, buka dapat diganti dengan panggilan sistem apa pun atau kata 'semua'
Untuk lebih lanjut baca manual auditctl.
Anda dapat menggunakan metode ini dan memintanya untuk menonton pemutusan sistem 'tautan'.
Parameter -w berguna untuk menonton file / direktori, tetapi ketika halaman manual menjelaskan ada peringatan.
-w path Menyisipkan arloji untuk objek sistem file di path. Anda tidak dapat memasukkan arloji ke direktori tingkat atas. Ini dilarang oleh kernel. Wildcard juga tidak didukung dan akan menghasilkan peringatan. Cara jam tangan bekerja adalah dengan melacak inode secara internal. Ini berarti bahwa jika Anda menaruh arloji di direktori, Anda akan melihat apa yang tampak sebagai peristiwa file, tetapi itu sebenarnya hanya pembaruan data meta. Anda mungkin melewatkan beberapa acara dengan melakukan ini. Jika Anda perlu menonton semua file dalam direktori, disarankan untuk menempatkan arloji individual di setiap file. Tidak seperti aturan audit syscall, jam tangan tidak memengaruhi kinerja berdasarkan jumlah aturan yang dikirim ke kernel.
Mungkin incron bisa digunakan?
sumber
Beberapa ide. Anda dapat menggunakan
strace
untuk melihat apa yang sedang dilakukan aplikasi Anda, tetapi mungkin menghasilkan log log dan dapat memperlambat sistem.Gagasan lain adalah menggunakan
inotifywait
, lalulsof/fuser
pada file untuk melihat apa yang menggunakannya. Anda dapat mencoba menjalankan skrip ini dengan prioritas tinggi (jika Anda bisa) untuk mendapatkan informasi seakurat mungkin. Mungkin tidak akan menerimaunlink
panggilan, karena file akan hilang sebelum acara dikirimkan.sumber
-f
bendera, untuk mengikuti anak-anak.Meskipun rekomendasi auditix fenix tampak ideal, Anda dapat menemukan IDS sistem file seperti AIDE bermanfaat. Sayangnya, tidak mungkin cukup halus untuk apa yang Anda coba isolasi.
Saya akan sering menulis skrip sebagai solusi untuk masalah seperti apa yang Anda gambarkan. Jika Anda tidak dapat mencapai apa yang Anda inginkan dengan solusi yang disarankan, tulis sendiri sesuatu. Ini seringkali tidak terlalu rumit.
sumber