不走寻常路,/翻/墙/上网三十六计

网络防火长城(GFW)是通往网络自由之路的强大敌人,只有冲破它的封锁,翻越这堵“墙”,才能自由的遨游于广袤无垠的互联网世界,才有机会打开脑洞开拓见识……如何才能富(/翻)强(/墙)科学上网呢?幸好有老祖宗兵法《三十六计》,它是克敌制胜的法宝,本文就为大家介绍一下“富(/翻)强(/墙)上网兵法三十六式”。
翻墙36计

0、知己知彼

网络防火长城(GFW)毕竟不能“一刀切”的拦截所有对外网的访问,因为正常的商贸往来是必须的,因此网络防火长城既要封锁拦截一部分特定目标,又要保证大部分对外访问正常使用,所以网络防火长城的封锁拦截需要有一定的针对性和主动识别的适应性,主要可能的封锁拦截方法如下:

  • a.国内 DNS 服务器对“重点关注”的域名(例如:Google)的 IP 地址进行缓存污染或劫持篡改,因为进行网络访问时,域名解析是第一步的工作;
  • b.当想用国外 DNS 服务器对“重点关注”的域名进行正常解析时,可以对发往国外的 DNS 的解析请求进行拦截或篡改;(通常 DNS 解析请求是明文的,明文指内容没有加密,简单处理后可识读)
  • c.就算利用 hosts 文件等方法的获取了“重点关注”的域名解析后的正常 IP 地址,还有对这些“重点关注”的域名的 IP 地址进行黑名单式拦截;
  • d. 退而求其次,不是直接访问“重点关注”的域名,采用代理访问时,有明显代理特征的如 PPTP-VPN、socks4/5 或者访问内容是明文的且包含被禁止的关键字等直接干扰拦截;
  • e.经过加密后的代理如 SSH、Shadowsocks、HTTPS 等进行深度包检测(DPI)或者流量特征统计分析、人工智能等方法进行干扰拦截;
  • 待续……这将是一场你来我往的蔓蔓征途

1、反客为主

