Linux系统下用户行为审计

以下内容在RHEL 6.4下测试通过。

1、编写脚本Command_history.sh,生产历史命令记录文件,内容如下
#!/bin/bash 
[ -d /usr/lib/.cmdlog ] || mkdir -p /usr/lib/.cmdlog 
cmdlog_file="/usr/lib/.cmdlog/cmdlog.$(date +%F)" 
touch ${cmdlog_file} 
chmod 666 ${cmdlog_file}
chattr +a ${cmdlog_file}
2、在root用户下设置crontab,定时每天凌晨零点定时执行Command_history.sh脚本。
0 0 * * * /root/Command_history.sh &>/dev/null
3、编辑/etc/profile文件,在最后添加如下内容
export CMDLOG_FILE="/usr/lib/.cmdlog/cmdlog.$(date +%F)" 
readonly PROMPT_COMMAND='{ date "+%y-%m-%d %T ##### $(who am i |awk "{print $1" "$2" "$5}") #### $(pwd) #### $(history 1 | { read x cmd; echo "$cmd"; })"; } >> $CMDLOG_FILE'
原文地址:https://www.cnblogs.com/Eivll0m/p/4626801.html