最近在折腾manjaro xfce 版本,实现命令审计参考如下博客
https://blog.51cto.com/13227377/2159238
具体操作如下:
在/etc/profile后面添加
#history
export HISTSIZE=4096
DT=`date +"%Y-%m-%d"`
export HISTFILE="/opt/history/${LOGNAME}_history.log"
chmod 600 /opt/history/${LOGNAME} 2>/dev/null
export PROMPT_COMMAND='{ date "+%Y-%m-%d %T #### $(whoami) #### $(history 1 | { read x cmd; echo "$cmd"; })"; }>>$HISTFILE'
添加完发现PROMPT_COMMAND变量没有生效,也就是打开log文件里log的记录格式没有改变,后来发现用户环境变量重置了PROMPT_COMMAND
解决方法如下:
第一步:
sudo gedit /etc/bash.bashrc
将图中部分代码注释掉
第二步:
gedit ~/.bashrc
将图中部分代码注释掉
第三步:
source /etc/bash.bashrc
source ~/.bashrc
这一刻history.log中的格式就已经改为命令审计中设置的格式
log格式前后变化如下
修改前
修改后