正文
Linux 用户行为日志记录
小程序:扫一扫查出行
【扫一扫了解最新限行尾号】
复制小程序
【扫一扫了解最新限行尾号】
复制小程序
工作中我们常常遇到,有的员工不安于被分配的权限,老是想sudo echo "ziji" /usr/bin/visudo NOPASSWD:ALL来进行提权,造成误删了数据库某条重要的数据,或者执行了一条命令对线上生产造成了严重的影响,部门老大又苦于找不到造成这种现象的操作者,CTO对你们部门直接扣除绩效,这样你们集体成了背锅侠。。。为了记录员工做的违规操作行为,所以就有了以下的方案。
我们今天要学习的是:sudo日志审计,专门对使用sudo命令的系统用户记录其执行的命令相关信息,所谓日志审计,就是记录所有系统及相关用户行为的信息,并且可以自动分析,处理,展示(包括文本或着录像)
一)生产环境日志审计解决方案:
通过环境变量命令及syslog服务进行全部日志审计(信息太大,不推荐)
sudo配合syslog服务,进行日志审计(信息较少,效果不错)
在bash解释器程序里嵌入一个监视器,让所有被审计的系统用户使用修改过的增加了监视器的特殊bash程序作为解释程序。
齐治的堡垒机:商业产品
二)配置sudo日志审计
通过环境变量命令及syslog服务进行全部日志审计(信息太大,不推荐)
sudo配合syslog服务,进行日志审计(信息较少,效果不错)
在bash解释器程序里嵌入一个监视器,让所有被审计的系统用户使用修改过的增加了监视器的特殊bash程序作为解释程序。
齐治的堡垒机:商业产品
说明:所谓sudo命令日志审计,并不记录普通用户的普通操作,而是记录,那些执行sudo命令的用户的操作。
1、安装sudo命令,rsyslog服务
[root@s- /]# rpm -qa|grep sudo #要是没安装执行yum install sudo -y
sudo-1.8.19p2-.el7.x86_64
[root@s- /]# rpm -qa|grep rsyslog #要是没安装执行yum install rsyslog -y
rsyslog-8.24.-.el7.x86_64
[root@s- /]#
2、配置服务
2.1配置系统日志/etc/rsyslog.conf,增加配置local.debug到/etc/rsyslog.conf中
[root@s- /]# cat /var/log/ #查看日志文件是否存在没有就创建mkdir -p /var/log
cat: /var/log/: Is a directory
[root@s- /]# cat /etc/redhat-release
CentOS Linux release 7.5. (Core)
[root@s- /]# uname -r
3.10.-.el7.x86_64
[root@s- /]# tail - /etc/rsyslog.conf #没有就执行echo "local.debug /var/log/sudo.log">>/etc/rsyslog.conf
local.debug /var/log/sudo.log
[root@s- /]#
2.2配置/etc/sudoers,增加配置 “Defaults logfile=/var/log/sudo.log” 到/etc/sudoers中,注意:不包含引号。
[root@s- /]# echo "Defaults logfile=/var/log/sudo.log">>/etc/sudoers
[root@s- /]# tail - /etc/sudoers
Defaults logfile=/var/log/sudo.log
[root@s- /]# visudo -c
/etc/sudoers: parsed OK
[root@s- /]#
3、重启syslog内核日志记录器(简单来说就是重启服务了)
[root@s- /]# systemctl restart rsyslog
[root@s- /]#
说到审计,有时候需要自定义审计规则,想了解的请参考下文哦:
CentOS 7上编写自定义系统审计规则