GNU/Linux >> Linux Esercitazione >  >> Panels >> Panels

Controllare i comandi SSH eseguiti dagli utenti

Se stai concedendo a Shell l'accesso ai tuoi utenti di hosting web, potresti voler controllare quali comandi stanno usando. In cPanel, c'è un file nella home directory dell'utente che conserva la cronologia SSH.

Il file è /home/username/.bash_history
Il punto all'interno del nome del file significa che il file è nascosto. Puoi usare il gatto comando per vedere il contenuto del file:

# cat /home/username/.bash_history
root@web [/home/test]# cat .bash_history
#1521029684
exit
#1584542216
ls
#1584542218
w
#1584542219
top
#1584542230
free -m
#1584542234
uptime
#1584542238
cd /
#1584542240
ls
#1584542251
du -sh /home
#1584542267
du -sh /home/test
#1584542281
exit
root@web [/home/test]#

Nota che il .bash_history il file è di proprietà dell'utente, quindi l'utente può modificarlo in qualsiasi momento.

Le righe che iniziano con # contengono l'ora (in formato Unix/Epoch Time) in cui è stato eseguito il comando. Di seguito inseriamo un collegamento a un sito in cui è possibile convertire l'ora Unix in tempo leggibile dall'uomo. Oppure più facilmente puoi utilizzare la data comando:

root@web [/home/test]# date -d @1584543556
Wed Mar 18 09:59:16 CDT 2020
root@web [/home/test]#

Per convertire automaticamente le date, puoi utilizzare un comando come:

# paste -sd '#\n' .bash_history | awk -F"#" '{d=$2 ; $2="";print NR" "strftime("%m/%d/%y %T",d)" "$0}'

Questo concatenerà la data e le righe di comando e cambierà il formato della data. Il nostro esempio di file sarà:

# /home/plothost$ paste -sd '#\n' .bash_history | awk -F"#" '{d=$2 ; $2="";print NR" "strftime("%m/%d/%y %T",d)" "$0}'
03/14/18 08:14:44   exit
03/18/20 10:36:56   ls
03/18/20 10:36:58   w
03/18/20 10:36:59   top
03/18/20 10:37:10   free -m
03/18/20 10:37:14   uptime
03/18/20 10:37:18   cd /
03/18/20 10:37:20   ls
03/18/20 10:37:31   du -sh /home
03/18/20 10:37:47   du -sh /home/test
03/18/20 10:38:01   exit

Risorse:
Wikipedia Unix Time/Epoch Time
Convertitore Epoch Time


Panels
  1. Comandi per generare la chiave SSH in Linux

  2. Comandi SSH per gestire un server dedicato

  3. Come limitare gli utenti SSH a un set predefinito di comandi dopo l'accesso?

  4. SSH - Come includere il comando -t nel file ~/.ssh/config

  5. Impossibile ottenere l'accesso SSH per un nuovo utente

Controlla il fuso orario in Linux

Come controllare i rapporti di consegna della posta in WHM?

Come controllare il nome del database Joomla?

I 50 comandi Zypper più utili per gli utenti SUSE Linux

Tipi di base di utenti Linux e come controllarli

Utenti SSH aggiuntivi