FreeBSD的watch命令與Linux下的watch命令完全不一樣。
FreeBSD下的watch命令是查看其它用戶的正在運行的操作,而linux下的watch是自動定時運行一個(一行)命令。
下面是FreeBSD下的watch命令的介紹:
CODE:watch — snoop on another tty linewatch允許你偷看其它terminal正在做什麼,該命令只能讓超級用戶使用。
為什麼要用watch?
有時候,基於安全的目的,你可以用watch看某個用戶在干什麼。也許你發現你的機器被某人黑了,你想看看他正在你的機器干什麼。我不清楚,或者你只是好管閒事。
運行watch需要什麼?
watch需要打開下面的kernel options:
CODE:pseudo-device snp 3這會允許你擁有4個 snoop devices。
建立4個devices:
————————————————————————-
CODE:cd /dev
./MAKEDEV snp0
./MAKEDEV snp1
./MAKEDEV snp2
./MAKEDEV snp3————————————————————————-
錯誤:
如果看到下面這個錯誤,那你必須按照上面所說的方法去做:
————————————————————————-
CODE:watch: fatal: cannot open snoop device————————————————————————-
運行watch:
————————————————————————-
CODE:# who
dan ttyp0 Nov 27 17:35 (wocker.int)
dan ttyp1 Nov 28 12:36 (wocker.int)
# watch ttyp1————————————————————————-
或者,如果你想要能寫入其它的terminal,可以嘗試-W參數:
————————————————————————-
#watch -W ttyp1
————————————————————————-
其它操作:
切換終端: Ctrl+x
退出watch:Ctrl+g
ttysnoop(s)
ttysnoop是一個重定向對一個終端號的所有輸入/輸出到另一個終端的程序。目前我所知道的它的
版本好象還不能支持shadow password,安裝後你需要手動創建目錄/var/spool/ttysnoop測試這個
序為/sbin/ttysnoops,象下面這樣:
telnet stream tcp nowait root /usr/sbin/tcpd in.telnetd -L /sbin/ttysnoops[/code]
更改後一定要運行killall -HUP inetd使之生效
確保不要使用陰影口令,用#pwunconv禁止陰影口令。
再編輯文件/etc/snooptab
默認配置就可以了。
CODE:[root@jephe /etc]# more snooptab
ttyS1 /dev/tty7 login /bin/login
ttyS2 /dev/tty8 login /bin/login
* socket login /bin/login------
最後,如果在某個終端上有人登錄進來(你可以用w命令查看它在哪個終端),如登錄終端設備為
ttyp0,則你可以登錄進服務器打入#/bin/ttysnoop ttyp0(提示輸入root口令,再次,上面提到的
這個版本不支持陰影口令)以監視用戶的登錄窗口。
沒有用過,我想寫還是有一定管理作用的