防墙论坛技术捷要

来源:http://igfw.tk/archives/1846

前言

我从2010年6月开始设计防墙论坛,8月试制成功,运行至2011年3月,因GAE被墙而暂停更新。在此过程中,我验证了一种无需SSL、布署灵活,且能防止嗅探的防墙技术。

此技术分为两端与三端两种类型。我自己试用的论坛为两端型,作为后端的GAE被墙之后即失去防墙功效,而对于在此基础上发展而成的三端型,只要有合适的墙外主机作中端,将难以被GFW墙住。

说明

两端型原理如下:

如图,两端型需要用到一个后端和若干前端两种服务器。用户访问分为两步,先由前端获得界面,然后通过前端的引导向后端请求或者提交数据。

后端 后端服务器一般布署在墙外(若能放在墙内就谈不上穿墙了)。后端用于存储论坛数据,将用户请求的数据发给用户,及接收用户提交的数据。

后端与用户之间的数据传输经过简单加密(图中虚线),可以有效防止墙的嗅探。

前端 前端服务器可以有许多个,布署在墙内或者墙外皆可,只提供论坛界面所需的HTML、JS和图片,所以只需具有最基本静态功能的空间(有很多免费的)即可。

由于前端布署灵活,一旦某一个前端被举报或者失效,用户可以换用其它前端。不同前端可以使用不同的域名、论坛名和界面,看上去好像是不同的论坛,但只要使用同一后端,不同前端上的论坛呈现的内容总是一致的,用户还是那个用户,帖子还是那个帖子。

加密 后端与用户间交互的数据需要简单加密以防止GFW嗅探,加密算法可以任意设计。实践中我用的主要是改变字符串次序,例如“胡奥塞斯库”是嗅探关键词,将之调整为“塞胡库奥斯”就行了。

由于解密算法由前端提供,GFW无法同时获取密文和解密算法,而算法的多变令它也不可能自动解密,所以这些数据可以安全通过GFW.

加密保证了后端不会因为敏感词而被墙。然而后端一旦因为其它原因被墙(实践中用GAE作后端,受GAE整体被墙的殃及),两端型即告失效。这时,我们需要三端型。

三端型原理如下:

如图,三端型是在两端型的后端与用户之间增加了一个中端,于是不要求后端对用户可见,只要中端对用户可见就行了。

中端 中端是墙外的代理服务器,用于中转用户和后端之间的数据交互。中端像前端一样可以有多个,布署灵活。只是中端需要动态功能,特别是要能主动发起HTTP连接,免费资源较少。

中端与用户之间同样通过简单加密传输数据。

实践

我做的两端论坛以GAE为后端,免费静态空间为前端。两个前端放在 http://1xqg.free.bghttp://1jcs.cz.cc ,有兴趣者可以去看JS代码(初涉JQUERY,代码写得很乱,勿笑)。论坛用了大半年,各类高度敏感词俯拾皆是,两个前端至今没有被墙。只是近期由于后端GAE被墙,需要穿墙才能看到论坛的内容。

由于界面和数据不在同一域上,要求浏览器支持第三方COOKIES,FIREFOX和CHROME直接可用,IE默认的设置不支持,需要重新设置。

另外,我以 alwaysdata.net 提供的免费空间为中端,试制了只读的三端论坛(用 OAuth 也能实现发帖,犯懒没做),地址在 http://1xqg.cjb.net ,后由于中端 alwaysdata.net 被墙,找不到其它免费的中端资源,现在也要穿墙才能看到。

展望

现有的无需穿墙即可使用的论坛基本需要依赖SSL,一旦传说中的白名单成为现实,这些SSL论坛大概无一能够幸免。对于手上有服务器的论坛运营人,采用非加密HTTP连接,而以简单加密防止嗅探应是一个理想的方案。

希望本文能够启发各位,各自开动脑筋,做出更多让墙防不胜防的防墙论坛来。

 

来源:https://docs.google.com/document/d/1Vkl6KPcOQfqiBGq7iV7FHMD2ljoy4cZ2NR1s8YEnboQ/edit?hl=zh_CN&pli=1#


—————————————————————————————————————————

需要翻墙利器赛风? 请阅读和关注中国数字时代

推特用户请点击这里免翻墙上推特

请点击这里下载翻墙软件

更多翻墙方法请发电邮(最好用Gmail)到:fanqiang70ma@gmail.com

请阅读和关注中国数字时代翻墙技术博客GFW BLOG(免翻墙)

请使用Google Reader订阅中国数字时代中文版http://chinadigitaltimes.net/chinese/feed),阅读最有价值的中文信息;以及GFW BLOG(功夫网与翻墙)http://feeds2.feedburner.com/chinagfwblog,获取最新翻墙工具和翻墙技巧信息。


没有评论: