AI 自動化 2026年3月31日

2026 實戰手冊:雲端 Mac mini M4 上 OpenClaw 金鑰、環境變數與 macOS 鑰匙圈

NodeMac Team

安全實踐編輯

OpenClaw 閘道從環境變數讀取模型 API 金鑰、Webhook 簽章金鑰與頻道權杖——可一旦涉及 launchd,macOS 裡的「環境」就不再單一。本 2026 手冊對比鑰匙圈儲存與 dotenv 檔案,說明如何把金鑰接入 LaunchAgent 而不外洩到互動 shell,並給出輪換步驟,讓無頭雲端 Mac mini M4 合規運作,又不必把憑證貼進團隊聊天。

請與 OpenClaw macOS 安裝與部署 搭配閱讀以完成首次引導。排查遠端存取時,可對照 SSH 隧道遠端管理,避免為複製權杖而隨意放寬綁定位址。日常衛生請對齊 維運手冊:日誌、升級與回滾,使金鑰輪換與二進位升級落在同一套變更紀錄裡。

儲存方式對比

機制 優勢 劣勢
macOS 鑰匙圈 作業系統保護的 ACL;預設非全域可讀 無頭首次授權需一次性 GUI 或規範的 security 命令列
磁碟上的 .env 本機迭代最快 備份工具常整目錄拷貝使用者主目錄——易成外洩面
Plist EnvironmentVariables 原生 launchd;可在 IaC 中重現 靜息仍為明文——plist 權限限制為 600

金鑰類型路由表

金鑰類型 建議儲存 輪換節奏
大型語言模型提供商 API 金鑰 鑰匙圈或保管庫代理 → 行程啟動時注入環境 60~90 天或員工離職時
Webhook HMAC 金鑰 每頻道獨立鑰匙圈項 90 天;切換期雙金鑰並行
非敏感開關 Plist 或可進 Git 的 JSON 設定 隨應用版本發布

切勿:把生產金鑰貼進 Slack、郵件或錄影。一旦發生,立即輪換——即便訊息「僅私訊」也應假定金鑰已外洩。

八步可重複的金鑰引導

  1. 建立服務使用者:專用於閘道的非管理員帳戶;主目錄權限 700
  2. 帶外產生金鑰:用保管庫介面或雲端主控台;避免 echo 進 shell 歷史。
  3. 寫入鑰匙圈:一密一項,描述性標籤,存取控制僅允許閘道二進位。
  4. 包裝啟動命令:小型 shell 透過 security find-generic-password -w 從鑰匙圈匯出變數再 exec OpenClaw——紀錄 stderr,不紀錄明文。
  5. 在 LaunchAgent 引用包裝器:ProgramArguments 指向包裝指令稿;plist 內不放明文金鑰。
  6. 乾跑驗證:啟動閘道、確認健康端點,若遷移則在提供商側撤銷舊金鑰。
  7. 文件化輪換:工單範本列出依賴頻道與 ≤ 30 分鐘回滾視窗。
  8. 季度稽核:在鑰匙圈路徑之外全碟檢索誤放的 sk-ANTHROPIC 字串。

團隊真正落地的數值護欄

選定三個數字寫進內部 README,並在程式碼審查強制執行:磁碟上明文金鑰檔數量上限(生產為 0)、任意長期權杖最大壽命(預設 90 天)、閘道帳戶 sudo 人數上限(具名 2 人)。承包商需要存取時,把 SSH 金鑰限時綁定到維護視窗,而不是永久放寬鑰匙圈 ACL。

  • Plist 權限:凡含金鑰路徑的 plist 皆 chmod 600——即便密文實際在鑰匙圈裡。
  • 包裝器逾時:鑰匙圈查詢應在 2 秒內完成;更久往往表示無頭機上阻塞 UI 彈窗——可短時 VNC 一次後複測。
  • 金鑰最大年齡:超過 180 天未輪換的項,在下一迭代規劃強制開單。

稽核日誌不列印金鑰本體

合規評審問的是「誰碰了金鑰」而非「金鑰是什麼」。設定閘道日誌輸出憑證來源的雜湊指紋(鑰匙圈項 UUID、保管庫路徑或輪換批次 ID),而非字面權杖。OpenClaw 報錯時,對可能回顯上游 API 金鑰的查詢參數做脫敏;不少 HTTP 用戶端會不小心紀錄完整 URL。若在 SOC 類控制下營運,熱儲存至少保留 30 天、冷儲存 1 年。SSH 工作階段錄影僅用於應急帳戶;日常工程存取應依賴已審查的設定變更,而非現場貼上金鑰。

若 dev/stage/prod 各跑獨立閘道,為每環境劃分獨立鑰匙圈分區,切勿在主機間複製 ~/Library/Keychains 目錄——macOS 可能判損壞或在無頭節點 endless 彈窗。應逐項在新環境引導並在內網文件紀錄條目名,便於值班用 security find-generic-password -a service -s LABEL 驗證存在性而不暴露位元組。

租用雲 Mac 上無頭 macOS 的坑

雲端 Mac 鮮有人在桌邊點「永遠允許」。首次鑰匙圈授權請透過 VNC 完成,日常再用 SSH 改設定。若多名工程師共用同一帳戶,ACL 邊界模糊——應依環境拆分閘道而非共享憑證。偵錯時需要人類可讀環境變數,可用登出即刪的 ramdisk 檔案,避免使用部分映像上重啟後仍存在的 /tmp

NodeMac 在香港、日本、韓國、新加坡與美國出租專用 Mac mini M4,同時提供 SSH 與 VNC——自動化走 SSH,TCC 彈窗走 VNC。把生產金鑰隔離到與預發實驗不同的主機時,可對照 區域定價 評估爆炸半徑成本。在把保管庫驅動的部署自動化到整隊機器前,請先閱讀 說明文件 完成 SSH 金鑰接入。

常見問題

金鑰應與 LaunchAgent plist 放在同一 Git 儲存庫嗎?

Plist 結構與結構化的非敏感鍵可以進版本庫;敏感值永不——由連線保管庫 API 的 CI 部署工作在安裝時注入。

如何避免輪換金鑰時 API 用量被雙重計費?

在提供商主控台並行新增新舊金鑰,部署帶新鑰匙圈項的閘道同時保持舊金鑰有效,觀察 24 小時健康流量後再撤銷舊金鑰。可避免午夜切換因包裝指令稿一處筆誤而半途失敗。

Mac mini M4 是 OpenClaw 處理金鑰的扎實平台:Apple Silicon 適合高效常駐守護行程,原生鑰匙圈與服務身分結合,物理隔離減少虛擬化側通道問卷裡的雜音。NodeMac 在香港、日本、韓國、新加坡與美國提供帶 SSH/VNC 的專用 Mac mini,讓閘道跑在可預期的裸金屬上。按需租用使安全團隊可在每區域複製強化「金鑰參考機」而無需一次性買滿五機櫃 Mac。

建議把閘道行程使用者與日常登入使用者分離,並在變更審查中明確檢查「誰可以讀取 plist、誰可以 sudo 到服務帳戶」。將金鑰項命名規範寫進維運手冊(例如依環境與提供商前綴),可在事故時快速判斷缺的是哪一類憑證,而不用全庫匯出比對。

依區域隔離 OpenClaw 閘道

港·日·韓·新·美專用 M4——生產與預發金鑰分離,無需共享筆電。

NM
NodeMac Cloud Mac
5 分鐘部署

在雲端租用專用的 Apple Silicon Mac。SSH/VNC 存取,港·日·韓·新·美節點。

立即開始