11.6. 使用 auditctl 来定义和执行审计规则
				审计系统根据一组规则进行操作,这些规则定义日志文件中所捕获的内容。使用 auditctl 工具,可以在命令行或 /etc/audit/rules.d/ 目录中设置审计规则。
			
				auditctl 命令使您能够控制审计系统的基本功能,并定义决定记录哪些审计事件的规则。
			
文件系统规则示例
- 要定义一条规则,记录对 - /etc/passwd文件的所有写访问和每个属性的修改:- auditctl -w /etc/passwd -p wa -k passwd_changes - # auditctl -w /etc/passwd -p wa -k passwd_changes- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 要定义一条规则,记录对 - /etc/selinux/目录中所有文件的写访问和每个属性的修改:- auditctl -w /etc/selinux/ -p wa -k selinux_changes - # auditctl -w /etc/selinux/ -p wa -k selinux_changes- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
系统调用规则示例
- 要定义一条规则,当程序每次使用 - adjtimex或- settimeofday系统调用时就创建一条日志,系统使用 64 位构架:- auditctl -a always,exit -F arch=b64 -S adjtimex -S settimeofday -k time_change - # auditctl -a always,exit -F arch=b64 -S adjtimex -S settimeofday -k time_change- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 定义一条规则,在 ID 为 1000 或以上的系统用户每次删除或重命名文件时创建一条日志: - auditctl -a always,exit -S unlink -S unlinkat -S rename -S renameat -F auid>=1000 -F auid!=4294967295 -k delete - # auditctl -a always,exit -S unlink -S unlinkat -S rename -S renameat -F auid>=1000 -F auid!=4294967295 -k delete- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 请注意, - -F auid!=4294967295选项用于排除未设置登录 UID 的用户。
可执行文件规则
					要定义一条规则,记录所有 /bin/id 程序的执行,请执行以下命令:
				
auditctl -a always,exit -F exe=/bin/id -F arch=b64 -S execve -k execution_bin_id
# auditctl -a always,exit -F exe=/bin/id -F arch=b64 -S execve -k execution_bin_id