ausearch是auditd的核心检索工具,可按关键词(-k)、用户(-ua/-ui)、文件路径(-f)、时间范围(-ts/-te)及结果状态(-sv)等条件精准过滤/var/log/audit/audit.log中的审计事件,并支持-i输出可读格式。

ausearch 是 auditd 审计系统的核心检索工具,能直接从 /var/log/audit/audit.log 中按条件过滤事件,无需手动翻日志。关键在于组合好字段条件,用 -i 让输出可读,用 -k 关联自定义规则,再配合时间、用户、路径等维度缩小范围。
按关键词快速定位已定义的审计规则
如果你在 /etc/audit/rules.d/ 里用 -k privilege_escalation 添加过规则,就可以直接按关键词查所有匹配事件:
-
ausearch -k privilege_escalation --start today | aureport -f -i—— 查今天所有标记为提权尝试的操作,并用aureport -f -i聚合出涉及的文件和用户 -
ausearch -k passwd_changes -i—— 查所有修改密码相关操作(前提是规则中用了-k passwd_changes) - 多个关键词可同时查:
ausearch -k login_fail -k sudo_exec -i
按用户或进程精准追踪操作行为
用 UID 或 auid(登录会话原始用户 ID)能排除 sudo 切换带来的干扰,比只看当前 UID 更可靠:
-
ausearch -ua 1001 -i—— 查用户 UID=1001 的全部审计事件(含登录、命令执行、文件访问) -
ausearch -ui 0 -i—— 查 root 用户(UID=0)的直接操作,不含被 sudo 提权的子进程 -
ausearch -p 1234 -i—— 查 PID=1234 的进程完整生命周期(创建、系统调用、退出)
按文件路径锁定敏感操作源头
监控 /etc/shadow、/etc/sudoers 等关键文件时,-f 选项最直接:
-
ausearch -f /etc/shadow -i—— 查所有对 shadow 文件的访问(读、写、打开等),包括失败尝试 -
ausearch -f /etc/passwd -m SYSCALL -sc write -i—— 只查对 passwd 文件的写入系统调用 - 注意:-f 匹配的是被操作的文件路径,不是命令路径;如需查谁运行了
vim /etc/shadow,得结合-c vim和-f /etc/shadow
按时间与结果筛选提高排查效率
加时间范围避免全量扫描,用 -sv 过滤成功/失败状态,直击异常点:
-
ausearch -ts yesterday -te now -m SYSCALL -sv no -i—— 查昨天至今所有失败的系统调用(如权限拒绝、文件不存在) -
ausearch -m USER_LOGIN --success no -i—— 查所有失败的登录尝试(需 auditd 已启用登录事件记录) -
ausearch -m execve -F key=privilege_escalation -F exit=-1 -i—— 查所有带该 key 且执行失败的命令(exit=-1 表示系统调用返回错误)











