命令审计,采用logger方式将信息记录到/tmp下面,目录也可以自己修改的
这个是根据用户来分类的,如果觉得不方便也可以用时间来分类也行
这个只是在root用户有记录,如果想所有用户都有记录,就得加到/etc/profile里面
echo "export PROMPT_COMMAND='{ msg=\$(history 1 | { read x cmd; echo \$cmd; });user=\$(whoami); echo \$(date \"+%Y-%m-%d %H:%M:%S\"):\$user:\`pwd\`/:\$msg ---- \$(who am i); } >> /tmp/\`hostname\`.\`whoami\`.history-timestamp'" >> /root/.bash_profile
mkdir -p /var/log/user_record/
echo "export PROMPT_COMMAND='{ msg=\$(history 1 | { read x cmd; echo \$cmd; });user=\$(whoami); echo \$(date \"+%Y-%m-%d %H:%M:%S\"):\$user:\`pwd\`/:\$msg ---- \$(who am i); } >> /var/log/user_record/\`hostname\`.\`whoami\`.history-timestamp'" >> /etc/profile
or
vim /etc/profile export HISTORY_FILE=/var/log/history/${LOGNAME}/`date '+%Y-%m-%d_%T'`.log &> /dev/null #自定义日志文件路径及名称 export PROMPT_COMMAND='{ date +" $(who am i |awk "{print \$1\" \"\$2\" \"\$5}") $(history 1 | { read x cmd; echo "$cmd"; })"; } >> $HISTORY_FILE' &> /dev/null
方法很多,可以根据自己的需求来具体做
转载于:https://blog.51cto.com/853056088/2092041