auditd本身不直接生成可视化报表,仅采集和落盘原始日志;需结合ausearch、aureport等工具结构化提取,并满足时间同步(NTP偏差≤1秒)、关键事件覆盖(登录/权限变更/敏感文件修改)、日志防篡改等保三级硬性要求。

auditd本身不直接生成可视化报表,它只负责采集和落盘原始审计日志。要输出符合等保要求的行为分析报表,需结合ausearch、aureport等原生工具做结构化提取,并配合时间同步、规则覆盖、日志归集等前提条件。
确保基础配置满足等保硬性要求
等保三级明确要求审计日志必须完整、可追溯、时间可信。缺一不可:
-
时间同步必须达标:NTP服务需启用且偏差≤1秒,否则日志时间戳无效,aureport按时间统计将失真;可用
ntpq -p和timedatectl status验证 -
关键事件必须被记录:至少覆盖登录(
-w /var/log/secure -p wa -k login)、权限变更(-w /usr/bin/sudo -p x -k sudo_exec)、敏感文件修改(-w /etc/passwd -p wa -k passwd_change)三类 -
日志不可篡改、不丢失:auditd.conf中设置
log_file = /var/log/audit/audit.log、max_log_file = 50、num_logs = 10,并关闭rsyslog重复写入(加local0.none到rsyslog.conf)
用aureport快速生成等保常用报表
aureport是auditd生态中专为合规报告设计的工具,支持按维度聚合原始日志,无需写脚本:
-
用户登录行为汇总:
aureport -m -ts today --key ssh_login | grep -E "(success|failed)",可导出为CSV供审计查阅 -
特权命令执行清单:
aureport -f -i --key privileged_cmd --start today --summary,列出所有sudo/su调用频次与用户 -
关键文件访问审计:
aureport -f -i --key etc_change --start 7 days ago,定位/etc目录下7天内所有写操作及操作者 -
异常进程创建统计:
aureport -m --start 24 hours ago --summary | grep -E "(anomalous|execve)",辅助识别可疑shell调用
补全缺失维度:关联分析+人工标注
等保测评不仅看“有没有日志”,更关注“能否闭环分析”。aureport输出需补充上下文才具说服力:
- 将aureport结果与
ausearch -m execve -ui <uid> --start 7 days ago交叉比对,确认某用户是否在非工作时间执行高危命令 - 对
-k root_cmd类规则命中事件,用ausearch -k root_cmd --raw | aureport -f -i提取具体执行路径,判断是否属于运维白名单 - 导出报表时附上时间校验说明(如NTP服务状态截图)、规则加载证明(
auditctl -l | grep "etc_change"输出)
自动化交付建议
日常运维中可封装简单脚本每日生成PDF/HTML版摘要,例如:
#!/bin/bashaureport -m --start yesterday --summary > /tmp/login_summary.txt
aureport -f --key sudo_exec --start yesterday > /tmp/sudo_daily.txt
echo "等保审计日报 $(date +%F)" > /tmp/audit_report_$(date +%F).log
cat /tmp/login_summary.txt /tmp/sudo_daily.txt >> /tmp/audit_report_$(date +%F).log
再通过rsyslog或filebeat统一转发至SIEM平台,满足等保中“集中审计”条款。


















