GNU/Linux >> Linux Esercitazione >  >> Linux

Come monitorare l'attività dell'utente in Linux

In qualità di amministratore Linux, devi tenere traccia delle attività di tutti gli utenti. Sarà utile quando qualcosa è andato storto nel server. È possibile analizzare e indagare sulle attività degli utenti e provare a trovare la causa principale del problema. Esistono molti modi per monitorare gli utenti. In questa guida parleremo delle utilità di contabilità GNU che può essere utilizzato per monitorare l'attività dell'utente in Linux. Le utilità di contabilità forniscono informazioni utili sull'utilizzo del sistema, come connessioni, programmi eseguiti e utilizzo delle risorse di sistema. Queste utilità di contabilità possono essere installate utilizzando psacct o accetta pacchetto. psacct o acct sono gli stessi. In basato su RPM, è disponibile come psacct e nei sistemi basati su DEB è disponibile come acct.

In genere, i dettagli della cronologia della riga di comando dell'utente verranno archiviati in .bash_history file nella loro directory $HOME. Alcuni utenti potrebbero provare a modificare, modificare o eliminare la cronologia. Tuttavia, le utilità di contabilità saranno comunque in grado di recuperare le attività degli utenti anche se hanno cancellato la cronologia della riga di comando completamente. Perché tutti i file di contabilità di processo sono di proprietà dell'utente root e gli utenti normali non possono modificarli.

Installa psacct o acct

Su RHEL, CentOS, Fedora, Scientific Linux, esegui il seguente comando come utente root per installare psacct:

$ sudo yum install psacct

Abilita e avvia il servizio psacct utilizzando i comandi:

$ sudo systemctl abilita psacct
$ sudo systemctl start psacct

Su Debian, Ubuntu, Linux Mint, installalo come di seguito.

$ sudo apt-get install acct

Il comando precedente installerà acct e avvierà automaticamente il suo servizio.

Puoi verificare se è stato avviato o meno usando il comando:

$ sudo systemctl stato acct
Scarica - Ebook gratuito:"Manuale di monitoraggio di Nagios"

Monitoraggio dell'attività dell'utente in Linux

Il pacchetto psacct (Contabilità dei processi) contiene le seguenti utili utilità per monitorare l'utente e le attività dei processi.

  • ac - Visualizza le statistiche sulla durata dell'accesso degli utenti.
  • ultima comunicazione - Visualizza le informazioni sui comandi eseguiti in precedenza.
  • Accton - Attiva o disattiva la contabilità di processo.
  • dumping-acct - Trasforma il file di output dal formato accton a un formato leggibile dall'uomo.
  • dump-utmp - Stampa i file utmp in formato leggibile dall'uomo.
  • sa - Riepiloga le informazioni sui comandi eseguiti in precedenza.

Vediamone uno addio con esempi.

ac

Il ac l'utilità visualizzerà il rapporto del tempo di connessione in ore. Può dirti per quanto tempo un utente o un gruppo di utenti è stato connesso al sistema.

$ ac

Questo comando mostra il tempo di connessione totale di tutti gli utenti in ore.

totale       30,62

Puoi ordinare questo risultato per giorno utilizzando -d flag come mostrato di seguito.

$ ac -d

Risultato di esempio:

Totale 24 novembre 0,81Totale 12 aprile 0,01Totale 20 giugno 9,27Totale 30 giugno 0,23Totale 11 marzo 5,34Totale 16 marzo 0,70Totale 21 marzo 9,55Totale 23 marzo 1,77Totale oggi 3,03

Inoltre, puoi visualizzare per quanto tempo ciascun utente è stato connesso al sistema con -p bandiera.

$ ac -p

Risultato di esempio:

sk 0.03root 30.73totale 30.76

Inoltre, puoi anche visualizzare il tempo di accesso totale del singolo utente.

$ ac sk

Risultato di esempio:

totale 0,03

Per visualizzare l'ora di accesso di un singolo utente in base al giorno, eseguire:

$ ac -d radice

Risultato di esempio:

Totale 24 novembre 0,81Totale 12 aprile 0,01Totale 20 giugno 9,27Totale 30 giugno 0,23Totale 11 marzo 5,34Totale 16 marzo 0,70Totale 21 marzo 9,55Totale 23 marzo 1,77Totale oggi 3,41

