实现监管企业员工的操作行为就需要开启审计功能,也就是audit,通过日志查看用户的操作行为
1、安装和开启auditd服务:
安装:yum install audit 安装后默认启动
查看运行状态: service auditd status
2、查看auditd的服务状态的另一种方式: auditctl -s
enabled为1表示开启,0表示关闭
3、服务开启后,所有的审计日志会记录在/var/log/audit/audit.log文件中
该文件记录格式是每行以type开头,其中红框处是事件发生的时间(代表从1970年1月1日到现在过了多久,可以用date命令转换格式),冒号后面的数字是事件ID,同一个事件ID是一样的
4、audit可以自定义对指定的文件或命令进行审计(如监视rm命令被执行、/etc/passwd文件内容被改变),只要配置好对应规则即可,配置规则可以通过命令行(临时生效)或者编辑配置文件(永久生效)两种方式来实现
命令行语法(临时生效):
auditctl -w /bin/rm -p x -k removefile
-w 指定所要监控的文件或命令
-p 指定监控属性,如x 执行、w修改
-k 设置一个关键词用于查询
编辑配置文件(永久生效):
配置文件是/etc/audit目录下的auditd.conf和audit.rules
auditd.conf 主要是定义了auditd服务日志和性能等相关配置
audit.rules才是定义规则的文件:其实就是把auditctl的命令直接拿过来即可,auditctl里支持的选项都可以在这个文件里指定
修改完后重启服务:service auditd restart
5、事件查看工具------ausearch :
-a number 只显示事件ID为指定数字的日志信息,如只显示926事件:ausearch -a 926
-c commond 只显示和指定命令有关的事件,如只显示rm命令产生的事件:auserach -c rm
-i 显示出的信息更清晰,如事件时间、相关用户名都会直接显示出来,而不再是数字形式
-k 显示出和之前auditctl -k所定义的关键词相匹配的事件信息
如: ausearch -k editfile -i
6、使用auditctl可以查看和清空规则:
auditctl -l 查看定义的规则
auditctl -D 清空定义的规则