原帖地址:[url]http://sysadmingear.blogspot.com/2007/10/how-to-install-ttysnoop-on-linux.html[/url]
翻译加整理
ttysnoop是一个很帅的管理工具,它允许管理员查看其它用户在登陆的终端做些什么.对安全管理很有用哟.
因为作者习惯上都默认安装ssh的,想不重新编译安装直接使用但是发现不行,至少目前为止还没有找到解决办法所以就编译安装了。
安装openssh
地址:[url]http://openbsd.md5.com.ar/pub/OpenBSD/OpenSSH/portable/[/url]
#wget
[url]http://openbsd.md5.com.ar/pub/OpenBSD/OpenSSH/portable/openssh-5.1p1.tar.gz[/url]
#tar zxvf openssh-5.1p1.tar.gz
#cd openssh-5.1p1
#export LOGIN_PROGRAM="/sbin/foo_login" 这行一定要注意哟~~
#./configure --prefix=/usr/local/sshd --sysconfdir=/etc/ssh --without-zlib-version-check --with-pam --with-tcp-wrappers
#make
#make install
修改配置文件/etc/ssh/sshd_config file的以下参数
PasswordAuthentication yes
UseLogin yes
因为笔者已经默认安装过sshd,这时已经有默认的sshd启动脚本了,需要做的就是把/usr/local/sshd/sbin/sshd拷贝到/usr/sbin/sshd这样机器还是默认起动sshd,
只是以后再启动的就是我们新编译安装的了,当然了,为了使配置的参数马上生效我们需要
#service sshd restart
安装ttysnoop
地址:[url]http://freshmeat.net/projects/ttysnoop/[/url]
#wget
[url]http://freshmeat.net/redir/ttysnoop26/50871/url_tgz/ttysnoop-0.12d.k26.tar.gz[/url]
#tar xzvf ttysnoop-0.12d.k26.tar.gz
#cd ttysnoop-0.12d.k26
#mkdir -p /usr/man/man8/
#make
#make install
#cp ttysnoops /sbin/foo_login 这里一定要看清楚是ttysnoops哟~
#mkdir /var/spool/ttysnoop
#cp snooptab.dist /etc/snooptab
#vi etc/snooptab
注释掉除"* socket login /bin/login"以外的所有行
或者说注释掉下面两行:
#ttyS1 /dev/tty7 login /bin/login
#ttyS2 /dev/tty8 login /bin/login
现在你可以通过w或者who命令查看当前登陆到终端的用户
#w
12:56:37 up 1:19, 3 users, load average: 0.00, 0.00, 0.00
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root tty1 - 12:32 24:06 0.03s 0.03s -bash
root pts/0 192.168.100.29 11:39 1:04m 0.11s 0.11s -bash
root pts/3 192.168.100.29 12:43 8:59 0.06s 0.06s -bash
查看
#ttysnoop 3
Connected to 3 snoop server...
Ctrl+'/' (ASCII 28) to suspend, Ctrl+'-' (ASCII 31) to terminate.
Snoop password: (此处输入root密码)
Verified OK... Snoop started.
嘿嘿,这样你终端显示的就和pst/3登陆用户的输入输出同步了
ctrl+/是暂停输出信息的
ctrl+-是退出的
注意,不要输入东西哟,你现在输入的东西直接在那个终端执行!!!
good luck
本文出自 51CTO.COM技术博客
Ttyutils 是一套 UNIX 终端工具,包括 ttyexec、ttylook、ttyadmin 和一些扩展程序。
ttyexec 建立伪终端去执行一个命令,捕获命令所有的输出,传递这些输出数据到内置的内存终端仿真器和真实的终端。通过 ttyexec 执行的命令和直接执行的命令,用户感觉不到有任何的区别。
通过内存终端仿真器,管理员可以在特定的条件下触发事件,例如,用户希望依赖程序 A 的状态来启动另外程序 B,但是不想或者不能修改程序 A,这种情况下,ttyexec 是有用的。
ttyadmin 是一个管理工具,它使用 ncurses(3X) 窗口界面,查看和控制存在的 ttyexec 实例。
ttylook 类似于 BSD watch(1) 程序,但是没有太多的限制,它能够轻易的连接到存在的 ttyexec 实例,查看那个终端的输出,或者,如果打开了可写模式的话,还可以输入数据到那个终端。
扩展程序包括 ttyfeed、ttysnap 等等,它们都支持 --help 命令行选项。
Ttyutils 遵循 GPL 版本 2 授权协议发布,这意味着您在获得 Ttyutils 的同时有权力获得完整的源代码。
Ttyutils 的主要目标平台是 GNU/Linux,开发和测试平台为 Fedora 7。它应该也可以在其它 GNU/Linux 发布系统上运行,理论上可以在符合 UNIX 98 规范的操作系统上运行。当目前为止,下列的操作系统可以运行 Ttyutils:
下载地址: http://groups.google.com/group/xiaohu417
http://www.ibm.com/developerworks/cn/aix/library/0809_wuxh_tty/index.html