剪藏#剪藏#聪明的小明

不想用 Tailscale 官方服务器?Docker 一行命令自建你的私有组网!

2026 年 7 月 16 日1 分钟
分享Twitter / XTelegram微博
不想用 Tailscale 官方服务器?Docker 一行命令自建你的私有组网! 封面

你有没有遇到过这种情况:家里 NAS、办公室电脑、出差用的笔记本,想随时连到一起传文件、远程桌面,但又不想把数据经过第三方的服务器?

以前你可能听说过 Tailscale——一个超方便的组网工具,几行命令就能把分散各地的设备组成虚拟局域网。但它有个小问题:所有流量都要经过 Tailscale 官方的中继服务器,虽然加密了,但总归不是完全自控。

今天推荐的这个工具,就是来解决这个问题的:Headscale。它完全兼容 Tailscale 客户端,但控制服务器跑在你自己的机器上,数据全程自控,免费开源,Docker 一行命令搞定。

什么是 Headscale?

Headscale 是一个开源的、自托管的 Tailscale 控制平面实现。简单来说,Tailscale 是客户端+服务端架构,Headscale 只实现服务端部分,然后你继续用 Tailscale 的客户端去连接它。

这意味着什么?意味着你可以享受 Tailscale 的零配置组网体验,但整个控制链完全掌握在自己手里。没有第三方,没有付费墙,没有数据出境。

项目地址:https://github.com/juanfont/headscale[1]

GitHub Star 数超过 15k,社区活跃,Docker 镜像维护良好。

为什么值得用?

先说几个核心痛点:

数据主权。 你的组网拓扑、设备信息、密钥管理,全部存在你自己的服务器上。对于有合规要求的企业、重视隐私的个人来说,这是刚需。

免费无限。 Tailscale 个人版虽然免费但有 200 人上限,企业版要付费。Headscale 完全免费,设备数量无限制,想加多少台就加多少台。

内网穿透利器。 配合 Tailscale 客户端的 DERP 中继,即使你的设备都在 NAT 后面,也能自动打洞建立直连。延迟低、速度取决于你的带宽。

兼容生态。 因为兼容 Tailscale 的注册协议,所有 Tailscale 客户端(Windows、macOS、Linux、iOS、Android)都能直接用,不需要额外适配。

再说说它能做什么:

  • 🌐 跨地域组建虚拟局域网

  • 🔗 设备间 SSH、文件传输、远程桌面

  • 📦 配合 Docker 做服务发现

  • 🛡️ 基于 ACL 的设备访问控制

  • 📊 设备管理和状态监控

部署指南

准备工作很简单——一台能跑 Docker 的机器就行,VPS、NAS、树莓派都可以。

第一步:创建配置文件

JAVASCRIPT
server_urlhttp://localhost:8080

listen_addr0.0.0.0:8080

metrics_listen_addr0.0.0.0:9090

grpc_listen_addr0.0.0.0:50443

grpc_max_msg_size1048576

privacy_policy_url""

headscale_urlhttp://your-server-ip:8080

derp:
  server:
    enabledtrue
    region_id999
    region_code"custom"
    region_name"Custom DERP"
    stun_listen_addr"0.0.0.0:3478"

acme_urls: []

tls_letsencrypt_cache_dir/var/lib/headscale/cache

tls_letsencrypt_challenge_type: ["HTTP-01"]

tls_cert_path""
tls_key_path""

log:
  format: text
  level: info

database:
  type: sqlite

  sqlite:
    db_file/var/lib/headscale/db.sqlite

  postgres:
    host: localhost
    port5432
    name: headscale
    user: headscale
    sslfalse

  metrics_enabledtrue
  metrics_port9090

acl:
  auto_create_rulestrue

# 可选:OAuth 登录
oidc:
  issuer""
  client_id""
  client_secret""
  scope: ["openid""profile""email"]
  allowed_domains: []
  allowed_users: []

# 可选:TLS 证书
tls_letsencrypt_hostname""

把上面的内容保存为 config.yaml,修改 headscale_url 为你实际的服务器地址和端口。

如果你只是想快速体验,SQLite 版本就够了,不需要额外数据库。

第二步:Docker Compose 一键启动

创建 docker-compose.yml

JAVASCRIPT
version'3'

