OpenVPN 是什么?

什么是 OpenVPN/协议

如果您不经意看到“OpenVPN”这个专业术语却不知道这是什么,有什么用,读完这篇文章后,您将会对 OpenVPN 有一个比较全面的了解,并懂得为什么 OpenVPN 协议是业界口碑最好的 VPN 协议之一。

OpenVPN 是什么?

对于普通用户而言,最有可能遇到 OpenVPN 的机会无外乎有二:一是在使用内置 OpenVPN 协议的 VPN (学名)软件时,因为这种情况软件大概率会给出相关设置选项供“高阶用户”直接选择使用 OpenVPN 协议来路由流量(选取它的原因我们后文会提到)。二是用户在浏览一些与网络隐私安全相关的信息或干货时,作者如果有提到和 VPN,也很有可能顺便知识延展到 OpenVPN 这个东东。

那么 OpenVPN 究竟是什么呢?在上一段中,我们提及了它的身份之一 —— VPN 协议。在众多 VPN 协议中,开源属性、平台兼容性广外加出色的性能共同成就了 OpenVPN 今日的地位。事实上,除了协议的身份之外,OpenVPN 广义上还可能指代更多东西,例如 OpenVPN 公司,OpenVPN 公司开发的包括 OpenVPN Connect 客户端、OpenVPN Access Server 服务器,和 OpenVPN Cloud 云存储在内的 OpenVPN 服务。

OpenVPN 公司产品

  • ☞ OpenVPN 协议:一个最早由 James Yonan 编写的基于 SSL 的隧道协议,本质一个是应用于创建 VPN 加密通道的软件包,高度可配置且开源,是目前使用最广泛且好评率最好的 VPN 协议之一。
  • ☞ OpenVPN Connect:一个免费、功能较丰富的 VPN 客户端,用于连接到你的虚拟私人网络,支持 Windows, macOS, Linux, Android 和 iOS。
  • ☞ OpenVPN Access Server:一个高度灵活的VPN 软件服务器,可免费安装使用并同时允许两台设备同时连接。
  • ☞ OpenVPN Cloud:该服务让“服务器安装”成为虚拟专用网络搭建的非必须选项,被称为 OpenVPN 旗下的“下一代网络解决方案”。

考虑到大多数人的搜索 OpenVPN 只是为了挖掘有协议这方面的信息,下面我们将重点讲一讲 OpenVPN 协议。

OpenVPN 协议是如何工作的?

像其他所有  一样,OpenVPN 协议仍然是通过在用户端设备和目标网络服务器之间建立加密“隧道”来传输并确保所有流量和个人数据不会被任意第三方发现、搜集并存储。当下,VPN 已经成为了诸多大中型企业、私人团体或者个人的一种常见通讯方式。VPN 协议是 VPN 运行的基石,而 OpenVPN 作为 VPN 协议的大哥大之一,毫无疑问已经成为了优质 VPN 的标配之一。当然随着时间的推移,也出现了一些新的像 WireGuard 一样的优质协议,它们的出现对于 OpenVPN 而言也有着一定的威胁性。

VPN tunnel on VPN workflow

OpenVPN 的技术原理(含加密技术和身份认证)

从百科或者其它很多地方,我们都可以看到一个说法,即:OpenVPN 的技术核心是虚拟网卡SSL 协议实现,下面我们也将逐一问您解释一下它们究竟为何物。

首先什么是虚拟网卡?虚拟网卡,也叫虚拟网络适配器,顾名思义就是被模拟出来的网络环境。实际上,虚拟网卡是一个驱动软件,可用网络底层编程技术进行实现。一旦您的设备实现并安装好虚拟网卡,OpenVPN 就可以利用它与远程计算机建立局域网,实现连接。例如,当远程办公的您想访问一个远程的公司内网,建立 OpenVPN 后,你在应用软件(如浏览器)输入虚拟(公司内网)地址并发出请求,系统就会将数据包或者数据帧发到虚拟网卡,继而由服务程序处理后再借助于 SOCKET 发送请求到外网,外网服务器响应后再通过同样的路径将信息传输回到本机。因为虚拟网卡在当下很多操作系统都可以实现,这也是 OpenVPN 得以跨平台工作得一个重要原因。

