合理使用shell历史命令记录功能

作者: FilesFan | 来源:发表于2019-11-17 20:31 被阅读0次

概述

在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命令执行历史以文件的形式保存下来,每个用户一个文件夹。

相关文章

  • CentOS系统账户和登录安全

    一、合理使用Shell历史命令记录功能 在Linux下可通过history命令查看用户所有的历史操作记录,同时sh...

  • 合理使用shell历史命令记录功能

    概述 在Linux下使用history命令可以查看用户所有的历史操作记录,默认记录在用户目录下.bash_hist...

  • golang exec库

    exec库执行shell命令shell的 cd功能无效,需要使用os.chdir()

  • Linux简单学习记录(七)

    shell的基础 1.记录命令历史记录在家目录的.bash_history上,会保存1000条历史命令常用三个命令...

  • note_4.2_Shell

    命令历史:shell进程会其会话中保存此前用户提交执行过的命令;~]# history定制history的功能,可...

  • history命令

    1.作用 保存你输入的命令历史。可以用它来重复执行命令 登录shell时,会读取命令历史文件中记录下的命令 登录进...

  • adb shell 命令相关功能

    adb shell 命令相关功能 Tags: adb_shell adb shell wm 命令获取屏幕相关信息 ...

  • hbase shell记录历史命令

    在使用HBase shell的时候,每次打开之前执行过的命令都清零了,对于我这种记不住命令的人,每次都需要help...

  • Linux命令行编辑快捷键

    Linux命令行编辑快捷键 快捷键功能Tab命令行自动补全。使用 shell 提示时可使用这一命令。键入命令或文件...

  • 使用Wharfee交互式shell替代Docker Cli 实现

    你知道如何使用Docker Cli 但是当你想使用一个具有自动补全和历史记录功能的更强大的交互式Shell,你可以...

网友评论

    本文标题:合理使用shell历史命令记录功能

    本文链接:https://www.haomeiwen.com/subject/spcmictx.html