最直接的方法是运行 sudo auditctl -l 查看当前生效的所有审计规则,包括启动时加载和手动添加的;规则持久化需检查 /etc/audit/rules.d/ 和 /etc/audit/audit.rules;手动添加规则重启后丢失,须配合 augenrules --load 或重启 auditd 服务。

在 Linux 中,使用 auditctl 查看当前加载的审计规则,最直接的方法是运行:
查看所有已加载的审计规则
执行以下命令即可列出当前内核中生效的所有审计规则(包括系统启动时通过 /etc/audit/rules.d/ 加载的和后续手动添加的):
sudo auditctl -l
该命令输出的是当前运行时的规则快照,每行代表一条规则,包含规则类型(如 -w 监控文件、-a 插入系统调用规则等)、路径、权限、条件及关键字段(如 key=xxx)。
区分规则来源与持久化状态
auditctl -l 显示的是“当前生效”的规则,不体现是否持久。要确认规则是否在重启后仍存在,需检查:
-
/etc/audit/rules.d/ 目录下的
.rules文件(如10-paranoid.rules) - 主配置文件 /etc/audit/audit.rules(部分系统由
augenrules合并生成)
注意:手动用 auditctl -w 或 -a 添加的规则不会自动写入磁盘,重启后丢失;只有写入 rules.d/ 并执行 sudo augenrules --load 才能持久生效。
查看审计日志中的规则匹配情况
若想验证某条规则是否实际触发过,可结合 ausearch 按规则 key 查询:
sudo ausearch -k my_key_name
其中 my_key_name 是你在添加规则时用 -k 指定的标识符(例如 auditctl -w /etc/passwd -p wa -k passwd_access)。这有助于确认规则是否正常工作,而非仅“存在”。
检查审计服务状态与规则加载流程
确保审计子系统正在运行:
sudo systemctl status auditd
若服务未运行,auditctl -l 可能返回空或报错。规则加载通常由 auditd 服务启动时调用 augenrules 自动完成。也可手动重载:
-
sudo augenrules --load(从
rules.d/重建并加载audit.rules) - sudo systemctl restart auditd(推荐方式,更稳妥)











