Chinaunix

标题: 如何记录用户登陆到其他机器上的所有动作,包括屏幕输入、输出 [打印本页]

作者: RunOut    时间: 2005-08-05 08:40
标题: 如何记录用户登陆到其他机器上的所有动作,包括屏幕输入、输出
请注意,是记录登陆到其他机器上的所有动作。
目的:所有用户必须首先登陆到一个中间机器上,然后从该中间机器上往其他地方登陆。例如telnet。中间机器需要记录所有登陆用户的动作。

1、有这样的shell可以实现此功能吗?应该说,shell本身支持的话,是最稳定和方便的。

2、可否利用tty设备实现?

3、expect是否可以实现要求?

3、退一步要求的话,只记录用户的输入,如何实现?

环境可以任选,一般使用FreeBSD和linux
作者: ippen    时间: 2005-08-05 09:51
标题: 如何记录用户登陆到其他机器上的所有动作,包括屏幕输入、输出
将telnet改个名字,比如:telnet1,然后将下面的脚本命名为telnet1,并且给与执行权限就可以了。

#!/bin/sh
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin
DATE=`date +%Y.%m%d.%H:%M:%S`
USER=`whoami`
FILE=$USER"_"$DATE
telnet1 $1 $2 $3 $4 | tee /var/log/.telnet/$FILE

在/var/log下建立一个.telnet的目录,所有记录都放在目录中。
作者: RunOut    时间: 2005-08-05 12:46
标题: 如何记录用户登陆到其他机器上的所有动作,包括屏幕输入、输出
呵呵。。。
看起来换个角度考虑问题确实很有必要。前面一直在钻其他的牛角尖了。。

tee命令确实可以很好的完成。。。

对于vi文件的情况,结果记录了很多控制字符。。不过可以将结果文件处理一下就好了。。。。




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2