黑帽联盟

标题: 通过登陆IP记录Linux所有用户所操作的日志 [打印本页]

作者: yun    时间: 2017-2-18 13:35
标题: 通过登陆IP记录Linux所有用户所操作的日志
对于Linux用户操作记录一般通过命令history来查看历史记录,但是如果在由于误操作而删除了重要的数据的情况下,history命令就不会有什么作用了.那么依然要存有历史操作记录应该如何来实现呢?

其实我们可以通过登陆IP地址来记录所有用户登录所操作的历史操作!具体操作就是在/etc/profile配置文件的末尾加入以下脚本代码来实现:

cat >>/etc/profile<< EOF
  1. # History
  2. USER=`whoami`
  3. USER_IP=`who -u am i 2>/dev/null| awk '{print $NF}'|sed -e 's/[()]//g'`
  4. if [ "$USER_IP" = "" ]; then
  5. USER_IP=`hostname`
  6. fi
  7. if [ ! -d /usr/local/history ]; then
  8. mkdir /usr/local/history
  9. chmod 777 /usr/local/history
  10. fi
  11. if [ ! -d /usr/local/history/${LOGNAME} ]; then
  12. mkdir /usr/local/history/${LOGNAME}
  13. chmod 300 /usr/local/history/${LOGNAME}
  14. fi
  15. export HISTSIZE=10000
  16. DT=`date +"%Y-%m-%d_%H:%M:%S"`
  17. export HISTFILE="/usr/local/history/${LOGNAME}/${USER}@${USER_IP}_history.$DT"
  18. chmod 600 /usr/local/history/${LOGNAME}/*history* 2>/dev/null
复制代码
source /etc/profile使上面的代码生效.
然后退出系统重新登录才会有记录.

通过上面脚本可以看出,在/usr/local/下新建history目录,文件名有用户、IP、时间信息.
ll /usr/local/history/root/






欢迎光临 黑帽联盟 (https://bbs.cnblackhat.com/) Powered by Discuz! X2.5