GNU/Linux >> Belajar Linux >  >> Linux

Status pengguna dan pemantauan aktivitas di Linux dengan GNU acct

Ada banyak aplikasi pemantauan untuk server, dan mereka telah melakukan banyak hal untuk membantu adopsi Linux dengan sysadmin yang tidak terbiasa dengan Terminal atau yang benar-benar membutuhkan representasi grafis data. Namun, Linux telah menjadi sistem multi-pengguna sejak awal, dan UNIX jauh sebelum itu, jadi ada alat bawaan yang kembali 40 tahun untuk membantu Anda memantau siapa yang masuk ke server Anda, siapa yang menggunakan sumber daya, dan untuk apa.

Anda tidak perlu menjadi paranoid atau bahkan usil untuk membenarkan mengawasi server yang telah menjadi tanggung jawab Anda. Paket psacct berisi beberapa perintah untuk mengumpulkan laporan terperinci tentang status dan aktivitas pengguna.

akton

Tidak semua perintah di acct utilitas mengharuskan Anda mengaktifkan akuntansi, tetapi banyak yang melakukannya. Jika Anda ingin menggunakan acct perintah, Anda harus mengaktifkan akuntansi dengan accton perintah.

Untuk mengaktifkan:

$ sudo accton on

Secara default, catatan akuntansi disimpan di /var/account/pacct . File ini mungkin bisa menjadi cukup besar, jadi gunakan logrotate atau alat serupa untuk memastikan pengelolaan log yang tepat.

Untuk menonaktifkan akuntansi:

$ sudo accton off

ac

ac perintah mencetak statistik tentang waktu koneksi. Jika Anda perlu mendapatkan gambaran umum tentang seberapa aktif pengguna pada suatu sistem, --individual-totals pilihan menyediakan itu. Ini menghasilkan laporannya dalam hitungan jam berdasarkan login dan logout yang dicatat di /var/log/wtmp berkas.

File akuntansi wtmp dikelola oleh init(8) dan login(1) tetapi tidak juga ac atau login benar-benar membuat file. Jika wtmp tidak ada, maka tidak ada laporan yang dihasilkan, tetapi Anda dapat mengarahkan ac ke lokasi alternatif menggunakan --file pilihan. Jika wtmp file tidak ada di sistem Anda, Anda dapat membuat wtmp empty kosong file untuk mengaktifkan pelaporan di sistem Anda.

Untuk mendapatkan laporan tentang waktu login untuk pengguna individu:

$ ac --individual-totals
seth     20.16
larry    43.60
curly    10.32
moe      35.11

Anda juga bisa mendapatkan total harian:

$ ac --daily-totals
Jan 20  total       22.61
Jan 21  total       73.60
Jan 22  total       84.00
Jan 23  total       100.69
Jan 24  total       18.24
Jan 25  total        2.43
Jan 27  total       35.36
Today   total       62.13

lastcomm

lastcomm perintah menampilkan perintah terakhir dikeluarkan pada sistem untuk pengguna tertentu. Jika tidak ada pengguna yang ditentukan, maka laporan tentang pengguna saat ini akan dibuat.

$ sudo lastcomm --strict-match --user curly --tty pts/2
basename               curly   pts/2      0.00 secs Tue Jan 28 15:41
ps                     curly   pts/2      0.00 secs Tue Jan 28 15:41
bash              F    curly   pts/2      0.00 secs Tue Jan 28 15:41
manpath                curly   pts/2      0.00 secs Tue Jan 28 15:41
bash              F    curly   pts/2      0.00 secs Tue Jan 28 15:41
tclsh                  curly   pts/2      0.00 secs Tue Jan 28 15:41
bash              F    curly   pts/2      0.00 secs Tue Jan 28 15:41
bash              F    curly   pts/2      0.00 secs Tue Jan 28 15:41
sed                    curly   pts/2      0.00 secs Tue Jan 28 15:41

Perintah yang terdaftar oleh lastcomm belum tentu perintah yang diluncurkan pengguna secara interaktif. Misalnya, hanya dengan masuk, pengguna memunculkan hampir 40 item dalam output lastcomm , sehingga bisa menjadi luar biasa. Ditambah dengan grep , meskipun demikian, ini adalah cara mudah untuk memahami riwayat sesi pengguna.

sa

sa perintah merangkum informasi akuntansi yang berasal dari /var/account/pacct mengajukan. Jika Anda mengaudit aktivitas pengguna, maka --print-users opsi mencetak nama pengguna sebelum setiap perintah:

$ sudo sa --print-users
root    0.00 cpu      579k mem      0 io accton
root    0.03 cpu    64064k mem      0 io sudo 
seth    0.00 cpu    56752k mem      0 io bash         *
seth    0.00 cpu    54080k mem      0 io sed 
seth    0.00 cpu    56752k mem      0 io bash         *
larry   0.00 cpu    56752k mem      0 io bash         *
curly   0.00 cpu    56752k mem      0 io bash         *
moe     0.00 cpu    56752k mem      0 io bash         *
seth    0.00 cpu    54080k mem      0 io ls 

Atau, Anda hanya bisa mendapatkan ringkasan untuk setiap pengguna:

$ sudo sa --user-summary
                                     1065    2169.59re       0.97cp         0avio     49373k
seth                                  812    1117.11re       0.83cp         0avio     58163k
root                                  199    1052.42re       0.14cp         0avio     21314k
larry                                  41       0.00re       0.00cp         0avio     19403k
curly                                   1       0.06re       0.00cp         0avio      6706k
moe                                    12       0.00re       0.00cp         0avio     25888k
[...]

Kolom yang ditampilkan, selain nama pengguna, laporan CPU (waktu nyata dan waktu CPU), operasi I/O per perintah (rata-rata dan total), dan seterusnya. Mereka dapat dikonfigurasi menggunakan opsi seperti --sort-tio untuk t total I/O , --sort-cpu-avmem untuk mengurutkan waktu CPU berdasarkan penggunaan memori rata-rata, dan seterusnya. Semua filter penyortiran dapat dibalik dengan --reverse-sort pilihan.

Pembuatan profil pengguna

Dikombinasikan dengan alat seperti who, w, dan ps, Anda dapat memahami bagaimana pengguna menghabiskan sumber daya sistem, perintah mana yang mungkin bermasalah, dan peningkatan server apa yang dapat berguna di masa mendatang. Karena acct suite berbasis terminal, dapat ditulis dan digunakan oleh alat lain, memungkinkan Anda membuat mekanisme pelaporan yang disesuaikan.

[ Ingin mencoba Red Hat Enterprise Linux? Unduh sekarang secara gratis. ]


Linux
  1. Partisi drive di Linux dengan GNU Parted

  2. Dasar-dasar sysadmin Linux:Manajemen akun pengguna dengan UID dan GID

  3. Pemantauan keamanan di Linux dengan Tripwire

  1. Lakukan matematika di shell Linux dengan GNU bc

  2. Cara Memantau Aktivitas Pengguna Di Linux

  3. Pengantar pemantauan akun pengguna Linux

  1. Cara Bekerja Dengan Pengguna Dan Grup Di Linux

  2. 8 Praktik terbaik dengan sudo di Linux – Tindakan dan Larangan dari sudo

  3. Instal WordPress di Linux dengan Apache