沙箱與檔案保護 | LanMate 使用手冊
使用奇安信版 LanMate?查看奇安信版使用手冊

沙箱與檔案保護

LanMate 執行命令和寫檔案時,預設跑在受限環境裡:系統級沙箱隔離命令執行,檔案保護限制可寫入範圍。兩層獨立生效,日常使用無需設定。

系統沙箱

沙箱用的是作業系統原生隔離機制,按平台自動選擇:

系統 後端 說明
macOS Seatbelt(sandbox-exec 系統內建,無需安裝
Linux Landlock 優先,bubblewrap 回退 Landlock 核心原生;兩者都不可用時見下方「沙箱不可用時」
Windows 低完整性程序 系統內建,無需安裝
HarmonyOS 系統應用沙箱 作業系統強制執行,固定為僅工作目錄,此設定不可更改

Agent 執行的命令(bash、指令碼、核心程序)都在沙箱內執行,無法越界寫檔案;內建辦公指令碼與連接器程序例外,見「覆蓋範圍」。

檔案保護範圍

設定 → 安全 → 檔案保護,兩檔可選:

檔位 行為
僅工作目錄(預設) 透過系統沙箱限制可寫範圍;寫工作目錄外的檔案時彈窗請求授權,批准後放行
不限制 關閉檔案保護,可寫任意檔案,僅受審批級別約束

「僅工作目錄」下,Agent 可以寫入的範圍:

權限 範圍
讀寫 目前專案工作目錄
讀寫 系統臨時目錄(macOS /tmpTMPDIR;Windows %TEMP%;Linux /tmp
讀寫 目前會話的產物目錄(報告、圖表等中間檔案)
不可寫 上述之外的任何路徑,首次寫入時彈出授權卡片

越界寫入的授權是會話級的:批准一次後,本會話再寫同一路徑不再詢問,新會話重新確認。經常需要寫的目錄(比如固定的輸出資料夾)可以加入常駐可寫目錄(設定 → 安全 → 常駐可寫目錄),加入後所有會話都可直接寫入。

提示:內建辦公指令碼(Word/Excel/PPT/PDF/圖片處理)與連接器程序不走系統沙箱,但讀寫仍受工作目錄與授權規則約束,每次執行都記錄稽核日誌。

沙箱不可用時

Linux 上 Landlock 與 bubblewrap 都不可用(或使用者命名空間被停用)時,LanMate 不會假裝安全:命令以普通權限執行,但三層提示確保你知道現狀——

  1. 啟動時右下角彈出提示
  2. 設定 → 安全 顯示常駐警告與補救指引(如安裝 bubblewrap)
  3. 每個會話第一次執行命令前再確認一次

審批攔截不受影響,仍然生效。重新啟動應用或修復系統配置後可能恢復。

其他安全設定

設定 位置 說明
沙箱內禁止聯網 設定 → 安全 Linux 沙箱內斷網(預設開);核心內裝依賴需要網路時可關
LanMate 依賴項 設定 → 安全 依賴裝到內建執行時(預設開);關閉後安裝走系統環境,指向內建環境的命令會被攔截
刪除移入資源回收筒 設定 → 安全 確認刪除後檔案進資源回收筒而非徹底刪除,可找回
限制管道傳送檔案路徑 設定 → 安全 開啟後藍信等管道會話只允許傳送工作目錄內的檔案,防資料外流

執行策略規則

設定 → 安全 → 執行策略規則,按工具、路徑和命令自訂放行策略:

範例:bash 工具 + 命令包含 git push → 詢問,可以在放行日常操作的同時對推送留一道人工確認。

安全底線:敏感路徑(~/.ssh~/.aws/etc 等)與破壞性命令(如 rm -rf /)始終被拒絕,任何規則都不能覆蓋。

企業稽核

組織開啟後,審批決策與高危工具呼叫會上報企業服務端稽核日誌:命令文字經金鑰脫敏後上報,斷網自動補發。完整本機軌跡保留在 ~/.lanmate/agent/sessions/<會話id>.jsonl,可用於企業取證。

與審批的關係

沙箱管「能碰哪裡」,審批管「要不要問你」。兩者獨立組合——比如「僅工作目錄 + 只讀放行」下,讀檔案直接執行、寫檔案彈窗、寫工作目錄外的檔案先過沙箱授權再過審批。詳見審批與安全