根据公司需求,整理了一个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}")  #### $(id|awk "{print \$1}") #### $(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
1
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

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

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

转载于:https://blog.51cto.com/michaelkang/821763

linux 用户行为审计update1相关推荐

  1. linux用户行为审计

    用户行为审计 利用rsyslog对用户行为进行审计 第一步:安装rsyslog服务端 yum install -y rsyslog 第二步:编辑/etc/rsyslog.conf :msg,conta ...

  2. linux 用户行为审计

    在/etc/profile文件下添加如下shell即可(注意文件的权限问题!!) if ! test -z "$BASH_EXECUTION_STRING" ; thenecho ...

  3. Linux winServer 向审计软件发送审计日志

    一.日志审计系统会提供传送日志的程序,让厂商提供然后安装程序 二.系统自带的程序(Linux) 1.rsyslog 是标准Linux系统的一部分,能够实时的写日志,并且还可以将日志选择性的发送到远程日 ...

  4. Linux登录安全及用户操作审计 ,linux下清理日志脚本

    一.合理使用Shell历史命令记录功能 Linux下可通过history命令查看用户所有历史操作记录,同时shell命令操作记录默认保存在用户目录下的.bash_history文件中,有时候***会删 ...

  5. linux sys伪用户作用,【原创】Linux版 对sys用户进行审计的示例

    更多精彩内容尽在 我们在操作数据库的时候,知道SYS用户的权限是最大的干什么事很方便,同时带来的问题就是非常危险,没有人可以束缚住.因此我们有时需要对SYS用户进行审计 SYS@LEO1>sho ...

  6. linux审计日志清除,Linux登录安全及用户操作审计 ,linux下清理日志脚本

    一.合理使用Shell历史命令记录功能 Linux下可通过history命令查看用户所有历史操作记录,同时shell命令操作记录默认保存在用户目录下的.bash_history文件中,有时候***会删 ...

  7. Linux安全漏洞审计工具Lynis

    Linux安全漏洞审计工具Lynis Lynis是针对类Unix系统的审计工具,它支持Unix.Linux.FreeBSD.Mac OS多种操作系统.它能对系统实施大于400种测试,以发现39个方面的 ...

  8. linux修改组的选项名字为,Linux用户、组及权限管理浅析

    一.用户和组 1.用户 系统用来认证(Authentication),授权(Authorization),审计(Autition)的帐号.通过登录用户来登录系统.操作系统通过登录不同的用户来调用相对应 ...

  9. linux判断usb进程命令,一种在Linux系统下审计USB设备历史使用情况的方法与流程...

    本发明涉及计算机审计技术领域,具体涉及一种在Linux系统下审计USB设备历史使用情况的方法. 背景技术: 如今,在linux系统中,对于USB设备的插入拔出事件,系统自身是不带有审计功能的,这使得普 ...

最新文章

  1. 完整java开发中JDBC连接数据库代码和步骤
  2. Android 自定义View的使用纪要!!!
  3. STL容器之Deque-《C++标准库(第二版)》读书笔记
  4. 前序遍历(递归、非递归)、层序遍历(递归、非递归)
  5. android json mysql_Android通过json向MySQL中读写数据的方法详解【读取篇】
  6. 小余学调度:学习记录2021.8月
  7. sqlDataAdapter的FillSchema用法
  8. 中国人均负债15.5万元,你贡献了多少?
  9. 阿里P8亲自讲解!java中级开发工程师需要掌握的技能
  10. Android 内存泄漏分析(完)
  11. Leetcode:convert_sorted_array_to_binary_search_tree
  12. 花书+吴恩达深度学习(十五)序列模型之循环神经网络 RNN
  13. 利用Linux系统生成随机密码的8种方法
  14. ssh框架的构成分析和代码构架小结 .
  15. Android计算器代码分析
  16. R软件中调用windows字体二
  17. java poi 设置时间空间_POI对Excel自定义日期格式的读取(实例代码)
  18. 使用Hexo + Gitee Pages搭建个人博客
  19. 计算机二级和英语六级什么时候出成绩,英语四六级口语考试成绩确定标准是什么?成绩何时发布?...
  20. WASC Threat Classification 安全威胁分类

热门文章

  1. 配置ssl证书_Nginx监听443端口配置SSL证书
  2. 图片旋转对于识别模式带来的变化
  3. 听说英飞凌内推技术岗位有大额奖金
  4. 智能车竞赛技术报告 | 智能车视觉 - 宜宾学院- 平头哥1组
  5. 第十六届全国大学生智能车竞赛广东赛区线上竞赛方案
  6. 对声音信标信号的采样频率
  7. 鲲鹏服务器设置ip文件,IPFS在鲲鹏云服务器中的安装与编译过程记录
  8. python出现套接字创建不成功_python套接字连接在Mac上被拒绝但在Windows
  9. java编写脚本校验修改密码_java编写一个更改密码校验程序,有两个密码框,一个用于输入新密码,另一个请输入确认密码……...
  10. 电源稳定性测试软件,电源测试:电源设计的稳定性测量