问题

我们在配置文件 /etc/audit/rules.d/audit.rules 中添加了新的审计规则,如下所示:

# vi /etc/audit/rules.d/audit.rules
-a always,exit -F arch=b64 -S adjtimex -S settimeofday -S stime -S clock_settime -k time-change
-a always,exit -F arch=b64 -S sethostname -S setdomainname -k system-locale

但是,这些配置并未出现

# auditctl -l
No rules

注意:在 CentOS/RHEL 6 上,配置文件是 /etc/audit/audit.rules 而不是 /etc/audit/rules.d/audit.rules。

CentOS/RHEL Linux 审计规则配置未起作用,如何排除故障
查看更多教程 https://on  itroad.com

解决方案

1.这里首先要检查的是规则的语法,如果有错误就更正。
例如,我们可以手动运行我们在配置文件中配置的规则。
运行命令时,我们应该会在命令行上看到语法错误。
例如:

# auditctl -a always,exit -F arch=b64 -S adjtimex -S settimeofday -S stime -S clock_settime -k time-change
Syscall name unknown: stime
The audit system is in immutable mode, no rule changes allowed
  1. 更正规则参数“-S time”并重新启动系统。
    需要重新启动以禁用 auditd 不可变模式。

  2. 重启后,所有的审计规则都会反映出来。

# auditctl -l
-a always,exit -F arch=x86_64 -S adjtimex,settimeofday,time,clock_settime -F key=time-change
-a always,exit -F arch=x86_64 -S sethostname,setdomainname -F key=system-locale

如果我们在/etc/audit/rules.d/audit.rules 配置文件中设置了错误的语法,auditd 将停止规则注册。
因此,错误语法行之后的所有规则都不会反映。

日期:2020-09-17 00:13:55 来源:oir作者:oir