设置自动重连的ssh代理通道

我目前常用的翻墙办法就是拿ssh搭个代理通道,然后chrome + switch!插件一起配合,这就算翻墙了。这法子只要拿个机器跑一小脚本,比如:


ssh -D 7070 -qnN [username]@[server]

但是ssh通道如果闲置了一段时间,就会自动断连,等我需要用到代理的时候往往又得蛋疼的重新跑一遍,非常麻烦。所以我刻苦学习前辈的经验,找到一个解决办法,在mac或linux下都可使用,分享如下:

  • 把ssh配置为免密码登录,这个一搜一大把,略过不提
  • 在/etc/inittab的最后一行加上:
    
    tunl:345:respawn:/usr/bin/ssh -D 7070 -qnN [username]@[server] > /dev/null 2>&1
    
  • 让修改的inittab马上生效
    sudo init q
  • 在/root/.ssh/config里加上几行
    
    Host *
      ServerAliveInterval 60

然后这个ssh通道就会自动重连了。

Update

  • 增加了一个ssh配置,要不然这个进程虽然在,但是通道已经连不上了
  • .ssh/config的配置是关键,/etc/inittab的配置只是让服务器开机即启动ssh通道

5 Replies to “设置自动重连的ssh代理通道”

  1. hi, Volcano. 我在mac下没用过命令行,我用iSSH,但想自动重连.
    能不能指导一下小白, 或者告之如果不用iSSH 怎么用命令行连接 断开 跑一小脚本?
    让茉莉花开遍中文世界.

Leave a Reply

Your email address will not be published.