OpenVPN 的加密技术和身份认证都是得益于对 OpenSSL 的支持。OpenSSL 也是一款开源的以 C语言写成的软件库包,专用于安全网络通信、屏蔽窃听和身份确认。它可以采用高达256位的 OpenSSL 加密。

此外,OpenVPN 还支持 HMAC (中文名散列消息认证码),结合加密密匙的使用,可以完美保护传输信息的完整性,不丢包,赋予另一层安全保障。由于加密过程本来就是一项耗时耗能的工作,为了提高性能,OpenVPN 还支持使用了硬件加速mbed TLS(前身为 PolarSSL)技术,加速加密的同时能保证 TLS 流畅运行。

接下来就是 OpenVPN 的身份验证途径,目前支持“预共享密匙”、“公开密匙认证(又叫数字/身份证书)”和“用户名+密码组合”三种方式。我们平时使用购买使用的 VPN 服务很明显就是采用的第三种验证方式。

UDP OpenVPN 对比TCP OpenVPN,有什么区别,谁更好?

TCP/IP 是整个互联网协议族群的总称,一般可以分为链接层、网络层、传输层和应用层。因为传输层是整个在线数据传输的重要阶段,那让我们来一起瞧瞧 OpenVPN 的传输方式。目前具有传输层功能的代表性协议主要是 TCP(Transmission Control Protocol/传输控制协议)和 UDP (User Datagram Protocol/中文用户资料包协议),而 OpenVPN 对这两者都已予以支持且默认使用 UDP 模式。究其原因,是因为 OpenVPN 在 UDP 模式下的综合表现最佳。

TCP vs UDP

那么问题来了,UDP 模式对比 TCP 模式,有什么区别,谁更好呢?

简单地说,OpenVPN TCP 模式拥有更好的稳定性,因为它得运行机制是以确保传输得完整性为主,它会为每个数据包分配一个唯一的标识符和序列号,当接收者收到数据包时,只有顺序完全正确才会向发送者予以确认继而让其继续下一个数据包发送。如果数据包丢失或以错误的顺序发送,接收器就会保持“沉默”,不会给出接受反馈,这表示发送者需要重新发送相同的数据包。由于 TCP 的运行端口号是 80/443,很难被阻止通过,这也是使用OpenVPN VPN 能绕过各种防火墙限制的原因。但您必须知道,只有当带宽足够的时候,TCP 模式才能正常运行,从而保证流畅的上网体验。如果带宽不够,就会发生 TCP 丢包现象,影响数据传输。

相反,UDP 模式的优点是连接速度更快,为保证速度,稳定性相比 TCP 模式会有所下降,因为它没有像 TCP 一样的错误校正能力。这也是为什么 UDP 模式通常被建议用于串流 HD/4K 在线视频,资源下载(如 )。OpenVPN UDP 默认是使用端口 1194。此外,OpenVPN 能很好的支持 IPv4/IPv6,代理服务器和 NAT 穿透。

OpenVPN 对比其他 VPN 协议,谁更好?

VPN 协议总共有十余种,而不同于大多数协议,OpenVPN 协议是少数开源项目之一。 这意味着它的代码是完全公开且具有很强的安全性。项目首发于2001年,经过超过二十载的发展,目前 OpenVPN 毫无疑问因其安全和稳定性已经成为了最受欢迎的 VPN 协议,即使不断有新的优秀协议涌现,诸如 WireGuard,但是多数 VPN 厂商仍未添加对它的支持,所以使用率在目前以及短期以内都仍然不及 OpenVPN。

下面我们将将 OpenVPN 协议与一些常见 VPN 协议进行逐一的简单对比,看完后,您将更好的了解 OpenVPN 何以拥有今日之地位。

