7.7. 审计持久性规则
要定义在重启过程中保持不变的审计规则,必须直接将其包含在 /etc/audit/rules.d/audit.rules
文件中,或者使用 augenrules
程序读取位于/etc/audit/rules.d/
目录中的规则。
请注意,每次 auditd
服务启动时都会生成 /etc/audit/audit.rules
文件。/etc/audit/rules.d/
中的文件使用相同的 auditctl
命令行语法来指定规则。哈希符号(#)后面的空行和文本将被忽略。
另外,您可以使用 auditctl
命令来从用 -R
选项指定的文件中读取规则,例如:
auditctl -R /usr/share/audit/sample-rules/30-stig.rules
# auditctl -R /usr/share/audit/sample-rules/30-stig.rules
augenrules
脚本读取位于/etc/audit/rules.d/
目录下的规则,并将它们编译成audit.rures
文件。这个脚本会根据文件的自然排列顺序,按特定顺序处理以 .rules
结尾的所有文件。这个目录中的文件被组织到具有如下含义的组中:
- 10
- 内核和 auditctl 配置
- 20
- 可以匹配常规规则但您想要不同匹配的规则
- 30
- 主规则
- 40
- 可选规则
- 50
- 特定于服务器的规则
- 70
- 系统本地规则
- 90
- 完成(不可变)
规则并非是一次全部使用。它们是策略的一部分,应仔细考虑,并将单个文件复制到 /etc/audit/rules.d/
。例如,要在 STIG 配置中设置系统,请复制规则 10-base-config
、30-stig
、31-privileged
和 99-finalize
。
在 /etc/audit/rules.d/
目录中有了规则之后,运行带有 --load
参数的 augenrules
脚本来加载它们:
augenrules --load
# augenrules --load
/sbin/augenrules: No change
No rules
enabled 1
failure 1
pid 742
rate_limit 0
...