Per maggiori dettagli, fare riferimento alle pagine man.

$ uomo ac

ultima comunicazione

L'ultima comunicazione utility visualizza l'elenco dei comandi eseguiti in precedenza. Verranno elencati per primi i comandi eseguiti più di recente.

$ lastcomm

Risultato di esempio:

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

Il comando sopra mostra tutti i comandi dell'utente. Puoi visualizzare i comandi eseguiti in precedenza da un particolare utente usando il comando:

$ lastcomm sk

Risultato di esempio:

sshd SF sk __ 0.06 sec ven 24 mar 15:09bash sk pts/1 0.00 sec ven 24 mar 15:09clear sk pts/1 0.00 sec ven 24 mar 15:09vi sk pts/1 0.00 sec ven 24 mar 15:09cat sk pts/1 0.00 sec Ven Mar 24 15:09bash F sk pts/1 0.00 sec Ven Mar 24 15:09consoletype sk pts/1 0.00 sec Ven Mar 24 15:09grep sk pts/1 0.00 sec Ven Mar 24 15:09 

Inoltre, puoi vedere quante volte è stato eseguito un particolare comando.

$ lastcomm vi

Risultato di esempio:

vi sk pts/1 0.00 sec ven 24 mar 15:09vi root pts/1 0.00 sec ven 24 mar 15:03

Come puoi vedere nell'output sopra, il comando vi è stato eseguito due volte dagli utenti root e sk.

Per maggiori dettagli, fare riferimento alle pagine man.

$ man lastcomm

Accton

Questa utilità ti consentirà di attivare o disattivare la contabilità.

Per attivare la contabilità di processo, esegui:

$ accton su

Per disattivarlo, esegui:

Sconto $ accton

Per maggiori dettagli, fare riferimento alle pagine man.

$ man accton

dump-acct e dump-utmp

Il discarica l'utilità mostra il file di output dal formato accton a un formato leggibile dall'uomo.

$ dump-acct /var/account/pacct

dump-utmp mostra i file utmp in un formato leggibile dall'uomo.

$ dump-utmp /var/run/utmp

Per maggiori dettagli, fare riferimento alle pagine man.

$ man dump-acct
$ man dump-utmp

sa

L'utilità sa riassumerà le informazioni sui comandi eseguiti in precedenza.

$ sa

Risultato di esempio:

 318 951.07re 0.01CP 0VIO 15299K 4 33.04re 0.01CP 0AVIO 26352K SSHD 7 2.05re 0.00CP 0avio 25184k SSHD* 29. 0.00RE 0.00CP 0AVIO 89856K DNF 35 0.00RE 0.00CP 0AVIO 297K MAN* 29. 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 *** altri * 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.07crek logger 8 06 907crenok logger 8 06 90.00cre 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 meno

Per stampare il numero di processi e il numero di minuti CPU per utente, esegui semplicemente:

$ sa -m

Risultato di esempio:

 337 961.10re 0.01CP 0VIO 15593kroot 286 857.82re 0.01CP 0AVIO 16672ksk 45 3.88re 0.00CP 0avio 7992KSHD 5 0.34re 0.00CP 0Avio 20966KPOSTFIX 1 99.06re 0,00CP 0AVIO 222K 
 Per maggiori dettagli, fare riferimento alle pagine man.

$ man sa

Lettura consigliata:

  • Come limitare l'accesso degli utenti al sistema Linux

E questo è tutto. Ogni amministratore Linux dovrebbe essere a conoscenza delle utilità di contabilità GNU per tenere d'occhio tutti gli utenti. Queste utilità saranno utili per la risoluzione dei problemi.


Linux
  1. Come modificare un nome utente in Linux

  2. Come creare un utente Linux usando Ansible

  3. Come trovare l'utilizzo della memoria dell'utente in Linux

  4. Come limitare i comandi utente in Linux

  5. Come posso cercare un nome utente per id in Linux?

Come aggiungere un utente al gruppo in Linux

Come modificare o impostare la password utente in Linux

Come cambiare utente su Linux

Come conoscere i gruppi di un utente Linux

Come aggiungere un utente al gruppo su Linux

Come aggiungere un utente a un gruppo Linux