首页 男生 其他 Linux/Unix技术丛书·跟老男孩学Linux运维:核心基础篇(上)(第2版)

  您可以在百度里搜索“Linux/Unix技术丛书·跟老男孩学Linux运维:核心基础篇(上)(第2版) 艾草文学(www.321553.xyz)”查找最新章节!

  

  15.3.2 利用sudo配置日志审计

  首先增加配置“Defaults logfile=/var/log/sudo.log”到/etc/sudoers中,注意,不包含引号:

  [root@oldboy ~]# echo "Defaults logfile=/var/log/sudo.log">>/etc/sudoers

  sudo日志审计代码比较简单,具体如下:

  [root@oldboy ~]# tail -1 /etc/sudoers

  Defaults logfile=/var/log/sudo.log

  [root@oldboy ~]# visudo -c #<==检查sudoers文件语法

  /etc/sudoers file parsed OK

  此时会自动建立一个/var/log/sudo.log文件(日志中配置的名字),并且文件权限为600(-rw-------),所有者和组均为root(如果看不到日志文件,就退出重新登录看看),实现代码如下:

  [root@oldboy ~]# ls -l /var/log/sudo.log #<==确保只有root才能查看。

  -rw------- 1 root root 0 Jan 26 00:48 /var/log/sudo.log

  配置完成后,就可以测试sudo日志审计配置结果了。

  执行useradd oldboy命令创建oldboy用户,并在visudo中进行如下授权操作:

  oldboy ALL=(ALL) /bin/ls #<==授权oldboy用户以所有用户身份(含root)执行ls命令。

  然后,切换到oldboy用户下进行测试,代码如下:

  [root@oldboy ~]# su - oldboy #<==切换到oldboy用户下。

  [oldboy@oldboy ~]$ ls /root #<==不用sudo操作,提示权限不够。

  ls: 无法打开目录/root: 权限不够

  [oldboy@oldboy ~]$ sudo ls /root #<==通过sudo执行,可以列出/root下的目录,授权成功。

  anaconda-ks.cfg inno.txt install.log.syslog install.log

  [oldboy@oldboy ~]$ logout #<==回到root环境。

  [root@oldboy ~]# cat /var/log/sudo.log #<==已经记录了oldboy的sudo日志执行情况。

  Jun 18 08:25:36 : oldboy : TTY=pts/0 ; PWD=/home/oldboy ; USER=root ;

  COMMAND=/bin/ls /root #<==哇,好清晰啊。谁做了什么坏事,一眼就能查到

  [root@oldboy ~]# ls -l /var/log/sudo.log

  -rw-------. 1 root oldboy 96 6月 18 08:25 /var/log/sudo.log #<==root权限,普通用户无法删除和修改。

  从测试结果来看,所有的普通用户执行sudo的命令都被记录监控了,这样一旦出现异常行为,就可以通过日志记录进行追查。 Linux/Unix技术丛书·跟老男孩学Linux运维:核心基础篇(上)(第2版)

目录
设置
手机
书架
书页
评论