6 款用于构建您自己的 VPN 的开源工具

想要尝试构建您自己的 VPN,但不确定从哪里开始?
444 位读者喜欢这篇文章。

如果您想尝试构建自己的 VPN,但不确定从哪里开始,那么您来对地方了。我将比较六款最佳的免费和开源工具,以便在您自己的服务器上设置和使用 VPN。无论您是想为您的企业设置站点到站点 VPN,还是仅仅创建一个远程访问代理来解锁网站并将您的互联网流量对 ISP 隐藏,这些 VPN 都适用。

哪个最好取决于您的需求和限制,因此请考虑您自己的技术专长、环境以及您希望通过 VPN 实现的目标。尤其要考虑以下因素:

  • VPN 协议
  • 客户端数量和设备类型
  • 服务器发行版兼容性
  • 所需技术专长

Algo

Algo 的设计初衷是为需要安全互联网代理的企业旅行者创建 VPN。“它只包含您需要的最小软件”,这意味着您牺牲了可扩展性以换取简单性。Algo 基于 StrongSwan,但去除了所有您不需要的东西,这样做的好处是消除了新手可能不会注意到的安全漏洞。

作为额外的奖励,它甚至可以阻止广告!

Algo 仅支持 IKEv2 协议和 Wireguard。由于 IKEv2 支持已内置于当今大多数设备中,因此它不需要像 OpenVPN 这样的客户端应用程序。Algo 可以使用 Ansible 部署在 Ubuntu(首选选项)、Windows、RedHat、CentOS 和 FreeBSD 上。设置使用 Ansible 自动化,Ansible 会根据您对一组简短问题的回答来配置服务器。它也很容易拆卸并按需重新部署。

Algo 可能是此列表中设置和部署最简单、最快的 VPN。它非常整洁且考虑周到。如果您不需要其他工具提供的任何更高级的功能,而只需要一个安全的代理,那么它是一个不错的选择。请注意,Algo 明确声明它不适用于地理位置解锁或规避审查,并且主要为保密性而设计。

Streisand

Streisand 可以使用单个命令安装在任何 Ubuntu 16.04 服务器上;该过程大约需要 10 分钟。它支持 L2TP、OpenConnect、OpenSSH、OpenVPN、Shadowsocks、Stunnel、Tor 网桥和 WireGuard。根据您选择的协议,您可能需要安装客户端应用程序。

在许多方面,Streisand 与 Algo 类似,但它提供了更多的协议和自定义选项。这需要更多的工作来管理和保护,但也更灵活。请注意,Streisand支持 IKEv2。我认为 Streisand 由于其多功能性,在绕过中国和土耳其等地的审查方面更有效,但 Algo 更容易且设置速度更快。

设置使用 Ansible 自动化,因此不需要太多技术专长。您可以通过向用户发送自定义生成的连接说明(其中包含服务器 SSL 证书的嵌入副本)来轻松添加更多用户。

拆卸 Streisand 是一个快速而轻松的过程,您可以按需重新部署。

OpenVPN

OpenVPN 需要客户端和服务器应用程序才能使用同名协议设置 VPN 连接。OpenVPN 可以进行调整和自定义以满足您的需求,但它也需要此处介绍的工具中最多的技术专长。远程访问和站点到站点配置都受支持;如果您计划将 VPN 用作互联网代理,则前者是您需要的。由于大多数设备上使用 OpenVPN 都需要客户端应用程序,因此最终用户必须保持它们更新。

在服务器端,您可以选择在云中或在 Linux 服务器上部署。兼容的发行版包括 CentOS、Ubuntu、Debian 和 openSUSE。客户端应用程序适用于 Windows、MacOS、iOS 和 Android,并且还有适用于其他设备的非官方应用程序。企业可以选择设置 OpenVPN Access Server,但这对于个人用户来说可能过于复杂,他们会想要社区版。

使用静态密钥加密配置 OpenVPN 相对容易,但它并非完全安全。相反,我建议使用 easy-rsa 进行设置,这是一个密钥管理包,您可以使用它来设置公钥基础设施。这使您可以一次连接多个设备,并使用完美前向保密性等其他优势来保护它们。OpenVPN 使用 SSL/TLS 进行加密,您可以在配置中指定 DNS 服务器。

OpenVPN 可以穿透防火墙和 NAT 防火墙,这意味着您可以使用它来绕过可能阻止连接的网关和防火墙。它支持 TCP 和 UDP 传输。

StrongSwan

您可能遇到过一些名称中带有“Swan”的不同 VPN 工具。FreeS/WAN、OpenSwan、LibreSwan 和 strongSwan 都是同一项目的分支,而后者是我个人最喜欢的。在服务器端,strongSwan 在 Linux 2.6、3.x 和 4x 内核、Android、FreeBSD、macOS、iOS 和 Windows 上运行。

StrongSwan 使用 IKEv2 协议和 IPSec。与 OpenVPN 相比,IKEv2 连接速度更快,同时提供相当的速度和安全性。如果您喜欢不需要在客户端上安装其他应用程序的协议,这将非常有用,因为今天制造的大多数较新设备都原生支持 IKEv2,包括 Windows、MacOS、iOS 和 Android。

