有人不想让我们看见一些东西。

墙从 “何” 处来

方滨兴(1960 年 7 月 17 日-),中国共产党党员,中国工程院院士,全国人大代表。曾任北京邮电大学校长,国家计算机网络与信息安全管理中心主任兼总工程师、信息产业部互联网应急处理协调办公室主任。现任国家信息化专家咨询委员会网络与信息安全专委会副主任,国家互联网信息办公室专家委员会委员;第十一届全国人大代表,北京市第十四届人大常务委员会委员;国家 863 计划 “十二五” 专家委员会委员,中国通信学会副理事长。他是中国信息安全专家之一,也是中国网络审查体系防火长城(GFW)关键部分的首要设计师,因此被网友称为 “中国防火墙之父” ,其官方在线简历也显示他主持建设了 “国家网络安全监控平台” 等多个相关系统。 – 引用自维基百科 2011 年 5 月 19 日上午,网友在推特称 “下午方滨兴将出现在武汉大学计算机学院 B 座 4 楼”,很快在网络上开始了一场 “悬赏” 袭击方滨兴的活动。当天下午,方滨兴在武汉大学教学大楼下车时,遭一学生从背后扔鞋袭击。据报道,现场有学生准备了鸡蛋,该学生先向方滨兴投掷了鸡蛋,但未投中。随后,该学生脱下脚上鞋子向其扔去,第一只鞋打中了方滨兴,但第二只鞋被一男一女挡住。事后华中科技大学和武汉大学对此事低调处理,肇事学生也未见被抓捕归案。然而此事早已在网络上传播甚广。中共官方媒体新华社下属新华网也转载了《云南信息报》的报道。在接受 CNN 的专访时,该发布消息的网友说:“我不高兴他(方滨兴)做的事情。他让我花不必要的钱去访问本该是能够免费访问的网站,他使我的网上冲浪很不方便。”

GFW 不是墙

GFW 其实是一个入侵检测系统 (IDS)。你的每一次跨境访问都是被当做一次入侵,根据对你的流量分析是否拒绝访问,返回 RST 或者返回一个奇怪的 IP。

GFW 的封锁方式

  • DNS 污染
  • DNS 劫持
  • IP 路由劫持
  • 深度包检测
  • 热点分析
  • 伪造证书
  • 机房白名单制

协议符合什么特征才可以翻墙

  • 数据被加密,任何可以截取到数据流的人,无法解密出原始数据
  • 观察一段数据流量,是否能判别这是一个代理协议的流量
  • 对于一个仅暴露出 TCP 端口的黑箱,能否判断这个端口提供了代理服务

GFW 干过多少匪夷所思的事

  • GitHub 怎么访问不了了
  • 我的网站怎么没办法访问了
  • 怎么大面积的网站被转发到了同一个 IP
  • 北京的根域名服务器被移除了国际认可

有墙的历史之后就有了翻墙的历史

不会翻墙的程序员是没有走在正确的康庄大道上,不会翻墙的民众就不是明事理的民众,翻墙是你的必备技能。

翻墙的话,方法有很多,直接到百度上搜一下关键词 vpn 也是可以搜到很多相关信息。很多乱七八糟的那些网站里边的东西也都是可以用的。但是有一点,那些网站里边的东西可能并不会长久,可能隔一段时间网站就消失了,找不到了,你花钱买的翻墙利器也就没了保障。

说一点黑历史,之前 UC 浏览器中有一个翻墙的神器叫红杏出墙,当时觉得特别好用,也是免费的。翻墙嘛,毕竟也是国家花大力气建造的 GFW 来做这堵墙的,这么好的工具很定不能让你轻易地用啊。之后 UC 就撤掉了这个插件,现在也找不到了,现在关于红杏出墙的所有网站都算是空壳了,千万不要再相信关于红杏出墙的任何网站,想当年红杏出墙的克隆网站、钓鱼网站相当之多,现在已经是凄凄惨惨戚戚。后来也是出现一些翻墙浏览器,简单的就是说,在浏览器中做了一些插件,只需要把人家提供的浏览器装上去,就可以翻墙了,但是无奈,这种东西能用的时间太过于短了,市场需要更新,对于嫌麻烦的人来说这简直就是不可以忍受的。

