跳到正文
全部 31 篇FREN中文
目录
第 3 部分 · 第 1 篇,共 4 篇 难度:简单 阅读时间:10 分钟 适用平台:Linux, Mac和Windows

Tailscale:您的私有网络

从任何地方,咖啡馆、火车、沙发,都能连上您的机器,就像它就在您身边。加密、不用开放任何端口,五分钟搞定。

本文目录
  1. 01一张图看懂它怎么工作
  2. 02搭建,一步一步来
  3. 03改变生活的彩蛋:Tailscale SSH
  4. 04两个值得了解的附加项(可选)
  5. 05实话实说的那一面
  6. 06常见问题

要点速览

Tailscale 把您的设备(迷你 PC、笔记本、手机)连成一个用 WireGuard 加密的私有网络,路由器上不用开放任何端口。一行命令即可安装,用 Google、GitHub 或 Microsoft 账号登录后,每台机器都能通过名字访问,例如 ssh ulrich@mini。免费的 Personal 方案足够个人使用:最多 6 个用户,个人设备数量不限。

请先完成: 安装 Linux

您的迷你 PC 在您家里,摆在路由器后面。只要您在同一个 Wi-Fi 上,一切都很美好。但您一出门,咖啡馆、火车、办公室,它就联系不上了。它住在一个私有网络里,藏在路由器的 NAT 后面,没有属于自己的公网地址。

2000 年代解决这个问题的办法是在路由器上开放端口:您把 22 端口转发到机器上,然后祈祷别人找不到它。问题是整个互联网都在不停地扫描这个端口。您刚刚把自家大门暴露给了全世界。脆弱、让人焦虑,而且每次换路由器都要重新配。

Tailscale 从另一头入手:它不是朝您的机器开一道口子,而是搭建一个私有网络,把您所有的设备彼此连起来。您的迷你 PC、笔记本、手机就像接在同一根网线上一样相互可见,无论它们在地球上哪个角落。端到端加密(底层跑的是 WireGuard,一个现代、轻量又快速的协议),而且您的路由器上零端口开放。

您 您的笔记本 经 Tailscale
您 您的手机 经 Tailscale
机器 Mini-PC linux · agent · ollama
中转 Cloudflare 接收隧道,用 HTTPS 提供您的域名
 访问
外部 公众 your‑app.your‑domain.com
谁在和谁通话:私有走 Tailscale,公开走 Cloudflare。

一张图看懂它怎么工作

每台设备会在一个独立的地址段里拿到一个稳定的 IP(100.x.y.z)。这一组设备就是您的 tailnet,您的个人小网络。当您的笔记本想和迷你 PC 通话时,Tailscale 会在两者之间建立一条直接且加密的连接,自己穿透 NAT。数据永远不会经过 Tailscale 的服务器:它们走点对点。

实际效果:您在火车上敲 ssh ulrich@mini,就跟坐在自家客厅里一样。无需配置路由器,无需暴露任何端口。

搭建,一步一步来

已完成 0 步,共 4 步 勾选记录只保存在此浏览器中。

  1. 创建一个 Tailscale 账号(免费)

    去 tailscale.com 注册。不用想新密码:Tailscale 依托您已有的账号, Google、GitHub 或 Microsoft。正是这个账号定义了谁有权进入您的 tailnet。免费方案(Personal)对个人用途绰绰有余:最多 6 个用户,个人设备数量不限(2026 年 10 月 1 日核实)。

  2. 在迷你 PC 上安装 Tailscale

    在机器上,一行命令就能装好这个服务:

    # 安装 Tailscale 客户端(自动识别您的发行版)
    curl -fsSL https://tailscale.com/install.sh | sh
    # 把机器接入 tailnet
    sudo tailscale up
    

    tailscale up 会显示一个认证链接。在浏览器里打开它(任何设备上都行),用您的账号登录,机器就加入了网络。它现在终身拥有自己的 100.x.y.z 地址。

  3. 在您的笔记本和手机上装应用

    在您的 Mac/PC 和手机上下载 Tailscale 应用(网站会给您合适的安装包),用同一个账号登录。每新增一台设备都会出现在网络里。要从迷你 PC 上查看列表:

    tailscale status   # 列出您所有的设备及其 100.x.y.z 地址
    
  4. 用 MagicDNS 以名字相称

    没人愿意记 100.118.42.7。MagicDNS 给每台设备起一个名字。2022 年底以后创建的 tailnet 默认已开启;如果某个名字没有响应,请到 Tailscale 管理控制台(DNS 标签页)里确认一下。您的 ssh 变得易读:

    ssh ulrich@mini   # 而不是 ssh [email protected]
    

