Linux 配置rsyslog以记录所有命令
我有一个CentOS 6.6,我想将rsyslog配置为登录/var/log/secure root用户或普通用户插入的每个命令。在没有rsyslog配置的情况下尝试此操作 Snoopy是一个很小的库,它记录系统上所有执行的命令(+参数) 这些是CentOS上的默认输出位置:/var/log/secure 这就是典型的Snoopy输出的样子:Linux 配置rsyslog以记录所有命令,linux,logging,centos,rsyslog,Linux,Logging,Centos,Rsyslog,我有一个CentOS 6.6,我想将rsyslog配置为登录/var/log/secure root用户或普通用户插入的每个命令。在没有rsyslog配置的情况下尝试此操作 Snoopy是一个很小的库,它记录系统上所有执行的命令(+参数) 这些是CentOS上的默认输出位置:/var/log/secure 这就是典型的Snoopy输出的样子: 2015-02-11T19:05:10+00:00 labrat-1 snoopy[896]: [uid:0 sid:11679 tty:/dev/p
2015-02-11T19:05:10+00:00 labrat-1 snoopy[896]: [uid:0 sid:11679 tty:/dev/pts/2 cwd:/root filename:/usr/bin/cat]: cat /etc/fstab.BAK
2015-02-11T19:05:15+00:00 labrat-1 snoopy[896]: [uid:0 sid:11679 tty:/dev/pts/2 cwd:/root filename:/usr/bin/rm]: rm -f /etc/fstab.BAK
2015-02-11T19:05:19+00:00 labrat-1 snoopy[896]: [uid:0 sid:11679 tty:/dev/pts/2 cwd:/root filename:/usr/bin/tail]: tail -f /var/log/messages
使用rsyslog配置
对于BASH shell,编辑系统范围的BASH运行时配置文件:
sudo -e /etc/bash.bashrc
附加到该文件的末尾:
export PROMPT_COMMAND='RETRN_VAL=$?;logger -p local6.debug "$(whoami) [$$]: $(history 1 | sed "s/^[ ]*[0-9]\+[ ]*//" ) [$RETRN_VAL]"'
使用新文件设置“local6”的日志记录:
sudo -e /etc/rsyslog.d/bash.conf
内容
local6.* /var/log/secure
重新启动rsyslog:
sudo service rsyslog restart