Linux安全审计之audit安装与使用

场景

安全最重要的一步是内部安全,如何监控用户的行为是一个永恒不变的话题。
audit可以详细监控用户的行为,详细到查看或修改了某个文件。这些都可以在日志中查看到。

安装

小贴士:
CentOS默认已经安装

yum -y install audit*

开启audit服务

service auditd start		#开启
service auditd stop			#关闭
service auditd restart			#重启

配置文件

vim /etc/audit/auditd.conf
log_file = /var/log/audit/audit.log		#日志保存文件
max_log_file = 6						#单个日志文件最大占用空间(MB)
max_log_file_action = ROTATE			#日志文件达到最大空间的动作: ROTATE为将旧日志文件重命名,再新建日志文件继续写入
freq = 20								#每隔20条记录写入日志中(flush = INCREMENTAL时有效)

添加规则

1.临时有效
auditctl -w /bin/rm -p x -k removefile
	-w	#指定所要监控的文件或命令
	-p	#监控属性(如x执行)
	-k	#指定关键词(方便在日志中查询)
	-D	#清除规则(临时,不会清除配置文件规则)
2.永久生效

小贴士:
/etc/audit/rules.d/audit.rules为规则配置文件
/etc/audit/audit.rules根据/etc/audit/rules.d/audit.rules里的规则自动生成
所以我们编辑/etc/audit/rules.d/audit.rules就好了

vim vim /etc/audit/rules.d/audit.rules
	-w /bin/rm -p x -k removefile		#添加这一句
service auditd restart					#重启服务

查看规则

auditctl -l

查看日志

小贴士:
实验过程中记得把配置文件/etc/audit/auditd.conf中freq设置为1,不然很可能查看不到结果。

方式1-直接查看
cat /var/log/audit/audit.log

例如:运行命令rm -rf /root/123
发现可以详细的看到谁在什么时候对谁干了些什么

字段解释
type=PATH							#类型
msg=audit(1558846158.888:141)		#时间戳和事件id(同一事件则id相同)
方式2-ausearch

一般查日志的方式很不方便,所以audit给出了非常友好的日志查看命令。

ausearch
	-i		#显示信息更清晰,比如显示日期而不是时间戳
	-k		#指定关键词(auditctl -k指定的关键词)
	-c  commond		#只显示与指令相关日志(如-c rm)

例如:运行命令ausearch -i
可以看到不同事件用----分割开;
显示了日期而不是时间戳;
显示了用户名而不是uid。

发布了99 篇原创文章 · 获赞 44 · 访问量 8万+

猜你喜欢

转载自blog.csdn.net/NetRookieX/article/details/90577005