Chinaunix首页 | 论坛 | 博客
  • 博客访问: 33032
  • 博文数量: 20
  • 博客积分: 185
  • 博客等级: 入伍新兵
  • 技术积分: 195
  • 用 户 组: 普通用户
  • 注册时间: 2010-03-04 09:37
文章分类

全部博文(20)

文章存档

2015年(5)

2014年(7)

2012年(3)

2011年(5)

我的朋友

分类: 系统运维

2015-07-06 11:14:35

遇到问题:公司增加了运维管理员,为确保服务器安全,和发生问题的时候好确认问题,需要记录每位服务器登陆者的行为轨迹。

解决问题:linux script 命令正有如此强大的功能。满足我们需求。script记录终端会话。

操作步骤:

  1. 我是centos6.3系统, 自带script命令,如果没有,大家需手动安装。

  2. vim /etc/profile

在末尾添加:

if [ $UID -ge 1000 ]; then

        exec /usr/bin/script -t 2>/mnt/log/script/$USER-$UID-`date +%Y%m%d%H%M`.date -a -f -q /mnt/log/script/$USER-$UID-`date +%Y%m%d%H%M`.log

fi

这样用户登陆后执行的操作都会记录到/mnt/log/script/*.log(目录自己根据服务器目录定义)里,我们可以通过more或vi来进行查看。

我这里是把用户ID 大于1000的都记录下操作,你可以重新登录用户,操作一些命令,查看生成的文件。


另外,/mnt/log/script 目录需要其他用户有写的权限;

chmod 743 /mnt/log/script

wKioL1WSE3vD9Qj9AAG1iUQp9dI759.jpg

wKioL1WLvI-Bmp58AAN4mlzVfZg267.jpg


可以看到上图,对应的用户登录,会分别生成一个log和date为后缀的文件。log记录了操作,可以通过date文件 回放操作。通过scriptreplay 来回放wKiom1WLvEbhw9GYAACX1GpTVjE631.jpg注意:先是 “时间文件”,然后是“命令文件”,不要颠倒。
以上,就完成了记录用户的所有操作记录。并且还有回放功能,像录像一样,非常方便查找问题。

阅读(270) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~