CentOS7下安全审计工具Auditd的简单使用

2020-07-01 11:12:16 浏览数 (1)

auditd

auditd是Linux审计系统的用户空间组件,它负责将审计记录写入磁盘。

查看日志使用ausearch或aureport实用程序完成。

使用auditctl实用程序配置审核系统或加载规则。

在auditd启动期间,/etc/audit/audit.rules 中的审计规则由auditctl读取并加载到内核中。

或者还有一个 augenrules程序,读取/etc/audit/rules.d/中的规则并将其编译成audit.rules 审计规则文件中。

审计守护进程本身 有一些配置选项可以让管理员进行自定义配置

auditd相关工具与配置文件

auditctl : 即时控制审计守护进程的行为的工具,比如如添加规则等等

aureport : 查看和生成审计报告的工具

ausearch : 查找审计事件的工具

auditspd : 转发事件通知给其他应用程序,而不是写入到审计日志文件中

autrace : 一个用于跟踪进程的命令

/etc/audit/auditd.conf : auditd工具的配置文件

/etc/audit/rules.d/audit.rules:包含审核规则的文件

/etc/audit/audit.rules : 记录审计规则的文件

auditd的使用

1、安装auditd服务

CentOS7系统默认安装了audit服务

代码语言:javascript复制
rpm -aq | grep audit
rpm -ql audit

2、配置audit.rules规则

默认情况下审计规则是空的

代码语言:javascript复制
/*查看规则*/
auditctl -l

/*查看命令帮助*/
auditctl -h

例如添加一条规则

代码语言:javascript复制
auditctl -w /data -p rwxa
/*监控/data目录
-w path : 指定要监控的路径
-p : 指定触发审计的文件/目录的访问权限
rwxa : 指定的触发条件,r 读取权限,w 写入权限,x 执行权限,a 属性(attr)*/

3、永久保存审计规则

代码语言:javascript复制
vi /etc/audit/rules.d/audit.rules
例如将-w /data/ -p rwxa加入到最后一行
service auditd restart
auditctl -l

4、审计效果

在/data/目录下生成一个文件或者修改文件,查看审计日志

代码语言:javascript复制
tail -f /var/log/audit/audit.log

5、实现将audit日志通过rsyslog转发给日志服务器

1)audit有rsyslog插件能实现转发到本地的rsyslog服务

代码语言:javascript复制
cd /etc/audisp/plugins.d/
vi syslog.conf
修改如下两项
active = yes
args = LOG_LOCAL0
然后重启audit服务
service auditd restart

2)audit审计日志还会输出到/var/log/message文件中

如果需要禁止输出到/var/log/messages文件,可以修改rsyslog.conf配置项并重启rsyslog服务

在如下位置加入local0.none来实现不输出到/var/log/messages中

代码语言:javascript复制
vi /etc/rsyslog.conf
*.info;mail.none;authpriv.none;cron.none;local0.none    /var/log/messages
最后一行添加日志服务器
*.* @192.168.31.51
保存退出
service rsyslog restart

3)效果验证 如下图所示,审计日志只输出到日志服务器,未打印到/var/log/messages中

0 人点赞