博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
利用rsyslog 对Linux用户进行审计
阅读量:5857 次
发布时间:2019-06-19

本文共 1505 字,大约阅读时间需要 5 分钟。

要审计用户执行的命令,在系统本地执行的话,比较简单。修改HISTTIMEFORMAT变量即可,比如:

export HISTTIMEFORMAT="[%F %T $(who am i)] "

但是简单的依赖.bash_history 或 script 是不可靠的,两者虽然记录了用户行为,但是可能被用户篡改和清除。

rsyslog 是标准Linux系统的一部分,能够实时的写日志,并且还可以将日志选择性的发送到远程日志服务器。

利用rsyslog 可以将日志实时写入远程日志服务器,从而杜绝用户篡改,提高审计材料的真实度。

以ubuntu为例,下面的办法可以让rsyslog记录用户所执行的命令以及时间戳,供审计使用。

1、rsyslog 添加日志

echo -e "local6.* /var/log/commands.log" >/etc/rsyslog.d/bash.conf

2、在/etc/profile 中加入

function bash2syslog {	declare command	command=$(fc -ln -0 2>/dev/null||true)	if [ "$command" != "" ];then		logger -p local6.notice -t bash -- "$(who am i)" $PWD $USER: "$command"	fi} trap bash2syslog DEBUG

这里写入本地日志。然后rsyslog直接将日志写入远程服务器 。

建议root 用户的umask 值设置为027或者007,防止/var/log/commands.log文件被普通用户查看到。

3、日志轮转

编辑/etc/logrotate.d/rsyslog 在中间增加一段

/var/log/commands.log{        rotate 30        weekly        missingok        notifempty        compress        delaycompress        sharedscripts        postrotate                reload rsyslog >/dev/null 2>&1 || true        endscript}

 

4、重启rsyslog,用户退出重新登陆

service rsyslog restart

5、rsyslog 发送日志到远程服务器(可选)

echo "local6.*          @@192.168.0.2" >>/etc/rsyslog.conf

 

6、利用watchdog监视rsyslog,如果服务被停止,则重启机器 (可选)

apt-get install watchdogupdate-rc.d watchdog defaults Cat >> /etc/watchdog.conf  <

7、目标日志服务器配置 /etc/rsyslog.d/commands-audit.conf

$template LOG_BY_HOSTIP, "/var/log/command-audit/%fromhost-ip%-commands.log"local6.notice ?LOG_BY_HOSTIP

8、其它优化

设置/etc/profile

shopt -s histappend,

让不同会话共享历史记录,而不是临时保存在内存里,会话退出后才能共享

适当修改环境变量 PROMPT_COMMAND

参考文档

转载地址:http://shajx.baihongyu.com/

你可能感兴趣的文章
java中file系统找不到指定的路径,java.io.FileNotFoundException:.\cfg\users(系统找不到指定的路径)...
查看>>
matlab如何清屏的运行,Matlab(1) -- Matlab清屏命令
查看>>
java集成kafka依赖包怎么导入,Kafka指南-源码导入Idea
查看>>
matlab 规律,01用PYTHON下载数据,而后用MATLAB编程探讨规律
查看>>
php 发布拼多多,拼多多补贴换增长的故事还能讲多久?
查看>>
matlab实现zca去白化,白化算法
查看>>
vs环境c++语言教学视频,基于VS Code的C++语言的构建调试环境搭建指南
查看>>
android 字符串转浮点,Android String类型转换为float、double和int的工具类方法
查看>>
android mobile wifi,华为mobile wifi 2下载-HUAWEI Mobile WiFi 2 安卓版v9.0.1.323-PC6安卓网
查看>>
windows phonegap android,phonegap windows 安装
查看>>
android fragment共享监听,Android Fragment中监听事件
查看>>
android应用开发大赛,喜讯:我院首届“Android应用开发大赛”圆满落幕
查看>>
android蓝牙交互,Android蓝牙通信app
查看>>
将pyecharts的html页面,使用pyecharts生成Echarts网页的实例
查看>>
webview屏蔽加载某段html,分段中的WebView不加载HTML字符串
查看>>
高效开发Android App的10个建议
查看>>
[Oracle] - 性能优化工具(3) - ADDM
查看>>
GoldenGate组态(四)它veridata组态
查看>>
实习20天
查看>>
[转载][资料].计算机视觉、机器学习相关领域论文和源代码大集合
查看>>