GNU/Linux >> Belajar Linux >  >> Linux

Cara Memantau Aktivitas Pengguna Di Linux

Sebagai administrator Linux, Anda perlu melacak semua aktivitas pengguna. Ini akan sangat membantu ketika ada yang tidak beres di server. Anda dapat menganalisis dan menyelidiki aktivitas pengguna, dan mencoba menemukan akar penyebab masalah. Ada banyak cara untuk memantau pengguna. Dalam panduan ini, kita akan berbicara tentang utilitas akuntansi GNU yang dapat digunakan untuk memantau aktivitas pengguna di Linux. Utilitas akuntansi menyediakan informasi yang berguna tentang penggunaan sistem, seperti koneksi, program yang dijalankan, dan pemanfaatan sumber daya sistem. Utilitas akuntansi ini dapat diinstal menggunakan psacct atau bertindak kemasan. psacct atau acct sama. Dalam berbasis RPM, tersedia sebagai psacct, dan dalam sistem berbasis DEB tersedia sebagai acct.

Umumnya, detail riwayat baris perintah pengguna akan disimpan di .bash_history file di direktori $HOME mereka. Beberapa pengguna mungkin mencoba mengedit, mengubah, atau menghapus riwayat. Namun, utilitas akuntansi akan tetap dapat mengambil aktivitas pengguna meskipun mereka menghapus riwayat baris perintahnya sama sekali. Karena, semua file akuntansi proses dimiliki oleh pengguna root, dan pengguna biasa tidak dapat mengeditnya.

Instal psacct atau acct

Di RHEL, CentOS, Fedora, Scientific Linux, jalankan perintah berikut sebagai pengguna root untuk menginstal psacct:

$ sudo yum install psacct

Aktifkan dan mulai layanan psacct menggunakan perintah:

$ sudo systemctl enable psacct
$ sudo systemctl start psacct

Di Debian, Ubuntu, Linux Mint, instal seperti di bawah ini.

$ sudo apt-get install acct

Perintah di atas akan menginstal acct dan memulai layanannya secara otomatis.

Anda dapat memverifikasi apakah itu dimulai atau tidak menggunakan perintah:

$ sudo systemctl status acct
Unduh - eBuku gratis:"Buku Pegangan Pemantauan Nagios"

Memantau Aktivitas Pengguna Di Linux

Paket psacct (Process accounting) berisi utilitas berguna berikut untuk memantau aktivitas pengguna dan proses.

  • ac - Menampilkan statistik tentang berapa lama pengguna telah masuk.
  • komunikasi terakhir - Menampilkan informasi tentang perintah yang dieksekusi sebelumnya.
  • akton - Mengaktifkan atau menonaktifkan akuntansi proses.
  • dump-acct - Mengubah file keluaran dari format accton ke format yang dapat dibaca manusia.
  • dump-utmp - Mencetak file utmp dalam format yang dapat dibaca manusia.
  • sa - Meringkas informasi tentang perintah yang dieksekusi sebelumnya.

Mari kita lihat satu per satu dengan contoh.

ac

ac utilitas akan menampilkan laporan waktu koneksi dalam jam. Ini dapat memberi tahu Anda berapa lama pengguna atau grup pengguna terhubung ke sistem.

$ ac

Perintah ini menampilkan total waktu koneksi semua pengguna dalam jam.

total       30.62

Anda dapat mengurutkan hasil ini berdasarkan hari dengan menggunakan -d bendera seperti yang ditunjukkan di bawah ini.

$ ac -d

Contoh keluaran:

Nov 24 total 0.81
Apr 12 total 0.01
Jun 20 total 9.27
Jun 30 total 0.23
Mar 11 total 5.34
Mar 16 total 0.70
Mar 21 total 9.55
Mar 23 total 1.77
Today total 3.03

Selain itu, Anda dapat menampilkan berapa lama setiap pengguna terhubung dengan sistem dengan -p bendera.

$ ac -p

Contoh keluaran:

sk 0.03
root 30.73
total 30.76

Dan juga, Anda juga dapat menampilkan total waktu login pengguna individu.

$ ac sk

Contoh keluaran:

total 0.03

Untuk menampilkan waktu login pengguna individu berdasarkan hari, jalankan:

$ ac -d root

Contoh keluaran:

Nov 24 total 0.81
Apr 12 total 0.01
Jun 20 total 9.27
Jun 30 total 0.23
Mar 11 total 5.34
Mar 16 total 0.70
Mar 21 total 9.55
Mar 23 total 1.77
Today total 3.41

Untuk detail lebih lanjut, lihat halaman manual.

$ man ac

komunikasi terakhir

komunikasi terakhir utilitas menampilkan daftar perintah yang dieksekusi sebelumnya. Perintah yang dieksekusi terbaru akan dicantumkan terlebih dahulu.

$ lastcomm

Contoh keluaran:

sshd SF sshd __ 0.01 secs Fri Mar 24 15:09
unix_chkpwd S root __ 0.00 secs Fri Mar 24 15:09
unix_chkpwd S root __ 0.00 secs Fri Mar 24 15:09
systemd-cgroups S root __ 0.00 secs Fri Mar 24 15:09
systemd-cgroups S root __ 0.00 secs Fri Mar 24 15:09
sshd S root __ 0.06 secs Fri Mar 24 15:09
sshd SF sk __ 0.06 secs Fri Mar 24 15:09
bash sk pts/1 0.00 secs Fri Mar 24 15:09
clear sk pts/1 0.00 secs Fri Mar 24 15:09
vi sk pts/1 0.00 secs Fri Mar 24 15:09
cat sk pts/1 0.00 secs Fri Mar 24 15:09
bash F sk pts/1 0.00 secs Fri Mar 24 15:09
consoletype sk pts/1 0.00 secs Fri Mar 24 15:09
grep sk pts/1 0.00 secs Fri Mar 24 15:09
bash F sk pts/1 0.00 secs Fri Mar 24 15:09

