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