关于V2ray+CDN,目前相对最安全的科学手段。-基本原理

关于V2ray+CDN,目前相对最安全的科学手段。-基本原理

2018年7月19日 0 By BLADE

关于科学上网,目前最安全的手段就是:  V2RAY_WS+TLS+CDN

如果你对以上几个单词,以及VPS, Nginx,https 的意义并不十分清楚,请自行百度或谷歌。因为你肯定进行不下去了。如果对以上词汇能做到基本的理解,就可以继续了。

先介绍基本原理

OK,实际上这个技术已经不是非常新鲜了,笔者已经使用超过半年时间,在笔者使用之前,这个技术也已经出现好几个月了。之所以比较晚采用,主要是等当时的几个小bug修复,整体方案稳定后才正式使用的。

目前这个科学上网方案,GFW是很难封掉的(不是不能封,是很难,注意这里的区别。所以可以自己用,别开机场,不然一定可以给你封掉,然后请你本人去喝茶)。

实现根本就是两要点,一个是v2ray支持的websocket协议模式(以后简称ws),其实它就是http协议,只是在http协议通过url的方式包装了一下。然后另一个要点是 CDN,内容分发服务。它就可以看作是基于http服务的一种中转代理。实际上在我们的科学方案里,CDN就是做一个代理。

本质上,ws 自己就可以完成科学任务。but 直接http协议传输,虽然实际内容是vmess加密的,但是ws的http特征还是明文的,这就给监听和分析留下了把柄,所以还是很快会被GFW盯上。在国家级算力之下,如果真想破解你的加密内容其实也就是分分钟的事。其实一般人家根本不需要解密你的数据,只需要确定你的数据符合特征就行(即使是加密过的数据,也是有其模糊特征的)。而WS自身的特征又非常明显,所以这么干,你的主机基本活不过30分钟就会挂掉。

那么为了解决这个ws的h特征问题,就要改用https,把你的流量完全包裹在真实的https数据之中,https是整体加密的,外界很难看出具体的请求内容、参数等等(https也是有特征的,但是这个特征看不出里边到底是什么,而互联网上https数据是海量的)。对于海量的正规的https传输,GFW是不会太认真检查的,除非它专门盯上你(再次提醒不要玩机场,那是引火自焚) 。https的根本意义在于给真实数据加密后的ws再套上一层看似完全合法正常的外衣。

但是只靠ws和https也不是万无一失的,针对一个海外IP,持续的大流量点对点访问,还是会有那么一点点的骚气,假以时日,终究可能引起GFW的注意。当狐狸惦记上你,不管你怎么包装,它都是可以给你刨出肉来。

那么,最后引入的就是CDN,国内外的CDN服务商很多,从技术上讲都可以用。但是实际上国内服务商都需要网站备案,域名备案,等等手续。有些国内服务商还拒绝对海外服务器提供CDN服务。这些基本上就可以扯淡了。 除非你确实有一些正规业务,这些网站在国内的手续完备,你才可以考虑把你的这个科学上网隐藏在正规服务之下。 一般来说没条件的,就只能考虑 cloudflare 或者Incapsula 这种。不过要告诉你们的是,从国内访问这种cdn服务商速度都不是很快,一般来说要比直连你的科学vps慢,但是这里讲的是安全,要是追求性能,cdn就不用了。  有了CDN,就保护了你VPS的真实地址,客户端访问CDN的服务器,而CDN的服务器再去访问你的VPS,一般而言是在cdn阶段出海,过了cdn就没啥问题了。

所以最后的成果就是WS+TLS+CDN

先看一下ws + https原理图

https在互联网阶段全程包裹着数据。 到达web服务器后,解开https内的数据交给 v2服务端处理。(上图有点错误,右侧v2ray server并不是包含在 nginx server之内,应该在右侧nginx,ws层通过nginx转交v2ray server处理。懒得改了,见谅)

然后是有CDN的原理图

可以看到CDN SERVER在中间负责中转,而客户端到CDN, CDN到VPS之间有两次HTTPS打包过程。 这里两次打包使用的加密证书是不同的(可以使用相同的,但是建议使用边缘证书,就是那个cdn提供的前端证书)。正常情况下,你不去通过其他方式泄漏VPS真实地址,也不使用国内的CDN服务商,那么在国内没人能知道你的VPS真实地址。 无论这个IP地址是否已经被GFW封禁,国内都可以通过它来科学上网。(除非CDN服务商被GFW干掉了)

 

有些技术基础的朋友通过以上的说明,应自己该就有能力自己搭建一个安全的 科学网了。

至于安装脚本,配置代码, 站点证书,CDN配置等等内容,另写一篇吧。

再啰嗦一句,WS模式比tcp模式速度稍差一点,tls需要握手时间,cdn有绕路问题,所以综合以上,这个方案是追求最大限度的安全,防封,解救已封ip,不是最优性能的方案。

祝各位读者,早日富可敌国!