Perintah di atas menampilkan semua perintah pengguna. Anda dapat menampilkan perintah yang dieksekusi sebelumnya oleh pengguna tertentu menggunakan perintah:

$ lastcomm sk

Contoh keluaran:

sshd SF sk __ 0.06 secs Fri Mar 24 15:09
bash sk pts/1 0.00 secs Fri Mar 24 15:09
clear sk pts/1 0.00 secs Fri Mar 24 15:09
vi sk pts/1 0.00 secs Fri Mar 24 15:09
cat sk pts/1 0.00 secs Fri Mar 24 15:09
bash F sk pts/1 0.00 secs Fri Mar 24 15:09
consoletype sk pts/1 0.00 secs Fri Mar 24 15:09
grep sk pts/1 0.00 secs Fri Mar 24 15:09

Selain itu, Anda dapat melihat berapa kali perintah tertentu telah dijalankan.

$ lastcomm vi

Contoh keluaran:

vi sk pts/1 0.00 secs Fri Mar 24 15:09
vi root pts/1 0.00 secs Fri Mar 24 15:03

Seperti yang Anda lihat pada output di atas, perintah vi telah dieksekusi dua kali oleh pengguna root dan sk.

Untuk detail lebih lanjut, lihat halaman manual.

$ man lastcomm

akton

Utilitas ini akan memungkinkan Anda untuk mengaktifkan atau menonaktifkan akuntansi.

Untuk mengaktifkan akuntansi proses, jalankan:

$ accton on

Untuk mematikannya, jalankan:

$ accton off

Untuk detail lebih lanjut, lihat halaman manual.

$ man accton

dump-acct dan dump-utmp

aksi pembuangan utilitas menampilkan file output dari format accton ke format yang dapat dibaca manusia.

$ dump-acct /var/account/pacct

dump-utmp menampilkan file utmp dalam format yang dapat dibaca manusia.

$ dump-utmp /var/run/utmp

Untuk detail lebih lanjut, lihat halaman manual.

$ man dump-acct
$ man dump-utmp

pada

Utilitas sa akan merangkum informasi tentang perintah yang dieksekusi sebelumnya.

$ sa

Contoh keluaran:

 318 951.07re 0.01cp 0avio 15299k
 4 33.04re 0.01cp 0avio 26352k sshd
 7 2.05re 0.00cp 0avio 25184k sshd*
 2 0.01re 0.00cp 0avio 89856k dnf
 35 0.00re 0.00cp 0avio 29767k man*
 29 0.00re 0.00cp 0avio 7377k bash*
 12 0.00re 0.00cp 0avio 6259k unix_chkpwd
 12 0.00re 0.00cp 0avio 2674k systemd-cgroups
 10 0.00re 0.00cp 0avio 2260k grep
 9 166.31re 0.00cp 0avio 25375k ***other*
 9 110.33re 0.00cp 0avio 0k kworker/0:2*
 9 110.33re 0.00cp 0avio 0k kworker/0:0*
 9 0.00re 0.00cp 0avio 3830k id
 8 0.00re 0.00cp 0avio 1080k ac
 8 0.00re 0.00cp 0avio 26976k logger
 8 0.00re 0.00cp 0avio 26976k basename
 6 93.90re 0.00cp 0avio 29712k man
 6 0.00re 0.00cp 0avio 1629k clear
 5 119.94re 0.00cp 0avio 0k kworker/0:2H*
 5 93.90re 0.00cp 0avio 27568k less

Untuk mencetak jumlah proses dan jumlah menit CPU per pengguna, jalankan saja:

$ sa -m

Contoh keluaran:

337 961.10re 0.01cp 0avio 15593k
root 286 857.82re 0.01cp 0avio 16672k
sk 45 3.88re 0.00cp 0avio 7992k
sshd 5 0.34re 0.00cp 0avio 20966k
postfix 1 99.06re 0.00cp 0avio 22272k

Untuk detail lebih lanjut, lihat halaman manual.

$ man sa

Bacaan yang Disarankan:

  • Cara Membatasi Akses Pengguna ke Sistem Linux

Dan, itu saja. Setiap administrator Linux harus mengetahui utilitas akuntansi GNU untuk mengawasi semua pengguna. Utilitas ini akan membantu dalam waktu pemecahan masalah.


Linux
  1. Cara Memantau Aktivitas Ethernet Di Linux Menggunakan Arpwatch

  2. Cara membuat Pengguna Linux Menggunakan Ansible

  3. Cara Membuat Pengguna Sudo di Rocky Linux 8

  1. Cara Mengubah Nama Pengguna di Linux

  2. Bagaimana cara menambahkan pengguna ke grup di Linux

  3. Cara mengetahui penggunaan memori pengguna di linux

  1. 5 Contoh Perintah Berguna untuk Memantau Aktivitas Pengguna di Linux

  2. Cara membatasi perintah pengguna di Linux

  3. Bagaimana saya bisa mencari nama pengguna dengan id di linux?