在哪里查找Linux auditd 日志以及如何导出它们

在哪里查找Linux auditd 日志以及如何导出它们

SOC Prime Team
SOC Prime Team linkedin icon 关注

auditd 写入 /var/log/audit/audit.log,只能由 root 读取。最快的时间窗口导出原始格式的方法是:

sudo ausearch --raw -ts yesterday > web-03_audit.log

如果 /var/log/audit 不存在,代表 auditd 未安装。这是 Debian 和 Ubuntu 的默认设置。此时,内核的审计事件会进入日志,使用 journalctl _TRANSPORT=audit 可以找到它们。

auditd 是 Linux 对于“谁运行了什么,接触了哪些文件”的解答:进程执行、文件访问、权限更改和账户更改,精确到系统调用。Prime Core 拥有 1350 条针对于 auditd 数据的检测规则,映射到 440 个 MITRE ATT&CK 技术。包括:恶意 shell 使用(T1059.004)、植入 SSH 密钥(T1098.004)和敏感文件的权限更改(T1222.002)。

免费开始使用

在您开始之前

它是否正在运行,以及它记录了什么?

systemctl is-active auditd

sudo auditctl -l

Red Hat 系统默认安装 auditd;Debian 和 Ubuntu 需要安装 auditd 包。如果 auditctl -l 打印 No rules,您仍旧会获得登录、认证和 SELinux 拒绝的基本记录。不过,由于没有请求,您不会获取命令执行或文件访问记录。

仅限 root。 /var/log/audit 被严格锁定,因此请计划使用 sudo。

轮换是 auditd 自己进行的。 auditd 自行轮换日志,基于 /etc/audit/auditd.conf 中的 max_log_file 和 num_logs,形成 audit.log.1、audit.log.2 等。旧的历史记录在这些文件中。

格式需要一些时间来适应。 一个事件通常是几行(SYSCALL、EXECVE、CWD、PATH、PROCTITLE),共享同一个 msg=audit(<epoch>:<serial>) 标记。带空格的值是十六进制编码的。这是正常的。

步骤 1:使用 ausearch 导出

ausearch 按时间、记录类型或规则键进行过滤,并且 –raw 保留原始格式:

# 一天,原始

sudo ausearch --raw -ts yesterday -te today > web-03_audit.log

关键字 today、yesterday、this-week 和 recent(过去十分钟)可以省去日期格式的麻烦。明确的日期遵循您的区域设置,如 en_US 的 10/19/2026 00:00:00,这也是大多数“无匹配”惊喜的来源。

对于上传,请保持 –raw:原始记录携带的信息比解释视图更多。

如果您更想获取所有内容,请按从旧到新的顺序连接文件:

sudo cat $(ls -tr /var/log/audit/audit.log*) > web-03_audit_all.log

步骤 2(无 auditd):从日志中获取审计事件

没有 auditd,内核的审计记录仍到达 journald:

sudo journalctl _TRANSPORT=audit --since yesterday -o json --no-pager > web-03_audit.jsonl

在没有加载规则的情况下,预计大多数是登录和 SELinux 或 AppArmor 消息,但总比没有好。

在 LogTotal 上传、清理和审查

  1. 上传。 打开 logtotal.com 并将文件拖入其中。 
  2. 清理。 在继续之前查看一下。
  3. 审查。 

当出现问题时

症状可能原因Fix
/var/log/audit 不存在auditd 未安装使用日志路线(步骤 2)
权限被拒绝非 root 用户sudo
仅限登录,无命令未加载执行规则正常;为未来添加规则
ausearch 的 <no matches>日期格式与您的区域设置不匹配使用 today、yesterday、this-week
内核消息中的“backlog limit exceeded”内核在负载下丢失了审计事件将日志视为有间隙;提高 backlog_limit

FAQ

我现在应该打开 auditd 吗?

是的,为下次准备。规则决定了一切,所以从一个已知的规则集开始,而不是从头写自己的规则。审计包提供示例规则,并且存在维护良好的社区规则集。

auditd 还是日志:哪个是真实记录?

运行 auditd 时,/var/log/audit/audit.log 是完整的记录。日志可能根据配置保留部分副本。

加入 SOC Prime 的 Detection as Code 平台 以提高对与您的业务最相关的威胁的可见性。为了帮助您开始并带来即时价值,现在与 SOC Prime 专家预约会议。