Saya memiliki pengguna ini yang memiliki hak sudo terbatas, namun ia berhasil mengacaukan dari waktu ke waktu. Saya ingin mengawasi petualangannya, sehingga saya bisa membalikkan kerusakan dengan mengurangi penggalian. Idealnya, saya ingin layanan dengan fungsi berikut terintegrasi dengan baik dan rapi
- Melacak input dan output shell seperti
ttyrec
(atauscript
atausudo
jika logging diatur) dan dapat memutar ulang sesi seperti ttyplay (atauscriptreplay
atausudoreplay
) Kompatibilitas dengan program ncurses akan bagus, tetapi tidak perlu,ttyrec
dapat melakukannya rupanya. - Melacak akses file, pembuatan, dan modifikasi. Idealnya, itu juga bisa membuat cadangan file setiap kali diubah atau dihapus.
Sejauh ini saya telah menemukan beberapa alat yang harus saya atur untuk mendapatkan sebagian besar fungsionalitas yang diminta, tetapi saya belum menemukan produk OSS yang akan mengintegrasikannya dengan baik (edisi komunitas Lynis tidak begitu jelas pada fungsionalitas) .
- Saya bisa memasukkan
ttyrec $(mktemp)
,script $(mktemp)
atausudo -u $USER -i
(dengan mengatur sudo logging) di.bashrc
untuk login shell IO. - Mengatur audit untuk melacak akses file dalam beberapa dirs, seperti
/usr
,/etc
,/var
. - Buat snapshot LVM ketika dia masuk, tapi itu sedikit berlebihan dan mungkin menurunkan kinerja sistem.
EDIT: ttyrec
tampaknya menjadi alternatif yang lebih baik script
, itu akan memenuhi semua persyaratan IO logging saya. Sekarang saya perlu menemukan cara yang baik untuk memanipulasi file.
Saya akan berterima kasih atas saran atau rekomendasi praktik terbaik.
script
sesi. Ini bukan tentang memata-matai dia, tetapi tentang memberinya jaminan bahwa kesalahannya dapat dilacak kembali.Jawaban:
Mungkin Anda bisa mendorong admin Anda untuk menggunakan praktik logging yang baik. Layar Gnu melakukan ini dengan cukup baik. Ini menambahkan fungsionalitas yang sedikit lebih banyak daripada yang Anda cari, dan juga memiliki kemampuan untuk beralih logging, sehingga ia bisa mematikannya sendiri, jika diinginkan. Itu tidak memiliki fungsi replay, tetapi bisa menjadi bagian dari solusi, karena melacak sebagian besar input dan output ketika logging aktif.
Dalam kasus penggunaan Anda, Anda ingin menambahkan
deflog on
ke file screenrc untuk memiliki windows default baru dengan login.Namun ini memiliki kelemahan karena dapat diubah oleh pengguna Anda.
Anda dapat melakukan pemantauan file menggunakan Monit , yang mengawasi perubahan file, dan juga dapat memeriksa kondisi berbagai layanan. Gabungkan ini dengan sesuatu seperti rsync pada cronjob (karena Anda seharusnya memiliki sesuatu seperti itu) dan Anda memiliki ide yang cukup solid tentang apa yang sebenarnya terjadi di server, terutama jika Anda mengaktifkan stempel waktu yang sangat ketat di layar dan percayai pengguna Anda tidak mengutak-atik pengaturan logging.
Dengan menggabungkan alat-alat ini, Anda harus memiliki sistem yang cukup kuat dan ringan yang memungkinkan Anda mengawasi pengguna dengan baik sambil memastikan tingkat keselamatan dasar.
sumber