Linux系統實戰項目——sudo日志審計
由於企業內部權限管理啟用了sudo權限管理,但是還是有一定的風險因素,畢竟運維、開發等各個人員技術水平、操作習慣都不相同,也會因一時失誤造成誤操作,從而影響系統運行
因此,征對sudo提權的操作,便於管理與後續維護,開啟sudo日志審計功能對用戶執行 sudo命令的操作行為,但又不記錄其它命令的操作行為
一:生產環境中日志審計方案如下:
1、syslog全部操作日志審計,此種方法信息量大,不便查看
2、sudo日志配合syslog服務進行日志審計
3、堡壘機日志審計
4、bash安裝監視器,記錄用戶使用操作
二:配置sudo日志審計
1、安裝sudo與syslog服務
[root@Centos ~]# rpm -qa|grep sudo
sudo-1.8.6p3-24.el6.x86_64
[root@Centos ~]# rpm -qa|grep rsyslog
rsyslog-5.8.10-10.el6_6.x86_64
檢查是否安裝兩種服務,如果沒有安裝,就使用下面的命令進行安裝
yum install sudo -y
yum install rsyslog -y
備注:Centos 5.x 為syslog,Centos 6.x 為rsyslog
2、配置服務
創建日志保存目錄
[root@Centos ~]# mkdir -p /var/log/
服務器環境查看
[root@Centos ~]# cat /etc/redhat-release
CentOS release 6.5 (Final)
[root@Centos ~]# uname -r
2.6.32-431.el6.x86_64
服務器環境為centos 6.5 所以syslog日志配置文件為/etc/rsyslog.conf
[root@Centos ~]#echo "local2.debug /var/log/sudo.log">>/etc/rsyslog.conf
查看配置
[root@Centos ~]# tail -1 /etc/rsyslog.conf
local2.debug /var/log/sudo.log
如果服務器為centos 5.x 所以syslog日志配置文件為/etc/syslog.conf
[root@Centos ~]#echo "local2.debug /var/log/sudo.log">>/etc/syslog.conf
[root@Centos ~]#echo "Defaults logfile=/var/log/sudo.log">>/etc/sudoers
查看配置
[root@Centos ~]# tail -1 /etc/syslog.conf
local2.debug /var/log/sudo.log
3、配置/etc/sudoers
[root@Centos ~]# echo "Defaults logfile=/var/log/sudo.log">>/etc/sudoers
[root@Centos ~]# tail -1 /etc/sudoers
Defaults logfile=/var/log/sudo.log
4、重啟服務
[root@Centos ~]# /etc/init.d/rsyslog restart
Shutting down system logger: [ OK ]
Starting system logger: [ OK ]
三:測試日記審計結果
[root@Centos ~]# su - cjkaifa001
[cjkaifa001@Centos ~]$ pwd
/home/cjkaifa001
[cjkaifa001@Centos ~]$ touch 123.txt
[cjkaifa001@Centos ~]$ sudo ls
123.txt
[cjkaifa001@Centos ~]$ cat /var/log/sudo.log
cat: /var/log/sudo.log: Permission denied
直接使用cat命令提示權限不足
[cjkaifa001@Centos ~]$ sudo cat /var/log/sudo.log 使用sudo提權後可查看
Sep 11 02:41:50 : cjkaifa001 : TTY=pts/1 ; PWD=/home/cjkaifa001 ; USER=root ;
COMMAND=/bin/ls
Sep 11 02:44:57 : cjkaifa001 : TTY=pts/1 ; PWD=/home/cjkaifa001 ; USER=root ;
COMMAND=/bin/cat /var/log/sudo.log
經過測試能正常記錄用戶使用sudo的操作日志記錄,其它命令沒有記錄
[root@Centos ~]# rm -rf /var/log/sudo.log
[root@Centos ~]# /etc/init.d/rsyslog stop
Shutting down system logger: [ OK ]
[root@Centos ~]# su - cjkaifa001
[cjkaifa001@Centos ~]$ cd /
[cjkaifa001@Centos /]$ pwd
/
[cjkaifa001@Centos /]$ ls /root
ls: cannot open directory /root: Permission denied
[cjkaifa001@Centos /]$ sudo ls /root
[sudo] password for cjkaifa001:
anaconda-ks.cfg dead.letter Downloads install.log.syslog Public Videos
backup Desktop etc.tar.gz.2016 Music tar.gz.20160820
data Documents install.log Pictures Templates
[cjkaifa001@Centos /]$ cat /var/log/sudo.log
cat: /var/log/sudo.log: Permission denied
[cjkaifa001@Centos /]$ sudo cat /var/log/sudo.log
[sudo] password for cjkaifa001:
Sep 11 03:24:39 : cjkaifa001 : TTY=pts/1 ; PWD=/ ; USER=root ; COMMAND=/bin/ls
/root
Sep 11 03:30:57 : cjkaifa001 : TTY=pts/1 ; PWD=/ ; USER=root ; COMMAND=/bin/cat
/var/log/sudo.log
經過測試,直接停掉rsyslog服務,只配置/etc/sudoers也可以記錄用戶sudo提權操作日志記錄
備注:實際生產環境中,可將日志審計記錄結果定期推送至指定的日志備份服務器上,後續會介紹具體操作過程(如何推送日志記錄)
如需轉載,煩請注明原出處,更多內容可以掃描下方二維碼關注公眾號
長按二維碼關注微信公眾號——友侃有笑
http://xxxxxx/Linuxjc/1158107.html TechArticle