VPN推荐:Tailscale

更新时间

快速链接

什么是Tailscale?

基于Wireguard的点对点VPN架构

Tailscale是一个软件即服务(SaaS)产品,适合从个人用户到整个企业的使用,基于Wireguard VPN协议。与其运行一个作为入口和出口的单一VPN服务器不同,Tailscale创建了一个去中心化的网状网络,称为tailnet。这个tailnet由Tailscale托管的中央控制服务器协调,负责在tailnet内进行对等发现(如共享IP地址和公钥)。

这种去中心化的网状网络使得你的设备能够在自己的私有VPN中有效存在,无论它们是否在你的家中。这意味着你的手机、笔记本电脑和家庭服务器可以轻松相互连接,而无需在家中运行专用的VPN服务器。

Tailscale依赖中央控制服务器虽然有一些缺点,但也有其优点。例如,Tailscale仅使用单点登录进行身份验证,意味着只需使用你的Google或Microsoft账户即可在线。

Tailscale的架构非常稳健,尽可能避免单点故障。Tailscale还使用了一种称为"洞穿"的技术,即使设备都在NAT后面(例如在家庭私有网络上),也能建立连接。这些技术类似于VOIP通话或其他点对点服务逃避NAT的方式。如果你对这一工作原理感兴趣,Tailscale有详细的总结可供参考。

费用是多少?

个人使用不是目标市场

与大多数VPN解决方案不同,Tailscale并不专注于个人用户。许多常见的VPN提供商针对的是单个用户和消费市场,而Tailscale则另辟蹊径。其网状网络架构使其非常适合大型企业控制访问其私有云,而不需要向更广泛的互联网暴露单个庞大的VPN接口。

这种方法的好处是,像许多面向企业的产品(例如:GitHub和LinkedIn)一样,对于大多数用户来说,Tailscale是免费的,并且包括了所需的企业级功能,而这些功能通常被锁在昂贵的付费墙后。这意味着在一个tailnet上最多可以有3个用户使用Tailscale是完全免费的。设备数量限制为100,但对于大多数用户来说,这已经足够,除非你是个别的重度用户或家庭实验室爱好者。

这些付费的企业功能包括更高级的SSO集成、无限的访问控制、企业支持和管理员角色。对于个人用户而言,这些功能并不是必需的,因此虽然你可以为Tailscale付费,但实际上并没有迫切的需求,我们建议几乎所有用户都保持在免费计划上(除非你是有特定需求的家庭实验室用户)。

如何开始使用Tailscale

与Google登录一样简单

由于Tailscale的集中控制平面,入门非常简单。它支持Google、Microsoft、Apple和GitHub等单点登录集成,以及任何其他支持OIDC的提供者。因此,如果你在运行家庭实验室,它可以与Keycloak、Authelia等实体集成。

要开始设置Tailscale账户和自己的tailnet,请按照以下步骤操作:

  1. 在Tailscale主页,选择右上角的"开始"。
  2. 选择你首选的身份提供者。在本示例中,我通过GitHub进行了身份验证。
  3. 一旦身份验证通过,你将看到一个屏幕提示你添加第一个设备。为了开始,建议你在手机或电脑上设置Tailscale。下载适合你设备的Tailscale应用。
  4. 在Tailscale应用下载中,点击"开始",并按照应用的提示授予相关权限。然后,你将被提示登录到你的Tailnet。点击此按钮,你将看到与步骤1相同的SSO登录屏幕。登录到你之前使用的相同账户。
  5. 你将被提示确认将设备连接到你的tailnet。点击"连接"。
  6. 你将被重定向回应用,设备现在应该已连接。查看原始浏览器,你的新设备现在应该出现在Tailscale的管理控制台中。

恭喜你,你现在已经创建了自己的tailnet。但这还不算一个完整的VPN。你的tailnet允许设备之间相互通信,但并不会像传统VPN那样转发所有互联网流量。要重定向所有流量,你需要指定一个出口节点。

指定出口节点

可选,将你的tailnet变成完整的VPN

在你的tailnet上,设备被分配到100.x.x.x范围的IP地址(100.0.0.0/8),就像你在家中的私有网络一样,这些设备可以通过Tailscale直接相互通信。然而,所有其他流量都直接通过设备的常规互联网连接。这就是理解Tailscale的重要之处——它是一个强大的网状网络,而不是开箱即用的VPN。互联网上的设备可以相互交流,但要与更广泛的互联网通信,你需要指定一个出口节点。

出口节点是Tailnet上的一个设备,所有非Tailscale流量都通过它流动(即所有不直接指向你其他设备的互联网流量)。这有效地将你指定的设备变成一个传统的VPN服务器,使得在更广泛的互联网中,所有连接看起来都源自该设备。我们建议使用一个通常开启的设备(如服务器或台式电脑)作为你的出口节点,并且该设备在你的家庭网络中运行。如果你希望有一个持续在线的节点,我们建议在云中设置一个虚拟机作为Tailscale出口节点,以确保持续在线。

这一步是可选的。如果你只想直接通过Tailscale访问内部服务或其他设备,而不是为了隐私或匿名化重定向流量,则无需为Tailscale配置出口节点。一旦在设备上配置了出口节点,该节点需保持运行以便通过Tailscale访问更广泛的互联网。

你可以通过打开客户端并选择"运行出口节点"将客户端变成出口节点。你将收到关于流量通过你设备的警告。

在Linux上安装Tailscale

家庭服务器是Tailscale网状网络和魔术DNS的绝佳应用

Tailscale的企业重点及其作为企业网络骨干的定位,意味着它在Linux上的支持非常出色。Tailscale的文档中有完整的Linux手动安装指南。然而,对于大多数用户来说,Tailscale提供了一个简单的一行脚本,可以帮助你快速上手。


通过以上内容,希望你对Tailscale有了更深入的了解。无论是家庭使用还是企业需求,Tailscale都能提供安全、灵活的VPN解决方案。

更新时间