既然已经知道了对手的“招式”,这正如前面前面一小节所说的“知己知彼”,我们就能见招拆招,反客为主了,否则就只能被动挨打了!

  • Hosts:对于“重点关注”的域名的 IP 地址(例如:Google)被污染或篡改主要对策是利用 hosts 文件保存正确的 IP 地址记录;这个与本地自建 DNS 服务器 的方法异曲同工。难点在于获取准确的目标域名 IP 地址!
  • DNS 安全认证与加密 :这个主要是解决 DNS 解析请求是明文的弱点,防止被偷看后篡改拦截了,目前常见主要的技术有DNSSEC(安全认证机制)、DNSCrypt、DNS over TLS、DNS over HTTPS。DNS 加密与认证解决了对外访问的第一步,但实现这些技术需要本地软件和远端 DNS 服务器的默契配合。Hosts 方式与 DNS 加密认证方式,可以说是调虎离山,然后自己占山(IP)为王
  • 上面主要介绍的是DNS方面的防御措施,下面来看看富(/翻)强(/墙)科学上网中的“重器”——各类代理(Proxy)!代理访问是与直接访问相对的,代理访问就好比我们通过宅急送吃到了汉堡包,直接访问就是我们自己到店子里面去买汉堡包了,O(∩_∩)O~。对于像Google这种重点关注的“犯罪分子”,网络防火长城(GFW)对它的域名和IP 地址都封锁拦截了,就只能派遣马甲小哥去“慰问它”,只要马甲小哥的“马甲”不被识破之前都是安全“潜伏者”!但是,对这个“潜伏者”是有特性要求的,它要在网络防火长城(GFW)管辖区域之外,而且要能与墙内的我们进行正常的通信往来。代理访问一般可分为正向代理和反向代理,正向代理简单理解就是我们知道且需要我们主动进行本地电脑的设置的代理;反向代理对我们来说一般是透明的,不需要我们进行本地电脑的设置。***反向代理相关软件:Nginx、Haproxy……

  • HTTP代理(WEB在线代理):HTTP 协议是设计用来进行 WEB 访问服务的,因此 HTTP代理(WEB在线代理)应用范围只能是 WEB 服务相关内容。 HTTP 代理服务器相当于我们的浏览器与需富(/翻)强(/墙)访问的目标 WEB 服务器之间的“翻译官”或者“中间人”,我们的浏览器——HTTP代理服务器——目标 WEB 服务器三者之间没有“隐私”可言,这个“翻译官”或者“中间人”知道而且必须知道一切内容才能正确的翻译。这种是明文代理,HTTP 协议的里数据内容没有加密,如果有大量的明显的不和谐的内容,HTTP服务器分分钟被网络防火长城(GFW)秒杀而斩于马下(被封锁)!由于正常商贸往来的 WEB 访问量(即 HTTP 访问)是特别大的,因此,HTTP代理是浑水摸鱼式的代理!WEB在线代理与 HTTP 代理原理基本一样,都是代理的 http 协议下的 WEB 访问。PS:支持 HTTPS 的 WEB在线代理意义略大一点。
  • HTTP隧道(WEB隧道):HTTP隧道(WEB隧道)与 HTTP 代理乍一看视乎类似的,但是实际上有天壤之别HTTP隧道(WEB隧道)下面运载传输的数据,可以是HTTP、HTTPS、FTP、SMTP等等协议,简单来说,HTTP隧道(WEB隧道)技术只是借用了 HTTP 协议搭建的“道路”,而往往干的是自己的私活,不一定与 WEB 访问有关系了,因为HTTP隧道(WEB隧道)用的是 HTTP 协议的 connect 方法,客户端用 connect 方法请求HTTP隧道(WEB隧道)服务器创建了一条到达任意目的服务器和端口的 TCP 连接,创建成功后,HTTP隧道(WEB隧道)服务器对后续通信数据进行“不管、不问、不看、不懂、不关心”的转发工作。,因此在该隧道下再来使用 HTTPS 也就不存在证书验证和信任问题了,因为 HTTPS 的加密验证体系会阻止 HTTP代理的存在的中间人的这种工作方式的。暗渡陈仓***相关软件:Squid、HTTPtunnel、Tinyproxy、Goflyway……
  • HTTPS代理:HTTPS 代理比 HTTP 代理多了一层 SSL 加密,使得 HTTPS 代理的不和谐的内容不再是显而易见!HTTPS 与 DNS 加密与安全认证相结合,可以解决一部分问题富(/翻)强(/墙)的需求,但 HTTPS 代理存在证书验证和信任问题了,我们的浏览器——HTTPS代理服务器——目标 WEB 服务器三者之间不能都用 HTTPS 协议,只能二选一,建议我们的浏览器——HTTPS代理服务器之间用 HTTPS 协议,HTTPS代理服务器——目标 WEB 服务器之间只能用 HTTP 了。如果想全程 HTTPS 那么,就只能使用 HTTP隧道(WEB隧道)了。
  • SSH 隧道代理:SSH 通信本身是加密的,它与 HTTP隧道(WEB隧道)核心思想类似,包括其它隧道类代理如ICMP-Hans、DNS隧道-Iodine,都是“美人计”,表面上看得见摸得着,也许还是你很熟悉的“美人”,但是心不是那个心了,是“包藏富(/翻)强(/墙)心”了!***典型相关软件:SSHtunnel、AutoSSH
  • Socks4/5 代理:Socks 协议是为代理而生的,日常常见的Socks4/5 是以前和现在广泛使用的 Socks 协议工程化的版本,Socks5 取得了效率和通用性的胜利,而且同时支持 UDP 和 TCP,但安全性上不足,代理的内容是明文识别的。因此,在用于富(/翻)强(/墙),很容易被擒贼先擒王,Socks 协议明文和显著特征正是这首先被先擒的“王”。
  • Socks5 加密加强版代理:原始版本的 Socks5 代理肯定是不适合长期经常性的穿越网络防火长城(GFW)这种有挑战性的工作,否则我们的代理服务器对抗网络防火长城(GFW)就是以卵击石,有去无回,有多少封锁多少!肿么办?办法就是对 Socks5 的在网络上传输的数据进行加密、变幻(混淆),这算是 Socks 协议“抛砖引玉”吧,使用这种加密加强版 Socks5 代理协议的典型代表软件有大名鼎鼎的 Shadowsocks(SS、SSR)、Brook、LightSword(基于 Node.js 的 SOCKS5 代理)……
  • VPN代理:工作在数据链路层,流量特征非常明显,出于正常商贸和技上的考虑,所以才还能存活,所以这算是一种“顺手牵羊”的 富(/翻)强(/墙)。但是自建的话,L2TP/PP2P/OpenVPN 基本没办法存活多久,有个 Cisco AnyConnect ,还有个后起之秀值得期待——WireGuard(VPS 上折腾过一次,没有成功o(╯□╰)o),具有顽强生命力的都是有较为强大加密/混淆功能的 VPN 实现。使用 VPN 富(/翻)强(/墙)方式会有个显著特点:即会在我们这端和远程代理服务器之间创建一个虚拟的网络,会分配一个虚拟网络网段内的新 IP 给我们的电脑或手机,这也造成了数据分流上的不便。***典型相关软件:SoftEther VPN(PacketiX VPN)、ShadowVPN、GoHop……
  • V2Ray 创新代理协议类:V2Ray 中的 VMess 是这类开拓创新型代理协议软件的典型代表了,V2Ray除了自创了 VMess 协议,还支持多种代理协议比如 shadowsocks 等,可以支持的 Shadowsocks 进行伪装,这是v2ray的一个显著特色优势,具体的伪装类型可以设置成 utp、srtp、wechat-video、dtls、wireguard 或者 none,这几个分别将数据伪装成 BT 下载、视频通话、微信视频通话、dtls、wireguard以及不进行伪装。而且,对于加密了协议,就算数据被截获,也很难解密,保证了访问的内容是安全的,因此如果不进行伪装的话,虽然看不见我们访问的具体内容,但是进行统计方面的特征分析和人工智能技术,还是可以推测出我们正在科学上网 富(/翻)强(/墙)。这类新技术值得期待,可谓是釜底抽薪之策***典型相关软件:Gfw.press、Latern(分为免费版/商业版)、GoAgent(基于 GAE)、GoProxy(GoAgent 的继任者)、XX-Net(类似GoAgent,分为免费版/商业版)……
  • P2P 分布式及区块链类代理:P2P 分布式的典型应用就是 BT 下载了,这个分布式也有不足,有的需要Tracker服务器;对于使用DHT协议的,相当于一个小路由器,与邻近链接构成小网络。勉强算“远交近攻”类代理吧***典型相关软件:Sync(适合同步分享)、IPFS/Filecoin、ZeroNET、ZeroMe(类似Twitter)、ZeroMail(提供邮件服务)……
  • 站点镜像代理:站点镜像就是把墙外的网站“复制”一份到墙内,这个一般适合更新不频繁的站点比如维基百科(WiKi)、维基解密等,在墙内由“爱心人士”搭建的,但是“爱心人士”在搭建之前也得先富(/翻)强(/墙)将目标网站整站镜像下载回来,然后再给我们不能富(/翻)强(/墙)的芸芸众生开眼界,这种算是比较小众的富(/翻)强(/墙)。这种方式是否可以称为“李代桃僵”呢?***典型相关软件:Zmirror……
  • 内网穿透及端口转发类代理:内网穿透本不属于代理类,但它们的穿透特性的用武之地有待发掘发光,比如Frp的内网穿透可以 P2P 式转发;N2N 可以看成是P2P + VPN ;ZeroTier是VPN 类;***典型相关软件:N2N、Frp、ZeroTier、ngrok、convnet、tinc,Mapport、NSmartProxy(采用.NET CORE的全异步)……
  • IPv6及IPv6隧道
  • :据说 GFW 暂时还未能有效封禁 IPv6 地址,所以在教育网里能够分配到外网IPv6地址的一般能访问 Google/Facebook 等。不过这个应该只是暂时的“浑水摸鱼”之计。

  • TOR 路由及暗网:这种富(/翻)强(/墙)方式的主要特点是利用加密传输、P2P对等网络、多中继混淆等,包含洋葱路由(TOR)、隐形互联网计划(Invisible Internet Project,I2P)及自由网(freenet)等一系列技术,为用户提供匿名的互联网信息访问的一类技术手段,其最突出的特点就是匿名性,但是墙内要访问暗网需要特定的 obfsproxy 的桥接(亦可自建网桥),可是网络防火长城(GFW)基本上已经封锁拦截了所有的这类网桥 。上屋抽梯,难以溯源追踪。***典型相关软件:tor Browser、I2P、NightWeb……
  • 总结一下,其实不难发现,目前的能用的富(/翻)强(/墙)科学上网策略基本是四类:a.加密;b.创新+加密;c.加密+借刀(隧道)杀人(墙);d.加密+分布式(去中心化)。更高大上的,如肉身出国富(/翻)强(/墙)(走为上策!)、马克斯搞的卫星网络互联网都值得期待和探索。