StrongSwan 不是特别容易使用,尽管文档还不错,但它使用的词汇与其他大多数工具不同,这可能会令人困惑。其模块化设计使其非常适合企业,但也意味着它不是最精简的。它肯定不如 Algo 或 Streisand 那么直接。

访问控制可以基于使用 X.509 属性证书的组成员身份,这是 strongSwan 独有的功能。它支持 EAP 身份验证方法,以便集成到 Windows Active Directory 等其他环境中。StrongSwan 可以穿透 NAT 防火墙。

SoftEther

SoftEther 最初是日本筑波大学一名研究生的项目。SoftEther VPN Server 和 VPN Bridge 在 Windows、Linux、OSX、FreeBSD 和 Solaris 上运行,而客户端应用程序在 Windows、Linux 和 MacOS 上运行。VPN Bridge 主要用于需要设置站点到站点 VPN 的企业,因此个人用户只需要服务器和客户端程序来设置远程访问。

SoftEther 支持 OpenVPN、L2TP、SSTP 和 EtherIP 协议,但其自身的 SoftEther 协议声称能够 благодаря “Ethernet over HTTPS” 伪装来防御深度包检测。SoftEther 还进行了一些调整以减少延迟并提高吞吐量。此外,SoftEther 还包括克隆功能,使您可以轻松地从 OpenVPN 过渡到 SoftEther。

SoftEther 可以穿透 NAT 防火墙并绕过防火墙。在仅允许 ICMP 和 DNS 数据包的受限网络上,您可以利用 SoftEther 的 VPN over ICMP 或 VPN over DNS 选项来穿透防火墙。SoftEther 适用于 IPv4 和 IPv6。

SoftEther 比 OpenVPN 和 strongSwan 更容易设置,但比 Streisand 和 Algo 稍微复杂一些。

WireGuard

WireGuard 是此列表中最新的工具;它太新了,甚至还没有完成。话虽如此,它提供了一种快速简便的 VPN 部署方式。它的目标是通过使其更简单、更精简(如 SSH)来改进 IPSec。

与 OpenVPN 类似,WireGuard 既是一种协议,也是一种用于部署使用该协议的 VPN 的软件工具。一个关键功能是“加密密钥路由”,它将公钥与隧道内允许的 IP 地址列表相关联。

WireGuard 适用于 Ubuntu、Debian、Fedora、CentOS、MacOS、Windows 和 Android。WireGuard 适用于 IPv4 和 IPv6。

WireGuard 比大多数其他 VPN 协议轻得多,并且仅在需要发送数据时才传输数据包。

开发人员说 WireGuard 尚不应被信任,因为它尚未经过全面审核,但欢迎您试用一下。它可能是下一个热门事物!

自制 VPN 与商业 VPN

制作您自己的 VPN 会为您的互联网连接增加一层隐私和安全性,但如果您是唯一使用它的人,那么对于装备精良的第三方(例如政府机构)来说,追踪活动回到您身上相对容易。

此外,如果您计划使用 VPN 来解锁受地理位置限制的内容,那么自制 VPN 可能不是最佳选择。由于您只会从单个 IP 地址连接,因此您的 VPN 服务器很容易被阻止。

优秀的商业 VPN 没有这些问题。使用像 ExpressVPN 这样的提供商,您可以与数十甚至数百个其他用户共享服务器的 IP 地址,从而几乎不可能跟踪单个用户的活动。您还可以获得数百或数千个服务器的巨大范围可供选择,因此如果一个服务器已被列入黑名单,您可以切换到另一个服务器。

然而,商业 VPN 的权衡是您必须信任提供商不会窥探您的互联网流量。请务必选择信誉良好的提供商,并具有明确的无日志政策。

标签
User profile image.
Paul Bischoff 是一位隐私倡导者,也是 Comparitech 的编辑,Comparitech 是一个专注于安全技术的服务评论网站。自 2012 年以来,他一直在为多家媒体报道 IT 相关主题,并且对隐私、言论自由和网络中立充满热情。

4 条评论

列表中缺少一些比所有这些都好的东西。
您没有包括 tinc...
还有来自谷歌的 Outline VPN...
最好的一个应该仍然鲜为人知。好吧,实际上没有最好的……每个人都面临不同的情况。

您可能对 openvpn 不感兴趣,顶级 vpn 公司使用最古老的技术 OpenVPN 是有原因的,一旦克服,它只会显示事件的预测,因为它太旧了,并且经过了多次测试。而且网络都是相同的拓扑结构……只是安全更新和带有新名称的编辑协议。有些只是轻便快速,但在远程 nat 逻辑或漏洞不一致方面很糟糕。或者只是喜欢启动并且没有什么特别的协议,有些只是在一个方向上很棒。但是,我最好的不是 openvpn,但总的来说,它是一个非常值得尊敬的软件。我很高兴 Cisco 在精简版中缺失。在我被 gre ipsec 爱好者巨魔攻击之前,我先走了。

Tinc 也是一个不错的选择,尤其是对于低功耗设备。Outline 更适合企业,但感谢您的投入!

回复 作者:Sean (未验证)

还有 tinc (“没有阴谋集团”)
https://tinc-vpn.org/
它具有内置的网状路由功能,这非常方便。

Creative Commons License本作品根据 Creative Commons Attribution-Share Alike 4.0 International License 获得许可。
© . All rights reserved.