生产环境日志审计

     日志审计,就是记录所有系统和相关用户行为的信息,并且可以自动分析,处理。在中小企业环境中,一般都是在单个服务器上记录日志,而大型企业的生产环境当中,会有专门的日志服务器乃至集群。本文通过sudo配合centos自带的rsyslog(syslog)服务,进行日志审计。

     项目描述:

     1.权限控制后进一步实施对所有用户日志记录方案

     2.通过sudo 和syslog配合实现对所有用户进行日志审计并将记录集中管理

     3.实施后让所有运维和开发的所有执行的命令都有记录可查,杜绝了内部人员的操作安全隐患

      这里要记录的日志,并不记录普通用户的普通操作,而是记录执行sudo命令的用户的操作。

      实施步骤:

      

      1.确认rsyslog(syslog),sudo有没有安装。没有安装的话直接使用Yum安装

    

      2.配置sudoers配置文件,把执行了sudo命令的用户信息存放到指定的日志文件,然后使用visudo -c检查sudoers配置文件是否编译正确:

  

echo "Defaults            logfile=/var/log/sudo.log">>/etc/sudoers
##then syntax the config file
visudo -c

       3.接下来配置rsyslog服务的配置文件:

echo "local2.debug       /var/log/sudo.log">>/etc/rsyslog.conf

       表示制定local2的设备打印debug级别的错误,并将结果打印至sudo.log文件里面

       4.配置好rsyslog的配置文件以后,重启syslog服务

    /etc/init.d/rsyslog restart

       这个时候发现rsyslog服务已经自动创建好了sudo.log这个文件:

[root@localhost ~]# ll /var/log/sudo.log 
-rw-------. 1 root root 276 Oct 21 05:11 /var/log/sudo.log

        5.测试

        切换到其他用户,执行sudo命令:

[chuji001@localhost ~]$ sudo useradd testuser
[sudo] password for chuji001: 
Sorry, user chuji001 is not allowed to execute '/usr/sbin/useradd testuser' as root on localhost.localdomain.

       切换回root用户,发现相关操作已经记录到了日志文件当中去:

[root@localhost ~]# cat /var/log/sudo2.log
Oct 21 05:11:46 : chuji001 : command not allowed ; TTY=pts/0 ;
    PWD=/home/chuji001 ; USER=root ; COMMAND=/usr/sbin/useradd kkkkkkk
Oct 21 05:11:57 : chuji001 : command not allowed ; TTY=pts/0 ;
    PWD=/home/chuji001 ; USER=root ; COMMAND=/usr/sbin/useradd lkajsdflkajsfld
Oct 21 06:01:34 : chuji001 : command not allowed ; TTY=pts/0 ;
    PWD=/home/chuji001 ; USER=root ; COMMAND=/usr/sbin/useradd testuser

       结语:上述的日志记录只是单机的日志记录,之后的文章会推出rsync+inotify将日志推送到专门的日志服务器当中去。

原创文章,作者:21期王逸凡,如若转载,请注明出处:http://www.178linux.com/53300

(1)
21期王逸凡21期王逸凡
上一篇 2016-10-20
下一篇 2016-10-20

相关推荐

  • linux 进程解析

    博文介绍了进程信息以及部分进程管理命令

    2017-09-09
  • bash 数组和变量

    数组可以把多个变量集合起来,不用再一个个的声明变量,也可以调多个单个的变量使用,极大方便了我们的使用,而且Linux bash中的数组还支持同一个数组中同时有数字和字符串。下面让我们来了解一下数组。 一,数组的简介 变量:存储单个元素的内存空间 数组:存储多个元素的连续的内存空间,相当于多个变量的集合。 数组名和索引 索引:编号从0 开始,属于数值索引 注意…

    Linux干货 2016-08-24
  • dstat,htop,top,ps命令 (Blog 8)

      Linux哲学思想之一:一切皆文件:内核将其参数全部映射为文件;这些文件保存在/proc, /sys目录中;/proc目录:保存内核及进程状态信息,是内核参数的映射; 内核参数:可调参数:调整运行特性;/proc/sys不可调参数:输出内核统计信息及状态信息; 进程状态:/proc/# 与进程号同名的目录,目录下存放许多当前进程相关信息; 进程…

    Linux干货 2017-11-27
  • CentOS6.7上编译安装Apache2.2和Apache2.4

    centos6.7上如何编译安装Apache2.2和Apache2.4

    Linux干货 2016-05-29
  • Linux文件权限及ACL

    1、文件权限:          文件的权限主要针对三类对象进行定义:                owner:属主,u表示  …

    Linux干货 2016-08-05
  • Linux帮助文件的使用、history变量的使用和FHS

    怎样利用帮助文件来查询想要了解的信息? 这里以通过查找帮助文件来修改登陆信息为例子, 登陆的时候,我们可以看到CentOS的的版本和内核信息, 当我们查看该相关文件的时候,会发现,里面的文档和显示的不一致,由此可以了解到,该文档是调用某些参数来实现显示CentOS的版本和内核信息。 这个时候,我们该怎样去查看issue文档的相关信息? 首先我们可以查看一下通…

    Linux干货 2016-08-04