我想维护服务器上所有触发命令的日志文件。我们有 3 个以上的管理员,我想监控这些管理员触发的所有命令。可以吗?
答案1
步骤 1:
vi /etc/bashrc
并在末尾附加以下行:
export PROMPT_COMMAND='RETRN_VAL=$?;logger -p local6.debug "$(whoami) [$$]: $(history 1 | sed "s/^[ ]*[0-9]\+[ ]*//" ) [$RETRN_VAL]"'
第2步:
通过在文件中添加以下行,将 syslogger 设置为将 local6 捕获到日志文件/etc/rsyslog.conf
:
local6.* /var/log/cmdlog.log
所有用户的历史记录都将保存在一个日志中。