天天看点

ttysnoop 和ttyutils

原帖地址:[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]

#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]

#tar xzvf ttysnoop-0.12d.k26.tar.gz

#cd ttysnoop-0.12d.k26

#mkdir -p /usr/man/man8/

#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

<a href="http://rainbird.blog.51cto.com/211214/115665">本文出自 51CTO.COM技术博客</a>

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:

Fedora

AIX 5

<a href="http://www.ibm.com/developerworks/cn/aix/library/0809_wuxh_tty/index.html">http://www.ibm.com/developerworks/cn/aix/library/0809_wuxh_tty/index.html</a>

继续阅读