欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  科技

linux系统操作审计-让history内容更丰富

程序员文章站 2022-04-28 09:11:52
不知道作为运维的你有没有体会过这样一种情况: 当某天你的服务器发生异常情况,例如某个文件莫名被删除了,或者某个文件被人私自篡改,甚至是发生安全事件等等,这时你的经理找到你要你查个水落石出,于是你想看看history里有没有一些异常的操作,当你在终端里敲完history命令之后,看到的结果,却敌我难分 ......

不知道作为运维的你有没有体会过这样一种情况:

当某天你的服务器发生异常情况,例如某个文件莫名被删除了,或者某个文件被人私自篡改,甚至是发生安全事件等等,这时你的经理找到你要你查个水落石出,于是你想看看history里有没有一些异常的操作,当你在终端里敲完history命令之后,看到的结果,却敌我难分,例如某个rm -rf的操作到底是自己人做的操作还是有人未经同意做得操作呢,此时的结果看不到详细的信息,只能看到操作的指令,但是你很想看这些指令到底是在什么时候执行的,哪个用户执行的,哪个终端执行的,甚至是终端的ssh远程IP是多少等等,遇到这些情况你可能在一阵噼里啪啦之后一筹莫展,不知道从何下手。但是别担心,今天给大家推出解决方案:

注意事项(必读):

  • 此方案会导致所有存在的历史记录变成当前日期的时间,如果你们决定忽略以前的历史记录,那么建议先敲history -c清空历史记录,再按照以下步骤实施就是了。
  • 建议新机器第一件事就是部署该方案

1,编辑/etc/profile

在文件内容末尾添加如下内容:

1 w -uh>$HOME/.cache_tty;grep "`tty|cut -d '/' -f3,4`" $HOME/.cache_tty|awk '{print $3}'>$HOME/.cache_tty_ip
2 export HISTTIMEFORMAT="`whoami` `tty|cut -d '/' -f3,4` $(w -uh>$HOME/.cache_tty;grep "`tty|cut -d '/' -f3,4`" $HOME/.cache_tty|awk '{print $3}') %F %T "

示例图:

linux系统操作审计-让history内容更丰富

 

2,保存退出然后敲history命令验证是否生效:

1 history

如下图可以看出已经生效:

linux系统操作审计-让history内容更丰富