跳到內容

如何透過 Tailscale 安全存取你的 OpenClaw Gateway

要把內網開發的服務暴露到公網,或是想在不同裝置間安全地連回控制台,處理防火牆、SSL 憑證和複雜的 Proxy 設定總是讓人頭大。如果你只是想安全地打開 Gateway 控制面板或連接 WebSocket,手動設定這些流程既耗時又容易出錯。

OpenClaw 內建了 Tailscale 自動化支援,讓你不用手動調整網路規則,就能快速搞定安全連線。

  • 已安裝並登入的 Tailscale CLI
  • 已啟用 HTTPS 功能的 Tailnet(Serve 模式必備)
  • 若要使用 Funnel:Tailscale v1.38.3+、MagicDNS、已啟用 HTTPS 且具備 funnel node 屬性
  • macOS 使用者若要使用 Funnel,需使用開源版本的 Tailscale 應用程式

OpenClaw 可以自動幫你設定 Tailscale Serve(僅限 Tailnet 內部)或 Funnel(對外公開)。這能讓 Gateway 保持綁定在 loopback,同時由 Tailscale 提供 HTTPS、路由與身份標頭。

這是最推薦的方案。Gateway 保持在 127.0.0.1,只有你 Tailnet 內的裝置可以存取。

在設定檔中加入:

{
gateway: {
bind: "loopback",
tailscale: { mode: "serve" },
},
}

或直接使用 CLI 啟動:

Terminal window
openclaw gateway --tailscale serve

現在你可以直接打開 https://<magicdns>/ 進入控制面板。

如果你需要讓外部網路存取,可以使用 Funnel。為了安全,這模式要求必須設定 password 驗證。

{
gateway: {
bind: "loopback",
tailscale: { mode: "funnel" },
auth: { mode: "password", password: "你的密碼" },
},
}

CLI 啟動方式:

Terminal window
openclaw gateway --tailscale funnel --auth password

當你使用 serve 模式且 gateway.auth.allowTailscale 設為 true 時,OpenClaw 會檢查 Tailscale 提供的身份標頭(tailscale-user-login)。它會透過本地 Tailscale daemon 的 tailscale whois 驗證請求來源,讓你不用輸入 token 或密碼就能直接登入。

  • Funnel 拒絕啟動:請檢查你的 auth.mode。為了避免將服務無防護地暴露在公網,使用 Funnel 時必須搭配 password 模式。
  • 無法從 127.0.0.1 連線:如果你將 gateway.bind 設定為 "tailnet",Gateway 會直接監聽 Tailnet IP,這會導致 loopback(127.0.0.1)無法連線。
  • macOS 上的 Funnel 問題:請確認你使用的是開源版本的 Tailscale,而非 App Store 版本,否則 Funnel 可能無法正常運作。
  • Funnel 埠號限制:請注意 Funnel 僅支援 TLS 模式下的 443、8443 與 10000 埠。

如果你在設定過程遇到困難,可以諮詢 AI Setup Assistant 獲取即時幫助。

OpenClaw

OpenClaw Expert

還是卡住了?

如果這篇文件沒有解決你的情境,直接問 OpenClaw Expert,拿到可執行步驟。