services:
  headscale:
    image: headscale/headscale:latest
    container_name: headscale
    restart: unless-stopped
    command: headscale serve
    volumes:
      - ./headscale/config:/etc/headscale
      - ./headscale/data:/var/lib/headscale
    ports:
      - "8080:8080"   # HTTP API
      - "50443:50443" # gRPC (Tailscale 协议)
      - "3478:3478"   # STUN (DERP 中继)

  headscale-ui:
    image: ghcr.io/gurucomputing/headscale-ui:latest
    container_name: headscale-ui
    restart: unless-stopped
    ports:
      - "9090:8080"
    depends_on:
      - headscale

启动:

JAVASCRIPT
docker compose up -d

就这么简单。两个容器:一个是 headscale 服务端,一个是 Web 管理界面(可选)。

第三步:连接客户端

在任意设备上安装 Tailscale 客户端后,执行:

JAVASCRIPT
tailscale up --login-server=http://your-server-ip:8080

首次运行会返回一个 URL,复制到浏览器打开,你会看到 headscale 的管理面板。管理员需要先在 headscale 上创建用户:

JAVASCRIPT
docker exec headscale headscale users create yourname

然后用 headscale nodes list 查看已连接的设备。

第四步:验证连通性

连接两台设备后,直接 ping 对方的 Tailnet IP 即可测试:

JAVASCRIPT
ping 100.x.x.x

跨地域、跨防火墙、无需端口转发——组网完成。

效果对比

Tailscale 官方 个人免费,企业付费 ❌ 第三方服务器 个人 200 人 极低
ZeroTier 免费 ❌ 第三方 免费 50 节点 低
Headscale 完全免费 ✅ 完全自控 无限制

对于个人用户和小型团队,Headscale 几乎是零成本的完美替代方案。

常见问题

Q: 需要公网 IP 吗? A: 不需要。headscale 的 gRPC 端口(50443)只需要能被客户端访问到即可。如果在内网,配合 cloudflared 或 frp 做反向代理就行。

Q: 性能怎么样? A: 官方 DERP 中继性能一般,建议自建 DERP 服务器。headscale 本身资源占用很低,单核 512MB 内存就能跑。

Q: 支持 IPv6 吗? A: 支持。Tailscale 原生支持 IPv6,headscale 作为控制平面自然继承了这个能力。

Q: 从 Tailscale 迁移过来麻烦吗? A: 不麻烦。在 headscale 上创建用户并生成新的 key,客户端重新 tailscale up --login-server=... 即可。旧设备下线就行。

Q: 生产环境用什么数据库? A: SQLite 适合个人和小团队。如果需要多实例部署,可以切换到 PostgreSQL,只需改 config.yaml 中的 database 配置。

总结

Headscale 最大的价值在于——把组网的控制权还给自己

它不需要你懂复杂的网络知识,不需要买昂贵的 VPN 服务,也不需要忍受第三方平台的限制。Docker 一行命令部署,Tailscale 客户端连接,剩下的就是享受跨设备无缝互联的快感。

特别适合这些场景:

  • 🏠 家庭实验室玩家,多台设备需要互通

  • 💼 小团队远程办公,需要安全的内网访问

  • 🌍 跨境业务,需要稳定可靠的组网方案

  • 🔒 对数据隐私有严格要求的用户

行动建议: 如果你有 VPS 或者闲置的服务器,花 5 分钟部署一个 headscale,体验一下完全自控的组网感觉。哪怕只是用来临时传个文件,也比翻墙用第三方工具来得踏实。

👇 互动时间:你平时用什么方案做多设备互联?评论区聊聊你的组网故事~ 如果觉得有用,别忘了点赞收藏,下次搭建的时候直接照着来!

引用链接

[1]https://github.com/juanfont/headscale

原文地址: https://mp.weixin.qq.com/s?__biz=MzcwNzMyMjM1Nw==&mid=2247484677&idx=1&sn=c5450608fc51a300034078df1a78783b&chksm=f5c206d4c4b96f46286c4702bb2898b0cc6a664b1e396c6ba05b0db9ac45af74031b16d15988&mpshare=1&scene=1&srcid=0716ByJ4P7fx6v5UrB0VOmzE&sharer_shareinfo=b97223e72d0dfc0149a3a2f006a028e7&sharer_shareinfo_first=b97223e72d0dfc0149a3a2f006a028e7#rd

相关文章