永久保存 auditd 审计规则需写入 /etc/audit/rules.d/ 目录(如 10-critical-files.rules),用 augenrules --load 编译生效,并启用 auditd 服务、重启验证,最后手动触发操作并用 ausearch 确认日志捕获。

永久保存 auditd 审计规则,核心是让规则在系统重启、服务重载后依然有效。不能只用 auditctl 临时添加,必须写入配置目录并触发编译加载。
把规则写进 /etc/audit/rules.d/ 目录
这是标准且推荐的做法。auditd 启动时会自动读取该目录下所有以 .rules 结尾的文件,并按文件名前缀数字排序合并生效。
- 创建自定义规则文件,例如:
sudo vim /etc/audit/rules.d/10-critical-files.rules - 每行写一条完整规则,路径必须真实存在,比如:
-w /etc/shadow -p wa -k etc_shadow_mod - 文件名建议带数字前缀(如
10-、20-),确保加载顺序合理
用 augenrules 加载并生成最终配置
augenrules 是官方工具,负责把 /etc/audit/rules.d/ 下所有规则汇总编译成 /etc/audit/audit.rules,auditd 启动时实际读取的就是这个文件。
Zynq‑7000 / Zynq UltraScale+ 硬件调试技能。适用于 Xilinx Zynq(Cortex‑A9/A53 + FPGA)Linux 环境,调试 I2C、I2S、UART、GPIO 等外设。包括设备树配置、内核驱动、用户空间调试工具、交叉编译和常见问题排查,支持 PetaLinux 开发。
- 执行命令加载:
sudo augenrules --load - 验证是否成功:
sudo auditctl -l | grep shadow(应看到对应规则) - 检查生成的主配置:
sudo cat /etc/audit/audit.rules | grep shadow
确认服务已启用并重启生效
即使规则写对了,如果 auditd 服务没开机自启或当前未运行,规则也不会起作用。
- 确保服务启用:
sudo systemctl enable auditd - 启动服务:
sudo systemctl start auditd - 重启服务使新规则立即生效:
sudo systemctl restart auditd - 查看状态:
sudo systemctl status auditd,确认 “active (running)”
别跳过验证环节
规则写完不等于它真能捕获事件。必须手动触发一次目标操作,再查日志确认。
- 比如修改被监控文件:
sudo touch /etc/shadow(仅测试属性变更) - 立刻检索:
sudo ausearch -k etc_shadow_mod -i | head -5 - 若无输出,检查路径是否存在、权限标记是否匹配、服务是否运行