SSH 翻墙

SSH -D 利用 SSH 的动态绑定的功能。

SSH 这种协议是加密的没有问题,有非对称加密也没有问题,关键是后边是对称加密,因为 SSH 认为一直采用非对称加密来传输消息太慢了。这就造成了一个问题,用对称的加密算法加密 HTTP 协议的流量的时候数据包是有特征的。

当 GFW 分析到你的流量特征中含有 HTTP 的数据的时候将会时不时的逗你一下,让你断一下线什么的。

Tor

The Onion Router,洋葱路由

Tor 主要是用来做一些比较私密性的交流或者网络活动在能用到的。Tor 的特点就是需要多个网桥从中间中继你的网络流量,每个网桥只是简单的相互投递匿名信,经过多轮的投递之后,每个中继只是知道这封信是上个中继的,但是并不知道这封信的具体作者是谁。

Tor 的更大的作用是让交流更私密,并不适用于翻墙。

GFW 虽然说不能知道你和中继之间交流的数据,但是他会经常打入到 Tor 网络的内部去封锁一些中继节点。

VPN 翻墙

国家已经出台了相关的政策,VPN 翻墙以后要备案,未经允许的翻墙属于违法行为。已经不太适用于个人用户了,属于企业及政府之类的。

Lantern

还有一个不得不说的工具 Lantern ,这个工具是基于 P2P 的,这种点对点的协议屏蔽的很多的中间环节,所以说能够翻墙,但是在国内想封锁 Lantern 是比较容易的,只是说国家在很大程度上不想让绝大多数人翻墙而已,这才是GFW的目的,目前 Lantern 是时不时就不能用的玩意儿。

Lantern 是基于 P2P 的每个安装了 Lantern 的人都是一个中继节点,当然墙外的人就很少人去装这个 Lantern 了。所以需要有人在墙外去公开一些节点,每个稳定的节点都是要用钱的。不过不太好的是这种 P2P 的协议及其容易被 Gank 掉。只要 GFW 知道 Lantern 会链接哪些 IP 封锁掉就行了。

Squid

Squid 以 https 的方式提供代理服务,然后在客户端机器使用 chrome 访问被封的网站。

Shadowsocks

Long long ago, 在一个叫 v2ex 的地方,有一位叫做 clowwindy 的用户,其实是中国人。他为了避免网络流量分类技术和 ssh tunnel 的低效,自己写了一个用于加密流量的协议,并自用了一年多. 后来,由于这个协议非常高效,而且使用json 作为配置文件,配置起来非常方便,所以迅速赢得了很多用户,并在 v2ex 上有了一个专属的节点。shadowsocks 迅速被移植到各种平台、各种语言,用户也急剧上升,并且有了专门经营 shadowsocks 服务的商家。

Shadowsocks 可以跨过 GFW 的原因在于它的流量特征无法被检测到。例如:AES-CFB,由于加密流程和解密流程中被块加密器加密的数据是前一段密文,因此即使明文数据的长度不是加密块大小的整数倍也是不需要填充的,这保证了数据长度在加密前后是相同的。

Shadowsocks 发展了这么多年,SS 足够稳定、快速、高效,涵盖各大主流平台、100% 翻墙无障碍,这就足够了。

从协议上加速 shadowsocks

Shadowsocks 如何才能更快呢?基于 TCP 协议的,3 次握手 4 次断开确实很费劲,有些人说为什么不可以用 UDP 呢?但是 UDP 虽然说是很快,但是如果想下载一个很完整的文件的时候,很容易出现丢包的现象,造成下载失败。那么 UDP TCP 的特性合并一下,基于 UDP 做一个安全的 TCP 的传输,有一个 SRUDP。

有人做了一个 KCP,结合了 TCP 的一些缺陷设计的。

从 Linux kernel 优化 Shadowsocks 让服务更快。

最完美的解决方案

肉身翻墙