文章目录
auditctl
是 Linux 审计系统(Audit System)的命令行工具,用于配置和管理审计规则。审计系统用于记录系统事件和用户活动,以便进行安全审计和合规性检查。 auditctl
命令可以动态地添加、删除和查看审计规则。
基本语法
sh
auditctl [OPTIONS] [COMMAND]
常用参数和选项
添加规则
-a
:添加规则。-a always,exit
:添加一个始终记录的规则。-a never,exit
:添加一个从不记录的规则。
删除规则
-d
:删除规则。-d always,exit
:删除一个始终记录的规则。-d never,exit
:删除一个从不记录的规则。
查看规则
-l
:列出当前的审计规则。
控制审计系统
-e
:启用或禁用审计系统。-e 0
:禁用审计系统。-e 1
:启用审计系统。-e 2
:启用审计系统,并且在内核中锁定配置,防止进一步的更改。
其他选项
-w
:监视文件或目录。-w /path/to/file
:监视指定的文件或目录。
-k
:为规则添加一个键(key),用于标识和过滤审计记录。-k keyname
:为规则添加一个键名。
使用示例
启用审计系统
sh
auditctl -e 1
禁用审计系统
sh
auditctl -e 0
添加文件监视规则
监视 /etc/passwd
文件的所有访问和修改操作:
sh
auditctl -w /etc/passwd -p rwxa -k passwd_changes
-w /etc/passwd
:监视/etc/passwd
文件。-p rwxa
:监视读(r)、写(w)、执行(x)和属性更改(a)操作。-k passwd_changes
:为规则添加键名passwd_changes
。
删除文件监视规则
删除对 /etc/passwd
文件的监视规则:
sh
auditctl -W /etc/passwd
添加系统调用规则
监视所有对 /etc/shadow
文件的打开操作:
sh
auditctl -a always,exit -F path=/etc/shadow -F perm=wa -k shadow_changes
-a always,exit
:添加一个始终记录的规则。-F path=/etc/shadow
:指定监视的文件路径。-F perm=wa
:监视写(w)和属性更改(a)操作。-k shadow_changes
:为规则添加键名shadow_changes
。
删除系统调用规则
删除对 /etc/shadow
文件的监视规则:
sh
auditctl -d always,exit -F path=/etc/shadow -F perm=wa -k shadow_changes
列出当前的审计规则
sh
auditctl -l
结合 ausearch
和 aureport
auditctl
配置的审计规则会生成审计日志,这些日志可以使用 ausearch
和 aureport
命令进行查询和报告。
查询审计日志
使用 ausearch
查询特定键名的审计记录:
sh
ausearch -k passwd_changes
生成审计报告
使用 aureport
生成审计报告:
sh
aureport -k
总结
auditctl
是一个强大的工具,用于配置和管理 Linux 审计系统的规则。通过使用 auditctl
,可以监视文件和目录的访问、系统调用以及其他重要的系统事件。结合 ausearch
和 aureport
,可以有效地查询和报告审计日志,帮助管理员进行安全审计和合规性检查。