不知道大家有没有翻墙的需求,就我个人而言还是有的。比如看看Youtube.com, 还有上上西西河、脸书和推特什么的。西西河的镜像talkcc.com虽然没有被封,但是某些敏感文章还是会触发GFW的拦截。如果你又是推特和脸书用户,那翻墙就是你的必备技能了。 目前网上主流的翻墙方法不外乎OpenSSH隧道,VPN和基于Google App Engine(以下简称GAE)这三种。本贴介绍的翻墙方法就是基于GAE的。那么GAE是什么呢? 从百度百科的解释来看,通俗的讲GAE就是一个带有开发环境的免费用户空间。基于这个空间和Google提供的开发环境你可以自己开发网络应用。所以说所有的基于GAE的翻墙方法其实是自己开发代理服务应用,并且部署(上传)到GAE用户空间上来使用。当然开发网络应用是技术活儿,包括我在内的大部分坛友都是搞不定的。但是共享精神是当代互联网繁荣昌盛的一大基石,所以自然有高人开发好应用并共享出来造福大众。 讲到这里将要隆重推出本帖的明星:goagent。goagent是由phus.lu大牛(phus.lu@gmail.com)开发的基于GAE平台的代理服务应用。这里要非常感谢phus.lu大牛的辛勤工作,让翻墙这一艰巨的工作变得如此简单快捷。goagent还在持续开发更新中,该应用的主页是goagent - a gae proxy forked from gappproxy/wallproxy - Google Project Hosting。大家可以访问这个页面来下载goagent、查看更新、获得帮助并提供意见和反馈。 背景铺垫讲完了,下面开始讲一下安装设置步骤。 一、开通GAE账户 GAE账户是和Google账户通用。如果你已经有了Google的账户,在https://appengine.google.com直接登录进GAE空间就行了。如果没有,在上述页面当场注册一个并登录。注意注册GAE需要你的手机号码给你发短信验证码,如果你异常关注个人隐私,那就无法注册GAE,请大家自己斟酌。 二、创建一个新应用 接着上一步,登录进你的GAE账户,在应用列表中创建新应用,如下 在创建应用页面,要为新建应用设置新应用ID(app id)和新应用标题。其中的新应用ID(app id)是新建应用的唯一标识,非常重要。在后续步骤中也要用到,所以建议大家记在小本子上。如图,假设这里我们选择了test这个应用ID(app id)。而新应用标题并不重要,但是也要设置。这两项设置完成后请点击创建应用按钮。 新应用创建完之后,你就可以在第一步所示的应用列表中看到你所创建的应用了。如果感兴趣,你可以在GAE里继续探索。我们要进入下一步了。 三、下载并定制goagent应用 我们继续。到http://code.google.com/p/goagent/下载最新版的goagent应用包。目前最新版是1.6.7。作者phus.lu还在持续更新,如果有更新的版本,希望大家及时升级。应用包下载并且解压缩之后,我们得到一个goagent的文件夹。goagent文件夹中的文件分为两大部分,分别放置在server和local两个字文件夹里。顾名思义,server文件夹中的文件是将来要部署(上传)到GAE空间中的服务器端应用,而local文件夹中的文件是在本地使用的客户端程序。 目前goagent应用包还不能上传并使用,我们需要修改两个文件来完成定制步骤。第一个要修改的文件是server子文件夹下的app.yaml,要修改的地方参见下图。 第二个文件是local子文件下的proxy.ini,修改如下图。
四、部署(上传)goagent应用 前一步的两个文件修改完成后,首先运行local\goagent.exe。这个就是goagent本地客户端程序,在使用goagent或者部署和更新goagent都需要运行它与GAE建立链接。然后再运行server\upload.bat。这个是部署goagent应用的批处理脚本。这个脚本会自动把goagent中的server子文件夹上传到你的GAE空间中并完成配置。所以这一步骤非常重要。而该步骤的成功与否又取决于在前一步的两个文件中修改的应用ID是否正确。在开始上传goagent时,会要求输入你的GAE(也就是Google的)的帐号和密码。如果帐号密码都输入正确,上传过程就开始了。在上传完毕后,上传窗口(命令提示符窗口)会自动关闭。 注意1:如果你的系统是Win Vista或者Win 7,这一步的运行local\goagent.exe必须以权限提升方式来执行。因为goagent在首次启动时会尝试调用certmgr.exe向系统导入IE/Chrome的证书,而这需要管理员权限。 注意2:如果在部署goagent中遇到什么问题,请认真阅读goagent - a gae proxy forked from gappproxy/wallproxy - Google Project Hosting上的帮助来解决问题。如果还是不能解决,可以给作者写信寻求帮助。 五、使用goagent goagent代理服务使用起来十分简单,随用随开(即运行local\goagent.exe)。其实在部署goagent后,只要不关闭goagent.exe,你就可以直接使用goagent提供的代理服务了。goagent应用所对应的代理服务地址是127.0.0.1:8087。 六、浏览器的设置(Google Chrome) 如果你使用chrome,浏览器的设置工作将非常简单。首先安装SwitchySharp插件,然后导入这个设置http://goagent.googlecode.com/files/SwitchyOptions.bak。导入方法如下图。 这个设置主要记录goagent的代理服务地址和端口,导入就自动设置好了。最重要的是SwitchySharp支持GFW屏蔽列表和基于该屏蔽列表的代理自动切换。关于如何设置请参考这个页面https://code.google.com/p/switchysharp/wiki/SwitchySharp_GFW_List_2。 七、浏览器的设置(Mozilla Firefox) 如果你使用firefox,首先安装AutoProxy插件。插件安装完成,Firefox重启。此时Autoproxy已经自动给你添加了GFW屏蔽列表,剩下的事情就是添加goagent的代理服务地址和端口了,见下图。 完成后再设置一下代理服务自动选择规则就好了。如下图所示 八、浏览器的设置(IE) 而IE用户推荐使用支持代理切换的浏览器外壳,如maxthon,搜狗等。 好了,终于搞完了,大家累了不?那么就休息一下,喝上一杯茶,打开你的浏览器,上上www.youtube.com来放松一下。
九、更新goagent 因为goagent处于积极的开发过程,所以大家时不时要上http://code.google.com/p/goagent/看看是不是有新版本发布出来。并且关注一下更新列表。因为有的次要更新并不需要更新GAE服务器端的应用。下面摘抄一段关于更新goagent的FAQ。 该问答显然指的是次要更新。如果遇到重要更新,其实步骤也很简单。只要下载最新版goagent,然后重复上文第三步和第四步就行了。旧版本不用管,直接删除就行了。