linux 用户行为审计

news/2024/7/4 9:25:12

根据公司需求,整理了一个linux用户审计的脚本,现和大家分享! 
具体步骤如下:

一:配置调试

1.创建用户审计文件存放目录和审计日志文件 ; 
mkdir -p /var/log/usermonitor/

2.创建用户审计日志文件; 
echo usermonitor >/var/log/usermonitor/usermonitor.log

3.将日志文件所有者赋予一个最低权限的用户; 
chown nobody:nobody /var/log/usermonitor/usermonitor.log

4.给该日志文件赋予所有人的写权限;  
chmod 002 /var/log/usermonitor/usermonitor.log

5.设置文件权限,使所有用户对该文件只有追加权限 ; 
chattr +a /var/log/usermonitor.log

6.编辑/etc/profile文件,添加如下脚本命令;

export HISTORY_FILE=/var/log/usermonitor/usermonitor.log 
export PROMPT_COMMAND='{ date "+%y-%m-%d %T ##### $(who am i |awk "{print \$1\" \"\$2\" \"\$5}")  #### $(history 1 | { read x cmd; echo "$cmd"; })"; } >>$HISTORY_FILE'

7.使配置生效 
source  /etc/profile

二:功能测试

首先使用如下命令监测用户行为审计日志文件;

tail -f /var/log/usermonitor/usermonitor.log

############################################################################ 
1.root用户登录,本地测试;

执行如下测试命令

ll 
more /etc/profile 
vi /etc/profile 
history

查看审计日志结果 
12-03-20 00:00:13 ##### root pts/5 (192.168.0.101)  #### ll 
12-03-20 00:00:36 ##### root pts/5 (192.168.0.101)  #### more /etc/profile 
12-03-20 00:01:42 ##### root pts/5 (192.168.0.101)  #### vi /etc/profile 
12-03-20 00:01:47 ##### root pts/5 (192.168.0.101)  #### history 
12-03-20 00:01:59 ##### root pts/5 (192.168.0.101)  #### history

############################################################################

2.审计日志文件权限测试; 
测试在普通用户下,审计日志文件的权限控制功能是否实现?

测试普通用户读取审计日志文件,提示拒绝,表示普通用户无法读取审计日志文件; 
[kjh@kjh ~]$ more /var/log/usermonitor/usermonitor.log 
/var/log/usermonitor/usermonitor.log: Permission denied

测试普通用户对日志文件的写入权限,测试命令如下; 
[kjh@kjh ~]$ echo 1 >>/var/log/usermonitor/usermonitor.log 
[kjh@kjh ~]$ echo test >>/var/log/usermonitor/usermonitor.log 
[kjh@kjh ~]$ echo test sm >>/var/log/usermonitor/usermonitor.log 
[kjh@kjh ~]$ echo user test  >>/var/log/usermonitor/usermonitor.log

查看日志监测结果;

12-03-20 00:05:18 ##### root pts/5 (192.168.0.101)  #### useradd kjh 
12-03-20 00:05:32 ##### root pts/5 (192.168.0.101)  #### passwd kjh 

test 
test sm 
user test 
通过测试可以看出,用户审计日志文件权限控制功能生效(允许系统所有用户写入);

###########################################################################

3.普通用户登录审计测试;

使用管理软件使用普通用户登录服务器系统,查看监测日志,能否监测到用户操作命令

执行如下测试命令

vi /etc/profile 
ll 
free -i 
history

查看审计日志结果

12-03-20 00:39:27 ##### kjh pts/2 (192.168.0.101)  #### vi /etc/profile 
12-03-20 00:39:33 ##### kjh pts/2 (192.168.0.101)  #### ll 
12-03-20 00:39:49 ##### kjh pts/2 (192.168.0.101)  #### free -i 
12-03-20 00:39:55 ##### kjh pts/2 (192.168.0.101)  #### history

通过查看监测日志文件可以发现,普通用户登录后,所做的相关操作可以正常监控。



本文转自    geekwolf   51CTO博客,原文链接:http://blog.51cto.com/linuxgeek/998318


http://www.niftyadmin.cn/n/2751575.html

相关文章

tensorflow 损失函数概念和公式

https://zhuanlan.zhihu.com/p/45200767

卸载sublime text在右键菜单中的残留

今天菜鸟强迫症犯了,心里想着,我sublime text都删了不知道几百年了,它怎么还在我的右键菜单里ε( o`ω′)ノ 菜鸟自己百度,发现根本就无法解决,最后还是在看了别人写的易语言代码后,恍然大悟&a…

python——代码质量改善(1)

在计算机科学领域,有一句著名的格言(俏皮话): There are only two hard things in Computer Science: cache invalidation and naming things. 在计算机科学领域只有两件难事:缓存过期 和 给东西起名字 -- Phil Karlto…

如何改变element-ui中table的样式

有写时候样式写完,需要重新给框架的样式进行覆盖,以便达到我们自己设定的样式,这种样式的覆盖有时候非常麻烦,但是你找到方法了,就会很快。 // 设置el-table的样式 .el-table{ .el-table__header-wrapper{ // .paddin…

idea maven查看版本冲突

2019独角兽企业重金招聘Python工程师标准>>> 基于Maven依赖创建的Spring项目,经常会引入多方的依赖JAR包,而多方的依赖JAR包中也会依赖其它相关的JAR包,很容易造成JAR包之间冲突。 解决的工具 Maven Helper: 1、在idea…

73.fileter表案例,NAT表的应用

fileter表案例 要求如下: 只针对filter表,预设策略INPUT链DROP,其他两个链ACCEPT,然后针对192.168.204.0/24开通22端口,对所有网段开放80端口,对所有网段开放21端口。 这个需求不算复杂,但是因为…

【LintCode】Expression Expand 非递归stack完成DFS(String)

这道题真是超级棒的stack DFS样板题啊,在这里给自己写个小小的总结 思路:想到stack并不难,这种嵌套式一般是DFS的思想,先走到最里面最小的那个括号,然后逐渐回到上一层→上一层。又∵非递归,“BFS queue&am…

ubuntu 输入密码后黑屏并且又回到输入密码的地方

好好想想你昨天的所作所为 基本是因为你昨天把哪个文件的权限给了错的人 解决方案 进入文字界面 输入 chown -R username 文件地址 之后恢复正常