OpenVPN协议对比其它协议

-OpenVPN 对比 PPTP

PPTP 可以说是“老一辈”的 VPN 协议,以 GRE 协议做点对点传输,并由 TCP 1723端口来发起和管理 GRE.由微软、3Com等大佬联合开发并于1999年正式发布。因为它本身没有加密和身份验证功能,仅依靠点对点协议(即 PTP)的隧道传输通道实现安全功能,所以速度快,但是由于安全性能低,早已不建议使用。有人也将其称之为“果实的 VPN 协议”。这无疑凸显了 OpenVPN 的优势,尤其是在安全方面。另外,PPTP 更适用于手机平板等移动设备,而 OpenVPN 在 Windows、macOS 和 Linux 等桌面端工作更佳。

– OpenVPN 对比 IPSec

IPSec 类似于 PPTP,也是比较老而过时的 VPN 隧道协议,尽管它的协议含有 AH/认证头,ESP/封装安全载荷,和 IKEv2/因特密匙失交换,对比 PPTP 拥有更好的安全性,但是不论是在加密和速度方面都是不敌 OpenVPN 的。相比 OpenVPN,IPSec 流量传输也更容易被识网路服务商识别并阻断。

– OpenVPN 对比 L2TP

L2TP 协议是由 Microsoft 和 Cisco 共同开发并在1999年发布的,也是第一个真正专为 VPN 开发的隧道协议。 为了升级其安全性,L2TP 经常会与 IPSec 搭配使用。即使如此,不论是安全加密性、工作效率还是翻越防火墙,L2TP 都不能与 OpenVPN 媲美,因为它需要两次检查数据,即需要更多 CPU 资源和时间来处理。在没有 OpenVPN, WireGuard 这些首选协议的情况下,L2TP/IPsec 也不失为一个靠谱的选项。

– OpenVPN 对比 IKev2

我们上面已经在讲 IPSec 的时候有提到过 IKev2,是的,它俩搭配起来可以像用户提供相对升级的 VPN 体验。如果单将 IKev2 与 OpenVPN 协议相比,在有硬件加速的背景下,它们有着差不多的数据安全加密级别、连接快速。如果不是实现硬件加速,IKev2 比 OpenVPN 在速度上面更有优势,哪怕对标 OpenVPN UDP。另外,IKev2 在移动设备稳定性更高。

– OpenVPN vs. WireGuard

是一个相对较新的明星开源 VPN协议,由 Jason A. Donenfeld 开发。如果您使用的 VPN 已经添加对它的支持,那么它会比 OpenVPN 更建议使用,因为它不仅加密级别高,稳定,速度更是被认定比 OpenVPN 快。虽然 WireGuard 在平台的兼容性还比不上 OpenVPN,毫无疑问的是,它将是继 OpenVPN 后另一个拥有“光明前途”的开源 VPN 协议。

【新手建议】自己搭建vs.使用现成 OpenVPN 服务,更推荐后者

对与普通用户而言,如果需要使用 VPN 服务,一般有两种方法可以实现:一是,并自己依照进行搭建,二是直接使用现成 VPN 软件服务。鉴于前者需要更多的相关知识储备和动手能力,那么新手个人用户更推荐使用免费或付费的有支持 OpenVPN 协议的 VPN 软件。

,中文名熊猫VPN,就是这样一个可靠并支持 OpenVPN 协议的虚拟私人服务。除了支持 OpenVPN,还支持 Shadowsocks,以帮助绕过各种防火墙,并将在不久的将来支持 WireGuard,以给各地的用户提供更多的选择,轻轻松松拥有更快速和稳定的连接,实现匿名上网和隐私安全保护。

熊猫VPN 现已在全球80个国家的170个地区拥有超3000台加速服务器,支持主流智能设备系统,并允许三台设备同时在线,无论你身在哪里,用的何种设备,想“到哪里去”,你都可以通过连接当地服务器进行实现。