什么是sudo日志审计

      所谓sudo命令日志审计,并不记录普通用户的操作,而是记录那些sudo命令的用户的操作。

备注:

    linux远程日志rsyslog服务的作用是:

    1.防止系统崩溃无法获取系统日志分享崩溃原因,用rsyslog可以把日志传输到远程的日志服务器上

    2.使用rsyslog日志可以减轻系统压力,因为使用rsyslog可以有效减轻系统的磁盘IO

    3.rsyslog使用tcp传输非常可靠,可以对日志进行过滤,提取出有效的日志,rsyslog是轻量级的日志           软件,在大量日志写的情况下,系统负载基本上在0.1以下

如何实现sudo日志审计功能:

    1.通过环境变量命令及syslog服务进行全部日审计(信息量大,不推荐使用)

    2.sudo配合rsyslog服务,进行日记日志审计(信息较少,效果不错,推荐使用)

    3.在bash解释器程序里嵌入一个监视器,所有被审计的系统用户使用修改过的增加了监视器的特殊            bash程序作为程序解释程序。

    4.商业产品(价格高不推荐使用)

 第2种实现方式:

    
[root@moban scripts]# rpm -qa | egrep "sudo|rsyslog"
    sudo-1.8.6p3-12.el6.i686
    rsyslog-5.8.10-8.el6.i686
[root@moban scripts]# echo "Defaults logfile=/var/log/sudo.log" >> /etc/sudoers

   #上面的命令是查询系统是否安装sudo,rsyslog服务

   #如果安装,则把visudo的日志文件指定在/var/log/sudo.log下


   

[root@moban scripts]# echo "local2.debug /var/log/sudo.log" >> /etc/rsyslog.conf

  #上面的命令是通过local2设置以debug的方式,把系统日志记录在sudo.log文件下


配置完毕,进行测试

     当用户test1,在代码里执行 sudo useradd test2时,sudo.log日志文件里会记录以下内容:

        Oct 23 17:30:35 : test1: user NOT in sudoers ; TTY=pts/1 ;PWD=/home/test1; USER=root ; COMMAND=/usr/sbin/useradd test2