防火墙攻防框架

长城封锁的方法

攻防简史

翻墙就是混淆真实的流量, 欺骗长城的审查机制. 攻防双方都在不停的进步, 这里用猫表示审查者, 鼠表示翻墙者, 一个猫鼠游戏.

总的来说, 加密数据是翻墙的基础, 伪装是翻墙能以实施的关键. 前者技术相对成熟, 而后者依赖于一些研究人员的成果, 如果没有他们去摸索长城规则, 则没有办法进行翻墙. 而选择好的翻墙工具, 其实本质就是选择那些能很快应对猫规则的工具.

厘清概念

接下来会有不少概念, 但其实万变不离其宗, 目前所有的翻墙方式都是需要一个第三方服务器中转流量, 这个服务器可以是任何形式可以访问的网络的计算机(包括虚拟计算机vps). 翻墙要求一方面这个服务器本身可以无障碍查看长城外风景, 另一方面, 它要部署一个可以绕过审查的通讯协议和老鼠通讯.

vpn: 一个加密通讯的技术. 但它不具备混淆功能. 在猫还不能识别随机数据的时候, 曾经是翻墙的主力, 但现在猫已经对绝大多数的vpn协议进行了识别, 其本身已经无法用于翻墙. 然而, 现在很多新的翻墙工具也自称是vpn, 主要还是利用了vpn的名气. 但他们本质并不是vpn工具, 而是打包了有混淆功能的通讯协议的翻墙服务器而已. 这个需要做好区别.

proxy: 是一种广泛使用的通讯技术, 有非加密和加密的方式. 非加密方式不能用于翻墙. 但其加密方式中的https方式却是非常好的翻墙工具. 因为它和平时浏览网站的流量一样, 猫的审查机制非常难以识别, 所以这样的proxy也更加稳定. 但https的缺点是配置复杂, 且只能转发tcp流量, 对udp无能为力.

Trojan, 是专门将流量伪装成普通https的工具.

shadowsocks (shadowsocksr), 是专为翻墙而生的代理服务器. 以匿名性著称. 优势是配置简单, 且社区活跃.

v2ray, 可以理解它是一系列网络协议和工具的打包, 算是一个网络调试工具. 但由于其包含了多个混淆和伪装的协议, 所以也被用于翻墙. 好处是定制性强, 劣势是配置复杂, 需要高一些的技术背景.

蓝灯(lantern), 曾经火过一段, 可能是一个带有混淆技术的代理. 但如今对新的审查机制缺乏部署, 不推荐使用了.

Jigsow Outline. 是有google背景的团队开发的 自部署的翻墙工具. 对新技术的部署很快. 目前在俄罗斯区很多人使用.

总结, 形而上的说, 所有的翻墙本质都是一个代理(proxy), 而所有的关键都是如何让这个代理和老鼠之间的通讯可以通畅稳定. 通过对概念的梳理, 最好的翻墙工具就是伪装https, 或者是部署了对抗白名单模式(猫的最新招数) 的任何其他的工具.