[转载]危险操作一追到底--Linux的历史记录

转自:https://zhuanlan.zhihu.com/p/524921170

 

危险操作一追到底--Linux的历史记录

 
 

概述

在Linux下使用history命令可以查看用户所有的历史操作记录,默认记录在用户目录下.bash_history文件中。如果黑客入侵后会删除该文件销毁痕迹。这就需要合理的备份.bash_history文件

配置方法

1.history命令只是单纯的记录命令,并没有记录时间,所以要把格式做下修改,在/etc/bashrc文件中添加

HISTFILESIZE=4000   #保存命令总数
HISTSIZE=400  #history命令输出总数
HISTTIMEFORMAT='%F %T '  #时间格式,注意最后有空格
export HISTTIMEFORMAT

下面使用脚本来详细记录历史命令。可以将下面的代码加到/etc/profile中

#save history 
IP=$(who -u am i|awk '{print $NF}'|sed -e 's/[()]//g')
HISTDIR=/opt/.history
if [ -z $IP ];then
    IP=$(hostname)
fi
if [ ! -d $HISTDIR ];then
    mkdir -p $HISTDIR
    chmod 777 $HISTDIR
fi
if [ ! -d $HISTDIR/$LOGNAME ];then
    mkdir -p $HISTDIR/$LOGNAME
    chmod 300 $HISTDIR/$LOGNAME
fi
export HISTSIZE=4000
DateTime=$(date +%F_%H%M%S)
export HISTFILE="$HISTDIR/$LOGNAME/$IP.histroy.$DateTime"
HISTTIMEFORMAT='%F %T '  
chmod 600 $HISTDIR/$LOGNAME/*.history.* 2>/dev/null

这段代码将每个用户本次登陆主机的shell命令执行历史以文件的形式保存下来,每个用户一个文件夹。

发布于 2022-06-06 15:26
posted @ 2022-10-11 17:01  workingdiary  阅读(30)  评论(0编辑  收藏  举报