2、无中生有——开花结果

不知道哪个牛人曾经说过,要把命运老把我在自己手中,因此,自己搭建无缝无痛的富(/翻)强(/墙)科学上网服务也许才是最靠谱的选择,下面简单说一下,主要分为以下几步了。

  1. 选择购买合适的VPS 服务器,可以参考本站 VPS 选购方面的博文如 年付 30$ 美元以内 KVM/XEN 精选 VPS 汇总-可支付宝付款—20191127更新
  2. 安装配置优化系统,可以参考本站 VPS 选购方面的博文如必备!小白也来玩转 CentOS(Linux) 系统(安全加固、性能优化、网络加速)
  3. 安装配置相关富(/翻)强(/墙)科学上网服务的软件,可以去Github上面找一键脚本
  4. 最后,就是进行本地电脑或者手机或者路由器上的配置了,路由器建议使用 OpenWrt 系统的。

在安装富(/翻)强(/墙)科学上网服务的软件后,还需要一些辅助策略如 PAC、Gfwlist 等进行国内外 IP 的自动分流,不然访问个墙内的网站也要去欧美周游一圈,岂不是脱裤子放屁了,因为电脑或者手机上性能的优势或者为了照顾小白菜鸟的需求相关软件易用性做得比较好了,基本可安装富(/翻)强(/墙)科学上网服务的软件后就已经集成好了,开箱即用。但是对于基于嵌入式 Linux 的如 OpenWrt 系统路由器,还需要安装辅助软件了如 privoxy / polipo /chnroutes / cow / meow ,其中 privoxy / polipo 生成的代理是纯 HTTP 代理,cow /meow 则会自动学习已科学上网/未科学上网网站并更新列表、生成 PAC 等。但是 cow 因为默认认为网站未被墙,所以很多网站会尝试多次连接才能使用代理,速度有一定影响;而 meow 是白名单模式,可能会影响部分国内网站的加载速度)。

