如果您想尝试构建自己的 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 的权衡是您必须信任提供商不会窥探您的互联网流量。请务必选择信誉良好的提供商,并具有明确的无日志政策。
4 条评论