MacOS设置SSH上网过程中遇到的问题及解决

之前fanqiang一直是用一些第三方的工具,从tor到your freedom,普遍的问题是有点慢。一直听说ssh或者VPN才是终极解决方案,但是稳定的帐号需要花钱,鉴于免费工具还可以凑合用用,所以也没有尝试过。这次为了搭这个站点,联系了推上著名的布道者,推贝尔组织者@newsinchina,买了一年便宜好用的共享空间。结果买来才发现,原来国外空间的帐号同时也可以用作ssh,于是就这么稀里糊涂的拥有了ssh帐号。。

接着就开始了尝试是用ssh来翻墙了,mac平台的工具和教程比较少,之前一直卡在一些细节问题上,走了不少弯路。今天在@hdestiny的帮助下终于解决问题,在此把经验分享下。

一、连接SSH。

首先你要知道你ssh帐号的的<username><password>和服务器地址<server>三个参数,至于端口,一般都是22和443都可以。mac上连ssh有两种比较普遍的方式,一种是不用工具,打开Terminal,输入:

ssh -N -D 7070 -l <username> <server>

其中7070是你要绑定的本地端口。终端应该会提示你输入password,输入<password>之后,如果提示:Sorry, Try again就没成功,如果没有提示,那么就表示成功了,这个是第一个令我困惑的地方,因为我之前一直在等它提示说connect successful之类的,结果没有。。。这是通过terminal方式的。

另一种就是用小工具iSSH(下载),效果其实是一样的,设置界面一目了然,同样也是上面三个参数就行了,下面不要选择port forward,而是选择SOCKS Proxy(-D),填上要绑定的端口号如7070,按connect就可以了。为了节省dock空间,connect之后可以按quit,这样表示退出程序但保留连接。

二、浏览器代理设置。

mac上的浏览器代理都是共用系统偏好设置里的网络设置的,如果第一步已经完成,需要做的只是简单到系统偏好设置-网络里设置代理的地方进行设置。我之前遇到的坑是,习惯性地把http\https也都填上了127.0.0.1:7070,这样当然就不走socks了,杯具。。。浪费很多时间,才发现应该只勾上socks代理,输入127.0.0.1:7070,勾选socks5,就搞定了,输入facebook.com看看是不是打开了?

三、自动代理切换。

用全局代理有个问题,就是虽然能上那些墙外网站了,但是墙内的网站访问很慢乃至无法打开。这样自动代理切换的需求就很必要了。我的解决方案是google chrome+proxy switchy!插件。这个插件说起来也有个坑,之前一直没注意,就是里面可以虽然设置一个链接方式是direct connect,再加个自定义的iSSH,配置为socks5的127.0.0.1:7070,但是一次还是只能用其中一个,即使在插件设置页面的switch rules里勾选了Enable,设置上域名匹配到facebook才用iSSH,也还是不生效,百思不得其解。。。最后终于发现,应该不是自己选某一个代理,而是应该勾选Auto Switch Mode,这样才能真正的激活switch rules里面配置的代理自动切换规则。。。激活之后插件的地球图标上会多一对左、右向的箭头。并且随着页签的切换,插件图标会自己变换颜色表示当前这个页签是走的哪个代理。至此全部设置完成,应该再没有什么障碍了。

PS: proxy switchy!插件支持设置复杂的规则,以及支持在线规则文件加载。我暂时还没用那个,先共享下自己设置的简单的正则表达式规则:

Rule Name:iSSH

Rule Pattern:(twitter|twitpic|facebook|seesmic|fbcdn|bullogger|vimeo|posterous|friendfeed|wordpress.com|2photo.ru|wordpress.org)

Pattern Type: RegExp

Proxy Profile: 选前面设置的proxy,我的是iSSH

补充1:关于连接SSH。还有种方法可以通过一个bash来实现更友好的一键连接方式,而无需通过在terminal里输入指令或者借助iSSH,参见土法炼钢的mac-ssh解决方案

补充2:关于自动代理切换,还有不需要proxy switchy的方法,因为mac的代理设置本来就支持自动切换代理,在偏好设置-网络-代理里面选自动代理设置,输入http://autoproxy2pac.appspot.com/pac/ssh-d确认后就可以了。记得disable掉proxy switchy,其实proxy switchy!如果设置了自动代理,它也是通过这个系统自带功能来实现的。来源

Leave a Reply