前言¶
在 DeepSeek Harness(DSH)的插件化工作流中,一個運行在工作站上的智能體可能需要使用實驗室服務器的 GPU、運行時和已配置源工作區,同時服務器仍要與公網隔離。直接給智能體一個普通 SSH 終端,會暴露任意主機、命令和文件路徑。dsh-lab-ssh 爲 DeepSeek Harness 和標準 MCP 客戶端提供一組安全受控的 SSH 開發工具。
這是一個獨立社區插件,不是 DeepSeek AI 官方包。Version 0.3.0 是實驗預覽;實驗室部署前應固定經過測試的 DeepSeek Harness 版本。GitHub 倉庫爲 https://github.com/gdgfd22/deepseek-harness-ssh,許可證爲 MIT。
核心能力¶
dsh-lab-ssh 的主要能力包括:
- 固定對模型可見的主機別名,而不是暴露任意 SSH 目標。
- 固定 OpenSSH SHA256 主機密鑰指紋。
- 憑據可以引用環境變量、本地密鑰文件或 SSH Agent。
- 按主機配置命令允許列表、自動批准規則和拒絕規則。
- 限制命令輸出和超時。
- 基於別名的遠程目錄根目錄,並進行規範包含檢查。
- 有界 UTF-8 讀取,以及原子、哈希保護的寫入。
- 支持可選的別名命令工作目錄。
- 提供默認禁用的 HTTPS 工件橋接,面向離線服務器。
- 同一份 JSON 策略可同時用於 DeepSeek Harness 和 Codex MCP。
- 提供 stdio MCP 服務器實現。
不提供¶
該插件不提供:
- 任意主機訪問;
- 交互式 shell;
- 內聯密鑰;
- 無限制文件傳輸;
- 刪除、移動或 chmod 操作;
- 後臺命令;
- 端口轉發;
- 反向隧道;
- SSH agent forwarding。
通用 SOCKS/HTTP 代理、SSH 轉發和反向隧道仍在範圍外,以保留服務器網絡隔離。
安裝與啓用¶
運行環境要求:
- Node.js
^22.19或>=24; - DeepSeek Harness
0.1.0-rc.7或兼容的0.1.xpreview; dsh plugin需要 pnpm 在PATH中。
構建並安裝:
Set-Location <PLUGIN_DIR>
npm install
npm run build
npx -y @deepseek-ai/dsh@0.1.0-rc.7 plugin --profile web add <PLUGIN_DIR>
這一步先在插件目錄安裝依賴並構建,再把本地插件目錄註冊到 web profile。
配置與運行¶
把示例配置複製到倉庫外,替換所有佔位符,然後讓 DSH user patch 指向該文件。例如:
- id: lab-ssh
config:
configFile: C:/Users/<USER>/.dsh/lab-ssh.private.json
如果憑據使用環境變量,需要在啓動 DSH 的同一進程中設置,例如:
$env:LAB_SSH_GPU01_PASSWORD = '<enter locally>'
npx -y @deepseek-ai/dsh@0.1.0-rc.7 web
也可以直接啓動 MCP 服務器:
node <PLUGIN_DIR>/lib/mcp-server.js --config <PRIVATE_CONFIG_PATH>
直接啓動時使用私有配置路徑,不要把真實配置放入倉庫。
工具接口¶
插件提供以下工具:
ssh_list_hosts:列出已配置主機別名。ssh_list_file_roots:列出目錄別名和訪問策略。ssh_list_directory:列出授權根目錄下的條目。ssh_read_file:讀取有界 UTF-8 文本。ssh_write_file:創建或原子替換有界 UTF-8 文本,寫入帶哈希保護。ssh_exec:在固定主機和可選目錄別名上運行允許列表命令。ssh_stage_artifact:暫存單個工件。
工件橋接¶
HTTPS 工件橋接默認禁用,且不是透明代理。它會對重定向做管理員域名允許列表校驗,執行大小限制和強制可信 SHA256,並在受控遠程目錄中創建文件。已有文件不會被替換。
開發驗證¶
在插件目錄中運行:
npm install
npm run typecheck
npm test
npm run build
npm run pack:check
這一步用於類型檢查、測試、構建和打包檢查。
安全注意¶
- 插件會在啓動 DSH 的進程中運行,因此會具有該進程的權限;安裝前檢查源碼、依賴和 MIT 許可證。
- 不要提交或發佈真實 SSH 配置、憑據、日誌、本地 profiles、構建輸出和壓縮包。
- 不要把私有配置文件放在倉庫內。
0.3.0爲實驗預覽;實驗室部署前固定經過測試的 DSH 版本。
小結¶
dsh-lab-ssh 的價值在於把 DSH 或 MCP 客戶端對遠程實驗室服務器的訪問限制爲固定主機、固定路徑、固定命令和可審計工件流程。GitHub 倉庫:https://github.com/gdgfd22/deepseek-harness-ssh。