aureport 将 auditd 二进制日志转为合规报表需指定归档路径、筛选事件类型与时间范围,并用 --field 和 --format 输出结构化 CSV;须确保 auditd 正常运行、规则已打标、归档已解压。

使用 aureport 将 auditd 原始二进制日志转为可读的合规巡检报表,关键在于正确筛选事件类型、时间范围和关注字段,并导出为结构化格式(如 CSV 或文本)便于审计分析。
确认 auditd 日志已正常采集并归档
auditd 默认将日志写入 /var/log/audit/audit.log,轮转后生成 audit.log.N(N 为数字)或压缩归档。aureport 默认只读取当前未轮转的日志;若需分析历史记录,必须显式指定归档路径:
- 查看可用日志:`ls /var/log/audit/audit.log*`
- 检查归档是否启用:`sudo auditctl -s | grep "enabled"` 和 `grep -i "max_log_file_action" /etc/audit/auditd.conf`(应为
rotate或keep_logs) - 确保
auditd正在运行:`sudo systemctl status auditd`
用 aureport 提取关键合规事件(登录、权限变更、关键命令)
合规巡检通常聚焦用户行为与系统变更。以下命令可快速生成核心事件摘要:
- 登录/登出事件(含失败尝试):
aureport -m -i --start today --format csv - 特权命令执行(如 sudo、su):
aureport -f -i --start yesterday --key sudo --format csv(需提前用-a always,exit -F arch=b64 -C uid!=euid -F key=sudo等规则打标) - 文件权限/属主变更:
aureport -f -i --start 7 days ago --field perm,perm_mask --format csv | grep -E "(0[246]|200|400|600)" - 账户管理操作(useradd/groupmod):
aureport -m -i --start 30 days ago --field exe --interpret | grep -E "(useradd|usermod|groupadd|passwd)"
按合规标准组织报表字段与时间范围
典型等保/ISO27001 报表需包含时间、主体、客体、动作、结果、源IP。aureport 支持自定义字段输出,但需配合 --format csv 和 --field 精确控制:
- 基础合规行格式示例:
aureport -f -i --start "2024/04/01 00:00:00" --end "2024/04/30 23:59:59" --field time,acct,exe,comm,path,perm,success --format csv > apr_apr2024_files.csv - 注意:
-i启用解释模式(将 UID/GID 转用户名),--field中字段名须与 aureport 支持字段一致(见aureport --help的 FIELD OPTIONS) - 时间格式支持:`today`、`yesterday`、`7 days ago`、`YYYY/MM/DD HH:MM:SS`(推荐用带时分秒的精确格式避免歧义)
自动化导出与简单清洗(去重、排序、过滤)
aureport 输出为 CSV,可直接导入 Excel 或用 shell 工具进一步处理:
- 去重并按时间倒序:
aureport -m -i --start today --format csv | sort -t',' -k2,2r | uniq > login_report.csv - 提取高风险失败事件:
aureport -a -i --start 24 hours ago --field time,acct,exe,success,res | awk -F',' '$6=="failed" {print}' > failed_auth.csv - 合并多日志源(如 audit.log + audit.log.1):
aureport -f -i -if /var/log/audit/audit.log.1 -if /var/log/audit/audit.log --start 7 days ago --format csv > weekly_files.csv
不复杂但容易忽略:aureport 默认不解析压缩归档(.gz),需先解压;所有时间范围参数对归档日志同样生效,只要路径正确且日志格式兼容。报表价值取决于前期 auditd 规则是否覆盖合规要点——没打标的事件,aureport 无法凭空还原。


















