用户操作轨迹记录

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: 用户操作轨迹记录

前言

我们在实际工作当中,都碰到过误操作、误删除、误修改过配置文件等等事件。对于没有堡垒机的公司来说,要在 linux 系统上深究到底谁做过配置文件的修改、做过误删除是很头疼的事情,特别是遇到删库跑路的事件,更头大了。当然你可以通过 history 来查看历史命令记录,如果把 history 记录涂抹掉了,是不是啥也看不到了。


Step1. 配置环境

配置 /etc/profile 文件,在末尾添加如下内容:

$ sudo vim /etc/profile
# 用户操作轨迹记录
if [ $UID -ge 0 ]; then
        exec /usr/bin/script -t 2>/var/log/script/$USER-$UID-`date +%Y%m%d%H%M`.date -a -f -q /var/log/script/$USER-$UID-`date +%Y%m%d%H%M`.log
fi点击复制复制失败已复制


参数 含义
-f 如果需要在输出到日志文件的同时,也可以查看日志文件的内容,可以使用  -f  参数。
-a 输出录制的文件,在现有内容上追加新的内容
-q 可以使 script 命令以静默模式运行


提示

-f 参数可以用于教学, 两个命令行接 -f 可以实时演示

用户登录执行的操作都会记录到 /var/log/script/*.log   里(保存日志的目录根据你自己定义),我们可以通过 morevi 等命令查看目录里的日志。


注意

  1. 这里把用户ID大于0的都记录下来了,可以重新登录用户,随便操作一些命令,查看生成的文件。
  2. root 用户的 ID0 ,新建普通用户的 UID 是从 500 开始的(通过 $ cat /etc/password 可以查看用户的 UID ),如果你不想记录 root 用户的操作,你把 if 里面的值改成 500 :  if [ $UID - ge 500 ] ;


Step2. 创建日志目录

$ sudo mkdir /var/log/script
$ sudo chmod 777 /var/log/script/点击复制复制失败已复制


Step3. 环境生效

$ source /etc/profile点击复制复制失败已复制


验证

退出 linux 终端,在重新登录一下,然后随便敲几个命令来看看。

$ ll /var/log/script/
total 8.0K
-rw-rw-r-- 1 ubuntu ubuntu  81 Jul 28 11:42 ubuntu-1000-202207281142.date
-rw-rw-r-- 1 ubuntu ubuntu 416 Jul 28 11:42 ubuntu-1000-202207281142.log点击复制复制失败已复制


可以看到,在 /var/log/script 目录中,已经产生了 logdata 为后缀的文件,并且还看到了 ubuntu 用户和 UID1000


其中:

  • .log:记录了操作
  • .data:可以回放操作


我们用 scriptreplay回放一下操作,看下效果如何:

$ scriptreplay -d 1 -m 2 -t ubuntu-1000-202207281142.date -s ubuntu-1000-202207281142.log点击复制复制失败已复制


scriptreplay回放示例.gif

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
目录
相关文章
|
4月前
|
存储 测试技术 定位技术
需要统计出轨迹点出入某个区域的信息,包括:驶入时间、驶出时间
Lindorm Ganos 通过内置的 `ST_TrajectoryProfile` 算子高效统计轨迹的出入信息,利用时空索引技术减少扫描量和内存使用,降低计算成本。它通过空间索引+过滤下推减少扫描量,聚合加速提升效率,并在聚合算子内部完成进出点判断和轨迹信息提取。然而,该算子受限于时间阈值设定,可能在轨迹点不均匀采集时产生误差。测试环境下,查询耗时在20秒内,具体表现取决于过滤后的数据量和空间范围复杂度。
27 0
|
7月前
|
SQL DataWorks 数据处理
DataWorks产品使用合集之假设存在时间戳字段: 假设源表有一个记录数据更新时间的字段,如何设置过滤条件
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
29 1
|
7月前
|
JavaScript 定位技术
详尽分享缓冲区点查询(在地图上点击一点,查询一定范围内的信息)
详尽分享缓冲区点查询(在地图上点击一点,查询一定范围内的信息)
36 0
删除一段时间内的记录,关键在于删除时筛选条件确定删除范围
删除一段时间内的记录,关键在于删除时筛选条件确定删除范围
99 0
|
fastjson Java Maven
对比相同类对象字段的变化(可用于审计或者轨迹)
对比相同类对象字段的变化(可用于审计或者轨迹)
对比相同类对象字段的变化(可用于审计或者轨迹)
|
Oracle 关系型数据库
10G自动收集统计信息修改
10G自动收集统计信息修改
117 0
10G自动收集统计信息修改

热门文章

最新文章