auditd与auditctl监控文件读取方法
auditd -s read的含义及用法
auditd -s read
这一命令的写法存在混淆,需要结合 Linux 审计框架(auditd)的背景进行解析。以下是分步说明:
1. 理解 auditd 和 auditctl 的区别
- auditd:是 Linux 系统的审计守护进程,负责记录安全事件(如文件访问、系统调用等)。
- auditctl:是用于配置 auditd 规则的工具(如定义监控哪些事件)。
因此,直接通过 auditd
命令添加监控规则是错误的,应使用 auditctl
。
2. auditd -s
的实际含义
auditd -s
用于查看或管理 auditd 服务的状态,而非配置规则。1
2
3
4# 查看 auditd 服务状态
auditd -s
# 或通过 systemctl/service 命令
systemctl status auditd-s
参数通常不接受额外操作(如read
),auditd -s read
是无效命令。
3. 监控文件读取(read)的正确方法
若需监控文件或目录的读取操作(如 read
系统调用或文件访问),需使用 auditctl
添加规则:
示例 1:监控文件的读取访问
1 | # 监控 /etc/passwd 的读取、写入、执行(-p rwx) |
-w
:监控路径。-p r
:监控读操作(r
=read,w
=write,x
=execute)。-k
:为事件定义关键词(便于日志检索)。
示例 2:监控 read 系统调用
1 | # 监控 64 位系统上的 read 系统调用 |
-a exit,always
:在每次系统调用退出时记录。-F arch=b64
:指定架构(64 位)。-S read
:监控read
系统调用。
4. 验证规则与查看日志
查看已配置规则:
1
auditctl -l
检索日志(使用关键词
password_read
):1
ausearch -k password_read
5. 常见错误与纠正
- 错误:
auditd -s read
- 原因:误用
auditd
直接配置规则。
- 原因:误用
- 纠正:改用
auditctl
定义规则,例如:1
auditctl -w /path/to/file -p r -k monitor_read
总结
- **
auditd -s
**:用于服务状态管理,不能配置规则。 - 监控读取操作:使用
auditctl -w
或-S read
定义规则。 - 日志分析:通过
ausearch
或aureport
工具检索审计日志。
正确使用审计框架能有效追踪系统活动,增强安全性。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Helloeuler!