ShadowSocks的翻墙原理

Clowwindy分享并开源了他提出的Shadowsocks翻墙解决方案。它的翻墙原理是什么?有什么优点和缺点?

简单理解的话,Shadowsocks是将以前通过SSH创建的Socks5协议拆开成Server端和client端,下面这个原理图能简单介绍其翻墙原理,基本上和利用SSH tunnel大致类似:

what-is-shadowsocks

  1. PC客户端(即你的电脑)发出请求基于Socks5协议跟SS-Local端进行通讯,由于这个SS-Local一般是本机或路由器等局域网的其他机器,不经过GFW,所以解决GFW通过特征分析进行干扰的问题。
  2. SS-Local和SS-Server两端通过多种可选的加密方法进行通讯,经过GFW的时候因为是常规的TCP包,没有明显特征码GFW也无法对通讯数据进行解密,因此通讯放行。
  3. SS-Server将收到的加密数据进行解密,还原初始请求,再发送到用户需要访问的服务网站,获取响应原路再返回SS-04,返回途中依然使用了加密,使得流量是普通TCP包,并成功穿过GFW防火墙。

因此,Shadowsocks的优点在于它通过流量混淆隐秘解决了GFW通过分析流量特征从而干扰的问题,这是它优于SSH和VPN翻墙的地方(但VPN更注重加密安全性)。缺点也依然明显,需要一点点技术和资源(墙外VPS服务器)来搭建Shadowsocks服务,好在已经有人搭建相应的服务出售翻墙服务了。

本文借鉴了 http://vc2tea.com/whats-shadowsocks 一文的内容和图片,感谢。

ShadowSocks的翻墙原理》有60个想法

    1. 土木坛子 文章作者

      我可能也理解不太对,VPN的加密协议以及其大量使用,还有就是VPN的流量包特征——GFW虽然不知道具体是什么,但知道是某一类型的流量,使得VPN还是可以被GFW拦截住——其实有很多大名鼎鼎的商用VPN被墙了,但SS的话,最主要是流量变成了加密后的TCP包,这个应该是没有特征的,所以,GFW无法成功拦截。希望我的理解没有错。

      回复

发表评论

电子邮件地址不会被公开。 必填项已用*标注