对于域名的解析,也不要用国内的或者宽度服务商自带的了,不然可能会“出师未捷身(域名)死”,可以在本地或者远程 Dnsmasq 、 Pdnsd、 ChinaDNS、Simple DNSCrypt 等进行本地缓存或者远程解析和加密解析。另外,远程 PAC 文件如使用 HttpDNS 服务可能有部分 App 无法兼容。

Foxy Proxy 和 SwitchyOmega 之后的第三个选择是 SmartProxy,一款用来切换代理服务器的浏览器扩展,还有安卓版,可以不需要root权限配置 PAC 代理,能防DNS污染,不掉线省电。

iOS 苹果系统上分流 IP:未越狱 iOS 设备,所有免费方案中 AnyConnect 是最方便的服务端使用 ocserv,用路由表做分流,不太精确
;其它,Surge(iOS / OS X 科学上网首选,支持 http、shadowsocks 代理,支持类 PAC 的配置,支持路由表,支持根据 IP 地址分流,在 OS X 上作为二级 HTTP 代理使用,同时也提供 SOCKS 代理,配置麻烦,价格高);Potatso ;Shadowrocket

迫于被网站已经被和谐,文章里面的敏感字眼如“富(/翻)强(/墙)”等,阅读时请忽略“富(/)强(/)”;另,访问本网站请注意网址前加“httpS://”——by:go2do

欢迎投稿、分享转载,转载请保留如下信息:格物躬行博客[https://www.go2do.net]

本文由 [go2do] 原创,本文链接: https://www.go2do.net/vpn/%e4%b8%8d%e8%b5%b0%e5%af%bb%e5%b8%b8%e8%b7%af%ef%bc%8c%e7%bf%bb%e5%a2%99%e4%b8%8a%e7%bd%91%e4%b8%89%e5%8d%81%e5%85%ad%e8%ae%a1.html



You may also like...

发表评论

电子邮件地址不会被公开。

本页共执行137次数据库查询,耗时0.236秒,使用内存 1.75 MB