在租用的加拿大 M4 遠端 Mac 上跑 OpenClaw,核心問題常不是「裝不裝得上」,而是本機 CLI/選單列 App 要怎麼穩定碰到 Gateway:SSH 隧道把遠端 127.0.0.1:18789 轉到你筆電的迴路,或直連/遠端閘道把服務綁到可路由介面並用 gateway.remote.token 等設定收斂鑑權。兩條路線決定暴露面、金鑰輪替成本與 launchd 無人值守行為。以下整理選型要點、Token 與連接埠、PATH/launchd 分步,以及排障對照。安裝與 onboard 總覽可先看:OpenClaw 2026 在遠端 Mac 上跑穩:安裝指令稿與 onboard、Gateway 18789/Token/LaunchDaemon、日誌對照與加拿大 M4 的 7×24 場景。
選型:SSH 隧道與直連閘道怎麼取捨
SSH 本地轉發(-L)適合單人、從固定工作站操作:遠端 Gateway 維持只聽 127.0.0.1,對外公網不開 18789,邊界風險最低;缺點是隧道斷線時本機工具會瞬間 ECONNREFUSED,需配合 autossh 或常駐工作階段。直連或遠端 URL適合多裝置、CI 或行動辦公:客戶端改指到可解析的主機名與連接埠,並以 Bearer Token(常對應設定鍵 gateway.remote.token 或環境變數注入)保護;務必加防火牆來源限制、mTLS 或反向代理,避免裸奔。
ssh -N -L 18789:127.0.0.1:18789 [email protected]
若 openclaw onboard 已選「遠端閘道」模式,請確認客戶端設定裡的 base URL 與 Token 與伺服器一致;細節與守護程序規劃可延伸:OpenClaw 2026 遠端 Mac 安裝部署與排障:openclaw onboard、Gateway 守護程序與加拿大 M4 中高配資源規劃實戰。
gateway.remote.token 與 18789 連接埠
預設 Gateway 常監聽 127.0.0.1:18789;客戶端請求需帶 onboard 流程下發的 Token。設定檔或環境中若出現 gateway.remote.token,語意通常是「連到遠端閘道時使用的鑑權字串」,應與伺服器端輪替同步,並避免寫進版本庫。暫時關閉鑑權僅限實驗室單租戶。變更連接埠時,須同步 SSH -L 本機埠、plist 的 Sockets/程式參數,以及客戶端 URL,否則會出現連得上埠但 401 或路由錯誤。
0.0.0.0 監聽。
PATH 與 launchd 分步設定
① 以互動式 shell 確認 which openclaw 與 node -v 與 plist 一致;GUI 登入與 launchd 的 PATH 常不同,建議在 plist 的 EnvironmentVariables 明寫 PATH(含 Homebrew 前綴)。② 使用 openclaw onboard --install-daemon 產生 LaunchAgent/LaunchDaemon 後,用 launchctl print gui/$UID/ai.openclaw.gateway(實際 label 依文件)檢查狀態。③ 修改 plist 後執行 launchctl bootout 再 bootstrap,避免舊程序占用 18789。④ 以 curl -sS -H "Authorization: Bearer $TOKEN" http://127.0.0.1:18789/... 在遠端本機探測,再在客戶端重複(隧道模式下改指本機)。
排障對照(症狀 → 檢查 → 處置)
下表可貼進團隊 wiki,與 Gateway 標準輸出、openclaw doctor 關鍵字交叉搜尋。
| 症狀/日誌 | 可能原因 | 建議處置 |
|---|---|---|
本機 ECONNREFUSED 127.0.0.1:18789 |
隧道未建立或遠端閘道未啟 | 確認 SSH -L;遠端 lsof -i :18789;launchd 是否已載入 |
401/invalid token |
gateway.remote.token 過期或標頭錯誤 |
重新 onboard;比對客戶端與伺服器設定;清代理快取 |
EADDRINUSE 與 18789 |
舊程序或第二個 Gateway 搶埠 | lsof 找出 PID;bootout 後再啟;必要時改埠並全鏈路同步 |
launchd 日誌顯示 openclaw: command not found |
守護程序 PATH 缺少 CLI | 在 plist 補 PATH;或用絕對路徑呼叫 openclaw |
| 隧道在、但客戶端仍連舊主機 | 快取 URL/環境變數殘留 | 重開終端機;檢查 shell rc 與 CI 密鑰;對齊 HTTPS_PROXY |
127.0.0.1:18789;多客戶端再評估直連並嚴格管 Token。PATH 與 launchd 寫清楚,比反覆「重開 SSH 就好了」更能扛加拿大區 7×24。