Linux系统实战项目——sudo日志审计
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提权操作日志记录
备注:实际生产环境中,可将日志审计记录结果定期推送至指定的日志备份服务器上,后续会介绍具体操作过程(如何推送日志记录)
如需转载,烦请注明原出处,更多内容可以扫描下方二维码关注公众号

长按二维码关注微信公众号——友侃有笑
Linux系统实战项目——sudo日志审计的更多相关文章
- Django项目:堡垒机(Linux服务器主机管理系统)--03--03堡垒机在Linux系统里记录会话日志02/02
#main.py #本文件写所有的连接交互动作程序 # ————————————————03堡垒机在Linux系统里记录会话日志 开始———————————————— from Fortress im ...
- linux系统tomcat项目部署和tomcat访问日志
一.只用ip地址访问 先把端口号改成80,然后用 <Host name="localhost" appBase="webapps" 137 ...
- sudo日志审计
一般企业生产环境都会用跳板机把操作日志记录下来,不过有些公司内部的测试机可以用本机的sudo日志审计功能将执行的sudo命令保存日志. 为什么要使用sudo审计,因为可以通过sudo授权给普通用户执行 ...
- Linux系统下分割tomcat日志
在Linux系统下,tomcat日志catalina.out并不会像window系统下,按日期进行重写备份,因此在Linux系统下会造成日志文件过大的情况,本文介绍采用 cronolog工具进行如在w ...
- 如何查看linux系统下的各种日志文件 linux 系统日志的分析大全
日志分类: 1. 连接时间的日志 连接时间日志一般由/var/log/wtmp和/var/run/utmp这两个文件记录,不过这 两个文件无法直接cat查看,并且该文件由系统自动更新,可以通过如下: ...
- Linux 系统中如何查看日志 (常用命令) tail -f
Linux 系统中如何查看日志 (常用命令) tail -f 日志文件 日 志 文 件 说 明 /var/log/message 系统启动后的信息和错误日志,是Red Hat Linux中最常用的日 ...
- 云服务器 ECS Linux 系统中常见的日志文件介绍
云服务器 ECS Linux 系统中,日志文件是非常重要的文件,它们记录了很多系统中重要的事.Linux 系统中常见日志文件概述如下: /var/log/cron可以在 cron 文件中检查 cron ...
- linux系统中如何查看日志(转)
cat tail -f 日 志 文 件 说 明 /var/log/message 系统启动后的信息和错误日志,是Red Hat Linux中最常用的日志之一 /var/log/secure 与安 ...
- 【夯实Mysql基础】MySQL在Linux系统下配置文件及日志详解
本文地址 分享提纲: 1. 概述 2. 详解配置文件 3. 详解日志 1.概述 MySQL配置文件在Windows下叫my.ini,在MySQL的安装根目录下:在Linux下叫my.cnf,该文件位于 ...
随机推荐
- nodejs 批量修改、删除
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAB4AAAAQhCAIAAABDaAVHAAAgAElEQVR4nOydeXxU5aH359733vd9b/ ...
- ueditor的配置和使用
ueditor下载好之后直接复制到项目的WebContent目录下,并将ueditor\jsp\lib下的jar包复制或者剪切到项目的lib目录下.先看一下效果,如下: 1.文件的上传 首先在uedi ...
- 平衡二叉树AVL删除
平衡二叉树的插入过程:http://www.cnblogs.com/hujunzheng/p/4665451.html 对于二叉平衡树的删除采用的是二叉排序树删除的思路: 假设被删结点是*p,其双亲是 ...
- .Net 转战 Android 4.4 日常笔记(5)--新软件Android Studio 0.5.8安装与配置及问题解决
说真心话,Eclipse跟我们.net的VS比起来就是屌丝比高富帅,一切都是那么的难用,速度慢得我无法忍受 于是想试试Google钦点的Android Studio IDE工具,这跟ADT一样也是一套 ...
- php面向对象基础
1.类 由众多对象抽象出来的 它包含了对象通用的特性 2.对象 一切皆对象 它是由实例化出来的 例: 求两个圆之间阴影的面积 <!DOCTYPE html PUBLIC "-//W3C ...
- 从零开始编写自己的C#框架(8)——后台管理系统功能设计
还是老规矩先吐下槽,在规范的开发过程中,这个时候应该是编写总体设计(概要设计)的时候,不过对于中小型项目来说,过于规范的遵守软件工程,编写太多文档也会拉长进度,一般会将它与详细设计合并到一起来处理,所 ...
- Android随笔之——跨进程通信(一) Activity篇
在Android应用开发中,我们会碰到跨进程通信的情况,例如:你用QQ通讯录打电话的时候会调用系统的拨号应用.某些新闻客户端可以将新闻分享到QQ.微信等应用,这些都是跨进程通信的情况.简而言之,就是一 ...
- 坑爹的Maven
之前没用过Maven,最近在研究Curator的时候,导入别人的工程,但是没有相应的包,需使用Maven解决依赖.于是各种折腾,最后虽然解决了,但中间的坑还不少.尽管网上也有相应的安装教程,但很多都是 ...
- 关于JqueryEasyUI集合Kindeditor
写在前面 上一篇<初试JqueryEasyUI(附Demo)>: 在上一篇说过,下面要试下easyui集合编辑器,关于编辑器网上有很多,ckeditor.ueditor.kindedito ...
- android 真机调试出现错误 INSTALL_FAILED_INSUFFICIENT_STORAGE 的解决方法。
关于这个神奇的 内存不够错误的通常解决方法,网上大把,建议大家在尝试过了网上的方法后再来尝试下我的这种方法. 编译工具: android studio 测试真机:米 2 调试的时候出现:INSTALL ...