今天学习了了sudo日志审计,专门对使用sudo命令系统的用户记录其执行的相关命令信息
说明:所谓sudo命令日志审计,不记录普通用户操作,而是记录执行sudo命令的用户操作
1、安装sudo命令,syslog服务
1
2
3
|
[root@qzj ~]
# rpm -qa |egrep "sudo|syslog"
rsyslog-5.8.10-10.el6_6.x86_64
sudo
-1.8.6p3-29.el6_9.x86_64
|
如果没有安装则执行下面的安装命令;
1
|
[root@qzj ~]
# yum install sudo rsyslog -y
|
2、配置/etc/sudoers
增加配置"Defaults logfile=/var/log/sudo.log"到/etc/sudoers中
1
2
3
4
5
6
|
[root@qzj ~]
# echo "Defaults logfile=/var/log/sudo.log" >>/etc/sudoers #追加到文件结尾
[root@qzj ~]
# tail -1 /etc/sudoers
Defaults logfile=
/var/log/sudo
.log
[root@qzj ~]
# visudo -c #检查sudoers文件语法
/etc/sudoers
: parsed OK
[root@qzj ~]
#
|
注:下面的3,4可以不执行,直接切到普通用户,然后查看/var/log/sudo.log有无操作
3、配置系统日志/etc/rsyslog.conf
增加配置local2.debug到/etc/rsyslog.conf中
1
2
3
|
[root@qzj ~]
# echo "ocal2.debug /var/log/sudo.log" >>/etc/rsyslog.conf
[root@qzj ~]
# tail -1 /etc/rsyslog.conf
ocal2.debug
/var/log/sudo
.log
|
4、重启syslog内核日志记录器
1
2
3
|
[root@qzj ~]
# /etc/init.d/rsyslog restart
Shutting down system logger: [ OK ]
Starting system logger: [ OK ]
|
此时,会自动建立一个/var/log/sudo.log 文件(日志中配置的名字)并用文件权限为600,所有者和组均为root
5、测试sudo日志审计结果
本文以efg用户为例:
1
2
3
4
5
6
7
8
9
10
|
[root@qzj ~]
# cat /etc/sudoers |grep efg #查看suoders配置文件里efg用户的权限
efg ALL=(ALL)
/bin/rm
,
/bin/userdel
,
/bin/touch
[efg@qzj ~]$
sudo
mkdir
kgk
[
sudo
] password
for
efg:
Sorry, user efg is not allowed to execute
'/bin/mkdir kgk'
as root on qzj.
#提示没有权限创建kgk文件
[efg@qzj ~]$
sudo
touch
123kkk
[
sudo
] password
for
efg:
[efg@qzj ~]$
ls
12 123kdk 12kgdk gxl
|
6、查看日志统计结果:
1
2
3
4
5
6
7
|
[root@qzj ~]
# cat /var/log/sudo.log
Oct 13 18:48:48 : efg :
command
not allowed ; TTY=pts
/2
; PWD=
/home/efg
;
USER=root ; COMMAND=
/bin/mkdir
kgk
Oct 13 18:49:06 : efg : TTY=pts
/2
; PWD=
/home/efg
; USER=root ;
COMMAND=
/bin/touch
123kkk
[efg@qzj ~]$
ls
#查看刚创建的文件
123kkk
|
所谓日志审计,就是记录所有系统及相关用户行为的信息、并且可以自动分析、处理、展示(包括文本或者录像)
日志集中管理目前可以通过scp+定时任务任务来推到日志服务器上116.196.68.28上/root/aildata/uploadlog
1
2
3
|
[root@qzj ~]
# scp -r /var/log/sudo.log root@116.196.68.28:/root/alidata/uploadlog
root@116.196.68.28's password:
#此位置输入远程主机密码
sudo
.log
|