这是 security/auditd-logs.md 的每次改动内容,按时间从新到旧。其他文章一起提交的部分不会出现在这里。
#1
2026-10-18
+67
−0
docs: 新增容器/安全分类,补 Windows 组策略与 Linux 内核救援,共 11 篇
69302a9
new file mode 100644
@@ -0,0 +1,67 @@
+---
+tags: [auditd, 审计, 日志]
+order: 20
+---
+
+# auditd 审计与日志集中
+
+## 场景
+
+等保要求「审计记录保留 6 个月以上」,还要能查谁在什么时候改了关键文件。
+
+## 前置条件
+
+- 有独立日志盘或足够的空间
+- 有集中的日志服务器(可选但强烈建议)
+- 知道要审计哪些文件:`/etc/passwd`、`/etc/sudoers`、应用配置
+
+## 配置
+
+```bash
+# 审计规则
+cat >/etc/audit/rules.d/ops.rules <<'EOF'
+-w /etc/passwd -p wa -k passwd_change
+-w /etc/shadow -p wa -k shadow_change
+-w /etc/sudoers -p wa -k sudoers_change
+-w /etc/ssh/sshd_config -p wa -k sshd_config
+-a always,exit -F arch=b64 -S execve -k exec
+EOF
+
+augenrules --load
+systemctl restart auditd
+
+# 保留策略
+sed -i 's/^max_log_file .*/max_log_file = 100/' /etc/audit/auditd.conf
+sed -i 's/^num_logs .*/num_logs = 30/' /etc/audit/auditd.conf
+
+# 集中转发
+cat >/etc/rsyslog.d/50-audit.conf <<'EOF'
+*.* @@log.corp.local:514
+EOF
+systemctl restart rsyslog
+```
+
+## 验证
+
+```bash
+auditctl -l
+ausearch -k passwd_change -ts today
+aureport --summary
+tail -f /var/log/audit/audit.log
+```
+
+## 回滚
+
+```bash
+rm /etc/audit/rules.d/ops.rules
+augenrules --load
+```
+
+## 坑
+
+- **审计规则加太多**,`execve` 全量审计会把磁盘瞬间写满。
+- 审计日志和业务日志放同一块盘,谁写满都一起死。
+- rsyslog 转发没开 TLS,日志在路上可能被改。
+- 日志时间用 UTC,查的时候对不上本地时间。
+- 只在本机留日志,机器被入侵后日志也被清。
+- 改 `auditd.conf` 后 restart 才会生效,reload 不够。