一、什么是vpn
OpenVPN是一个用于创建虚拟专用网络加密通道的软件包,最早由James Yonan编写。OpenVPN允许创建的VPN使用公开密钥、电子证书、或者用户名/密码来进行身份验证。
它大量使用了OpenSSL加密库中的SSLv3/TLSv1协议函数库。
当前OpenVPN能在Solaris、Linux、OpenBSD、FreeBSD、NetBSD、Mac OS X与Microsoft Windows以及Android和iOS上运行,并包含了许多安全性的功能。它并不是一个基于Web的VPN软件,也不与IPsec及其他VPN软件包兼容。
VPN在很多人心目中就是用来浏览国外网站的工具,其实不是。VPN最主要的功能,并不是用来干这事,只是它可以达到那目的而已。其实VPN是虚拟专用网络,它的功能是:在公用网络上建立专用网络,进行加密通讯。在企业网络和高校的网络中应用很广泛。你接入VPN,其实就是接入了一个专有网络,你的网络访问都从这个出口出去,你和VPN之间的通信是否加密,取决于你连接VPN的方式或者协议。
二、什么是Shadowsocks
Shadowsocks(简称SS)是一种基于Socks5代理方式的加密传输协议,也可以指实现这个协议的各种开发包。当前包使用Python、C、C++、C#、Go语言等编程语言开发,大部分主要实现(iOS平台的除外)采用Apache许可证、GPL、MIT许可证等多种自由软件许可协议开放源代码。Shadowsocks分为服务器端和客户端,在使用之前,需要先将服务器端程序部署到服务器上面,然后通过客户端连接并创建本地代理。
在中国大陆,本工具广泛用于突破防火长城(GFW),以浏览被封锁、遮蔽或干扰的内容。2015年8月22日,Shadowsocks原作者Clowwindy称受到了中国政府的压力,宣布停止维护此计划(项目)并移除其个人页面所存储的源代码。
为了避免关键词过滤,将Shadowsocks称为“酸酸”。
三、什么是Shadowsocks-R
ShadowsocksR(简称SSR)是网名为breakwa11的用户发起的Shadowsocks分支,在Shadowsocks的基础上增加了一些数据混淆方式,称修复了部分安全问题并可以提高QoS优先级。后来贡献者Librehat也为Shadowsocks补上了一些此类特性,甚至增加了类似Tor的可插拔传输层功能。
ShadowsocksR开始时曾有过违反GPL、发放二进制时不发放源码的争议,不过后来ShadowsocksR项目由breakwa11转为了与Shadowsocks相同的GPL、Apache许可证、MIT许可证等多重自由软件许可协议。
2017年7月19日,ShadowsocksR作者breakwa11在Telegram频道ShadowsocksR news里转发了深圳市启用SS协议检测的消息并被大量用户转发,引发恐慌。7月24日,breakwa11发布了闭源的SS被动检测程序,引发争议。7月27日,breakwa11遭到自称“ESU.TV”的不明身份人士人身攻击,对方宣称如果不停止开发并阻止用户讨论此事件将发布更多包含个人隐私的资料,随后breakwa11表示遭到对方人肉搜索并公开个人资料的是无关人士,为了防止对方继续伤害无关人士,breakwa11将删除GitHub上的所有代码、解散相关交流群组,停止ShadowsocksR项目
四、vpn和ss/ssr的区别和优缺点
通过上面的介绍,其实基本已经能看出vpn和ss/ssr的区别了,那么他们到底孰优孰劣。
因为vpn是走的专用通道,它是用来给企业传输加密数据用的,所以vpn的流量特征很明显,以openvpn为例,更详细的在这里不说了,流量特征明显,防火墙直接分析你的流量,如果特征匹配,直接封掉。目前就翻墙来说,PPTP类型的vpn基本死的差不多了,L2TP大部分地区干扰严重很不稳定。
ss/ssr的目的就是用来翻墙的,而vpn的目的是用来加密企业数据的,对于vpn来说安全是第一位的,而对于ss/ssr来说穿透防火墙是第一位,抗干扰性强,而且对流量做了混淆,所有流量在通过防火墙的时候,基本上都被识别为普通流量,也就是说你翻墙了,但是政府是检测不到你在翻墙的。两者的出发点和着重点就不同,ss/ssr更注重流量的混淆加密。如果要安全匿名上网,可以用vpn+tor或者ss/ssr+tor。
而安全性方面还要补充的一点就是,国内vpn服务商,政府是很容易拿到他们的服务器日志的,如果他们真的这样做了,你翻墙做了什么,一览无余