PAC + SSH翻墙

作者:nowa 来源:江右东流

话说最近GFW又连续封了SourceForgeFacebook, 虽然我朝答应在奥运的时候给外国友人们一个开放的internet,但估计到时也是一个适当开放的internet罢了。

说起GFW,这个GreatWall的虚拟版本虽然如它的实体一样声名远扬,不过却是相当狼藉。对于我来说,GFW最操蛋的有以下两点:

1、flickr上08年前(大致上是这个时间)的图片都被GFW了,可怜我07年初还买了pro帐号
2、My Opera以及Blogspot(最近刚刚解封)、Wordpress的BSP托管或者国外的个人博客上大量的博文无法观看,当然这个可以通过Google Reader等订阅观看,但是这样会把我的订阅列表搞的相当不整洁

当然,现在又要至少加上一点了:SourceForge。

为了解决这些问题,最初的时候到处找代理,可是稳定的代理相当罕见,后来就开始戴Tor。不过这玩意的速度相当的慢,后面也放弃了。再后来开始用Hotspot Shield这个免费的VPN, 不过每次拨号之类的也颇费时间,偶尔还使使小性子掉掉线。

所以后来买了MTDedicated-Virtual后,便开始用SSH + PAC代理配置文件翻墙。MT的服务稳定且优质,速度也很不错,所以后面我开始不仅仅使用它翻墙,还用它来加速对国外一些站点的访问。

PAC是Proxy Auto-Config的缩写,它其实是一段Javascript脚本,实现了一个FindProxyForUrl的函数,使用正则表达式来查找匹配URL的Proxy。下面举一个例子:

function FindProxyForUrl(url, host) {
if (shExpMatch(url, "*.sourceforge.net/*")) {return "SOCKS 127.0.0.1:7070";}
if (shExpMatch(url, "*.apple.com/*")) {return "SOCKS 127.0.0.1:7070";}
return "DIRECT";
}

DIRECT的意思是不使用代理直接连接。Mac OS X可以直接针对某个网络连接使用PAC文件(还是Mac好,嘿嘿),而主流的浏览器也都提供了PAC文件的支持。

上面代码中的本地7070端口的SOCKS代理就是使用SSH来创建的,你可以在*nix的系统终端里运行:

ssh -qTfnN -D 7070 username@host.com

这样就可以在本地打开一个SOCKS代理,随意冲浪,享受出墙的快感。:p

1 条评论:

Dylan Cook 说...

I recently checked out the John Deere 4020 model, and it seems like a fantastic fit for my small vegetable farm. I also looked into the Kubota B2601 due to its compact dimensions. However, the John Deere 4440 has received strong endorsements for more intensive field tasks. Another solid contender is the John Deere 790, which offers a nice mix of power and efficiency. I'm now pondering whether the John Deere 2010 could be the ideal option for scaling my farming operations. Which one do you think I should choose?