改变生活的彩蛋:Tailscale SSH

这就是那个让人说出”哦,这下真不一样了”的功能。正常情况下,要把 SSH 搞干净,得生成密钥、把它们复制到机器上、管理它们的轮换。有了 Tailscale SSH,是 tailnet 替您处理认证。

# 启用由 tailnet 管理的 SSH,其他设置保持不变
sudo tailscale set --ssh

为什么用 set 而不用 up?tailscale set 只修改您指定的那一项,而 tailscale up 需要您列出全部设置,少了一项就可能报错。

从此,您可以在 tailnet 里的设备之间做 SSH,一把密钥都不用管:Tailscale 已经知道那是您(拥有这两台机器的正是您的账号),身份的事它来负责。方便、神奇,而且一旦您把设备从网络里移除,访问立刻断开。

两个值得了解的附加项(可选)

  • 出口节点(exit node)。 您可以用 sudo tailscale set --advertise-exit-node 让笔记本的全部流量经过您家里的机器。之后需要在管理控制台里批准它,再在客户端选择这台机器作为出口(在 Linux 上,Tailscale 文档还说明了如何开启 IP 转发)。在可疑的公共 Wi-Fi 上很有用:您上网就像在家里一样。
  • 子网路由(subnet routing)。 您可以把家里局域网中其他设备(一台打印机、一个 NAS)暴露给 tailnet,而无需在它们上面安装 Tailscale,只要把这台机器声明为子网路由器即可。完全可选。

实话实说的那一面

Tailscale 是一个第三方协调服务。您的数据保持点对点且加密,它们永远不会经过它,但负责编排谁能联系谁的是它的基础设施(目录、认证、连接的建立)。对几乎所有用途来说,这都是一个绝佳的折中:您在简单性和安全性上收获巨大,代价只是依赖一个靠谱的第三方。

如果您执着于 100% 自托管,那么备选方案叫 Headscale:一个您自己托管的开源协调服务器,兼容 Tailscale 的客户端。工作量更大,控制力更强。如果完全的主权是您的一项标准,把它记在心里某个角落。

常见问题

我的数据会经过 Tailscale 的服务器吗?

不会。您的设备之间是点对点直连,并且端到端加密。Tailscale 的服务器只负责协调:设备目录、身份验证和建立连接。您依靠它来决定谁能连到谁,但您的数据从不经过它的服务器。

用了 Tailscale SSH,还需要加固 SSH 吗?

需要。Tailscale SSH 负责私有网络内设备之间的身份验证,不用管理任何密钥,一旦把某台设备移出网络,它的访问权限就立即失效。但常规的 SSH 安全习惯仍然必不可少:使用可靠的密钥,不用密码,锁定 root 登录。私有网络能缩小攻击面,却不能让它消失。

在 Tailscale 里用机器名连不上怎么办?

机器名来自 MagicDNS,它为网络中的每台设备分配一个名字。2022 年底以后创建的网络默认已开启。如果某个名字没有响应,请到 Tailscale 管理控制台的 DNS 选项卡确认 MagicDNS 已启用。在此期间,机器的 100.x.y.z 地址照样可用。

能用 Tailscale 让所有流量都经过家里的机器吗?

可以,用 sudo tailscale set --advertise-exit-node 把这台机器设为出口节点(exit node)。之后在管理控制台批准它,再在笔记本上选它作为出口。连接来路不明的公共 Wi-Fi 时很有用:您上网就像在家里一样。

有没有不依赖第三方服务的 Tailscale 替代方案?

有。Headscale 是一个开源的协调服务器,由您自己托管,兼容 Tailscale 客户端:工作量更大,掌控也更多。手动配置的 WireGuard 同样能让您完全自主掌控,代价是密钥、IP 和防火墙都要自己管理。另外,很多家用路由器自带 VPN 服务器,例如 Freebox 就内置了 WireGuard/OpenVPN 服务器。

本文涉及的术语: TailscaleSSHLinux编排者开源(对比开放权重)

发现错误?

命令失效了,价格变了?

这些工具每个月都在变。请告诉我这篇文章哪里不对,我会改正并更新日期。

只保留页面、您的留言和选填的联系方式,别无其他。

第 15 / 31 篇 · 第 3 部分 还没有读过任何一篇 打开文章目录