aureport 是 Linux 审计系统中用于生成结构化安全审计报告的核心工具,基于 auditd 日志按事件类型汇总统计,支持登录、进程、文件、账号等专项分析,可限定时间范围、导出 CSV/JSON,并通过 -k 标签联动 auditctl 规则实现精准追踪。

aureport 是 Linux 审计系统中用于生成结构化安全审计报告的核心工具,不是 Aport(该命令不存在)。它基于 auditd 收集的原始日志(默认 /var/log/audit/audit.log),按事件类型汇总、统计、格式化输出,适合日常巡检、合规检查和异常行为追踪。
快速生成基础汇总报告
执行不带参数的 aureport,会输出一个简明统计视图,包括登录、进程、文件、账户等事件总数:
sudo aureport
输出示例含:
- Login events(成功/失败登录次数)
- Process events(execve 调用频次)
- File events(文件访问相关事件数)
- Account events(用户/组变更次数)
这是判断系统审计是否活跃、有无明显异常的第一步。
按事件类型生成专项报告
使用 -l、-m、-f、-x 等选项聚焦关键安全维度:
-
登录行为分析(含失败尝试):
sudo aureport -l
-
账号管理操作(如
useradd、groupmod):sudo aureport -m
-
文件访问与修改(如
open、chmod、write):sudo aureport -f
-
程序执行记录(所有
execve调用):sudo aureport -x
提示:加
-i参数可将 UID/GID、系统调用号等转换为可读名称(如root、bind),大幅提升可读性。
限定时间范围提升报告有效性
审计日志量大,必须配合 --start 和 --end 缩小分析窗口:
# 查看今日所有登录事件 sudo aureport -l --start today # 查看近3天的账号变更(含时间、用户、命令) sudo aureport -m --start "3 days ago" -i # 查看昨日特定关键字的文件操作(需规则中已设 `-k`) sudo aureport -f --key passwd_mod --start yesterday
支持的时间格式包括:today、yesterday、2026-10-01、"2026-10-05 14:30" 等。
导出结构化数据供进一步分析
默认输出为终端友好的文本,加 --format 可导出为标准格式:
-
导出为 CSV(兼容 Excel、SIEM):
sudo aureport -l --start today --format csv > login_report_$(date +%F).csv
-
导出为 JSON(便于脚本解析或对接平台):
sudo aureport -m --start "2026-10-01" --format json > account_changes.json
注意:若需美化 JSON 输出,可管道给
jq工具:| jq '.'(需提前安装)。
结合 -k 标签做定向追踪(真正实用的关键)
aureport 的价值在与 auditctl 规则中的 -k(key)标签联动。例如你曾配置:
sudo auditctl -w /etc/shadow -p wa -k shadow_access
那么后续即可精准提取所有相关操作:
sudo aureport -f --key shadow_access -i
同一 key 可关联多个规则(如监控 /etc/passwd 和 /etc/group 都用 -k identity),方便统一归因分析。
补充:若审计日志路径被自定义(如
auditd.conf中改了log_file),需显式指定:sudo aureport -l --input /var/log/audit/myaudit.log


















