如何透過 Tailscale 安全存取你的 OpenClaw Gateway
要把內網開發的服務暴露到公網,或是想在不同裝置間安全地連回控制台,處理防火牆、SSL 憑證和複雜的 Proxy 設定總是讓人頭大。如果你只是想安全地打開 Gateway 控制面板或連接 WebSocket,手動設定這些流程既耗時又容易出錯。
OpenClaw 內建了 Tailscale 自動化支援,讓你不用手動調整網路規則,就能快速搞定安全連線。
需要準備的東西
Section titled “需要準備的東西”- 已安裝並登入的 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、路由與身份標頭。
1. 僅限內部存取 (Serve)
Section titled “1. 僅限內部存取 (Serve)”這是最推薦的方案。Gateway 保持在 127.0.0.1,只有你 Tailnet 內的裝置可以存取。
在設定檔中加入:
{ gateway: { bind: "loopback", tailscale: { mode: "serve" }, },}或直接使用 CLI 啟動:
openclaw gateway --tailscale serve現在你可以直接打開 https://<magicdns>/ 進入控制面板。
2. 公開存取 (Funnel)
Section titled “2. 公開存取 (Funnel)”如果你需要讓外部網路存取,可以使用 Funnel。為了安全,這模式要求必須設定 password 驗證。
{ gateway: { bind: "loopback", tailscale: { mode: "funnel" }, auth: { mode: "password", password: "你的密碼" }, },}CLI 啟動方式:
openclaw gateway --tailscale funnel --auth password3. 無需密碼的身分驗證
Section titled “3. 無需密碼的身分驗證”當你使用 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 Expert
還是卡住了?
如果這篇文件沒有解決你的情境,直接問 OpenClaw Expert,拿到可執行步驟。