使用 expect 防止 sshgfw 代理断线

July 15, 2009
Tags: ,

自从用了 ssh -D 代理后(可参考本 blog 右边的链接),便再也不用为点击某个链接被重置的情况烦恼啦。我在 Linux 使用 ssh -D 连接代理服务器时过一段时间总会断线,于是我就用 expect 写了一个脚本,不担可以防上 ssh 断线,还可以自动输入密码 关于 expect 我摘录一段在 中文维基 上的介绍: Expect是Unix系统中用来进行自动化控制和测试的软件工具,由Don Libes制作,作为Tcl脚本语言的一个扩展,应用在交互式软件中如telnet,ftp,Passwd,fsck,rlogin,tip,ssh等等。该工具利用Unix伪终端包装其子进程,允许任意程序通过终端接入进行自动化控制 有些 linux 系统里可能没有 expect , 你可以自己安装 在 debian/ubuntu 里 : apt-get install expect 在 opensuse 里:zypper in expect 在 fedora 里: yum install expect 当然还有一些其它发行版都有自己的安装方式。 你可以新建一个文件,比如 sshgfw , 将如下代码复制进去。 #!/usr/bin/expect set timeout 60 [...]

16