让history命令显示出执行用户执行时间执行用户IP

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了让history命令显示出执行用户执行时间执行用户IP相关的知识,希望对你有一定的参考价值。

因为之前遇到过命令审计,找不出某条命令是由哪个用户执行的,所以需要让history命令显示出执行用户、执行时间、执行用户IP,以便追踪。

  1. 在/etc/profile文件最后加两行:

    USER_IP=`who -u -m | awk ‘{print $NF}‘| sed ‘s/[()]//g‘`

    export HISTTIMEFORMAT="[%F %T][`whoami`][${USER_IP}] "

  2. 执行命令

    source /etc/profile

  3. 随便敲几条命令

  4. 查看效果

    1047  [2017-03-21 15:13:25][root][192.168.233.1] history | tail -5

    1048  [2017-03-21 15:17:24][root][192.168.233.1] who -u -m | awk ‘{print $NF}‘

    1049  [2017-03-21 15:17:58][root][192.168.233.1] who -u -m | awk ‘{print $NF}‘| sed ‘s/[()]//g‘

    1050  [2017-03-21 15:18:21][root][192.168.233.1] vim /etc/profile

    1051  [2017-03-21 15:19:17][root][192.168.233.1] source /etc/profile

    1052  [2017-03-21 15:19:22][root][192.168.233.1] a

    1053  [2017-03-21 15:19:23][root][192.168.233.1] s

    1054  [2017-03-21 15:19:24][root][192.168.233.1] d

    1055  [2017-03-21 15:19:25][root][192.168.233.1] f

    1056  [2017-03-21 15:19:34][root][192.168.233.1] history | tail -10


本文出自 “清淼淡写” 博客,谢绝转载!

以上是关于让history命令显示出执行用户执行时间执行用户IP的主要内容,如果未能解决你的问题,请参考以下文章

CentOS 显示历史执行过的命令以及用户历史命令缓存

cat ~/.bash_history

如何让linux的history命令显示时间记录

Linux之shell篇

用户创建+history命令显示命令历史具体时间

Bash Shell中的“history”的使用技巧信安世纪(SecDriver)