auditctl命令 – 管理内核的审计系统
auditctl命令来自英文词组“audit contol”的缩写,其功能是用于管理内核的审计系统。系统管理员可以使用auditctl命令对Linux系统内核的审计系统进行管理,例如执行查看审计系统状态、添加或删除审计规则等等操作。
语法格式:auditctl [参数]
常用参数:
-a | 向列表尾部添加规则 |
-A | 向列表头部添加规则 |
-b | 设置缓冲区最大值 |
-d | 删除规则 |
-D | 清空全部规则 |
-F | 创建一个字段 |
-i | 忽略读取文件时的错误 |
-k | 设置要过滤的关键词 |
-l | 显示所有的规则 |
-p | 设置审计文件的权限 |
-R | 设置从文件中读取规则 |
-s | 显示审计系统状态 |
-S | 设置规则名称 |
-w | 设置要监控的路径 |
参考示例
查看审计系统的运行状态信息:
[root@linuxcool ~]# auditctl -s enabled 1 failure 1 pid 937 rate_limit 0 backlog_limit 8192 lost 0 backlog 0 backlog_wait_time 60000 loginuid_immutable 0 unlocked
查看现有的审计规则:
[root@linuxcool ~]# auditctl -l No rules
添加一条审计规则,用于记录指定用户(UID:1000)的所有打开系统调用的行为:
[root@linuxcool ~]# auditctl -a entry, always -S open -F uid=1000 Warning - entry rules deprecated, changing to exit rule] WARNING -32/64 bit syscall mismatch, you should specify an arch
删除一条指定的审计规则:
[root@linuxcool ~]# auditctl -d entry, always -S open -F uid=1000 Warning - entry rules deprecated, changing to exit rule
清空当前系统中已有的全部审计规则:
[root@linuxcool ~]# auditctl -D