乐于分享
好东西不私藏

别让 OpenClaw 后台裸奔:用 Tailscale 安全访问

别让 OpenClaw 后台裸奔:用 Tailscale 安全访问
不开放公网端口,也不用每次连 SSH。给自己的电脑、手机和 OpenClaw 服务器建一条私有通道。

把 OpenClaw 装到云服务器后,很多人都会遇到一个问题:后台怎么远程打开?

最省事的做法,是直接开放 18789 端口。但这相当于把管理后台的门开在大街上——别人未必能进去,可每天都有人能来试锁。

我推荐的方案是 Tailscale Serve:OpenClaw 继续只允许服务器自己访问,电脑和手机通过一条私有通道进入。

公网直开与 Tailscale 私有访问的对比图

● ● ●

Tailscale 到底是什么

不用研究网络协议。把它想成一个“线上小区”就行。

服务器、电脑和手机都安装 Tailscale,并登录同一个账号,就像拿到了同一套门禁卡。没有门禁卡的设备,连 OpenClaw 后台的大门都看不到。

这对个人特别友好:Tailscale 的 Personal 方案目前是 $0、永久免费,电脑和手机都能装;官方还写着 Unlimited user devices,也就是一个人的设备数量不限。换手机、添电脑,都不用为了设备多而升级套餐(但个人方案最多 6 位用户)。

这正适合 OpenClaw:服务器放一台,自己用电脑和手机随时管理,后台仍然不必暴露到公网。

关键不是给后台再加一个密码,而是先把后台从公网藏起来。

OpenClaw 与 Tailscale Serve 的工作关系

● ● ●

配置只分三步

让服务器加入私有网络

通过 SSH 登录 OpenClaw 服务器,安装 Tailscale:

curl -fsSL https://tailscale.com/install.sh | sh sudo tailscale up

第二条命令会给出一个登录地址。复制到浏览器打开,完成登录。

电脑和手机也安装 Tailscale,并登录同一个账号。它们不需要处于同一个 Wi-Fi,在家里、公司或使用手机流量都可以。

让 OpenClaw 只在本机开放

在服务器执行:

openclaw config set \   gateway.bind loopback  
openclaw config set \   gateway.tailscale.mode serve  
openclaw gateway restart

别被命令吓住。第一条是把 OpenClaw 后台留在服务器内部;第二条是打开 Tailscale 私有入口;第三条让设置生效。

OpenClaw 没有走到公网,Tailscale 只是从私有网络里替你敲门。

三步配置的视觉示意

在电脑或手机上打开

回到服务器,运行:

tailscale serve status

你会看到一个以 .ts.net 结尾的 HTTPS 地址。复制到已经连接 Tailscale 的电脑或手机浏览器中,就能打开后台。

第一次访问时,OpenClaw 仍可能要求认证或设备配对。这很正常:Tailscale 管“谁能走到门口”,OpenClaw 管“进门后谁能当管理员”。

● ● ●

别漏掉最后一次检查

页面能打开,只能证明配置能用。还要确认原来的公网入口没有继续开着。

在服务器执行:

lsof -nP -iTCP:18789 -sTCP:LISTEN

你希望看到:

127.0.0.1:18789

这表示 OpenClaw 只接受服务器本机访问。如果云服务器安全组曾经对公网开放 18789,确认 Tailscale 能用后,把那条规则关掉。

配置完成后的安全检查

● ● ●

三个容易踩的坑

  • 用 Serve,不要用 Funnel。
     Serve 只在私有网络中开放;Funnel 会把服务发布到公网。
  • 不要关闭 OpenClaw 自己的认证。
     Tailscale 是小区门禁,OpenClaw 的 token 或密码是家门锁,两层都要留着。
  • Docker 部署别硬抄。
     如果 OpenClaw 跑在容器里,还涉及 host network 和 Tailscale socket,普通三行配置可能不适用。

说到底,这套方案不是把 OpenClaw 变复杂,而是换一种开门方式:后台不朝公网开,自己的设备从私有通道进去。

结论:门可以远程开,但钥匙不能挂在门外。