dsh-lab-ssh:DeepSeek Harness 的安全受控 SSH 開發工具

前言

在 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.x preview;
  • 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

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