dsh-secure-remote:DeepSeek Harness SSH 安全与稳定性插件

在 DeepSeek Harness 的插件化架构中,SSH 连接是远程协作的基础。原生的 ssh provider 在 macOS 环境下常因 ControlPath 路径过长而失败,且缺乏文件操作的安全边界。dsh-secure-remote 是一个独立的插件,它通过 bundle patch 的方式替换内置 provider,不涉及上游源码修改,也不需要迁移现有的 ssh_workspace v1 数据。该插件由 startGalway 维护,遵循 MIT 许可证。

核心功能

  • 连接稳定性修复

    • macOS / Linux:使用短路径的私有目录运行 OpenSSH ControlMaster,解决 macOS 因 ControlPath too long 导致的 PTY 启动失败问题。
    • Windows:本地端使用系统 ssh.exe,明确关闭 ControlMaster,但状态探测和应用层重连功能仍可用。
  • 认证与凭证管理

    • Key 模式:自动发现 SSH Config 主机和默认密钥,支持选择单个密钥文件或密钥文件夹。
    • Password 模式:只显示 Host / Port / User / Password;密码通过 DSH credentials 服务保存,不进入 SSH 参数、日志或状态接口。
  • 工作区状态与安全

    • 状态显示:Workspace 行显示 connected、connecting、degraded、disconnected 状态,以及延迟和脱敏原因。
    • 安全边界:远程文件工具严格限制在 Workspace 根目录,拒绝 ..、前缀碰撞和符号链接逃逸。
    • 严格校验:默认保持 StrictHostKeyChecking=yes,不自动降级。
    • 远程限制:远端必须是 POSIX 系统;检测到 Windows 等非 POSIX 目标时返回 REMOTE_OS_UNSUPPORTED。
  • 兼容性

    • 保留官方 openRawChannel 原始 SSH 通道,兼容 Remote Agent 安装和长连接。
    • 保留 SshProfile、RemoteWorkspaceView、Workspace RPC、Session、Bash 和 Terminal 兼容性。

安装与启用

安装该插件需要 DeepSeek Harness Web profile 环境,并确保 Node.js 版本为 22 或以上。

安装指定版本:

dsh plugin --profile web add github:startGalway/dsh-secure-remote#v1.1.2

本地开发安装:

dsh plugin --profile web add file:/absolute/path/to/dsh-secure-remote

安装完成后重启 Web profile。卸载插件不会迁移或删除已有的远程 Workspace。

配置项

插件使用以下默认配置:

workspaceBoundary: deny
connectionReuse: true
controlPersistMs: 300000
serverAliveIntervalSec: 15
serverAliveCountMax: 3
statusProbeIntervalMs: 30000
maxTransferBytes: 8388608

已知限制

  • Bash 行为:Bash 不受 Workspace 文件边界限制,拥有远程 SSH 账号本身的完整权限。
  • 远程 Windows:当前不支持连接到 Windows 远端目标。
  • 功能范围:当前版本不包含双向目录镜像、原子文件传输、后台任务和远程 Git 工作流。
  • Runtime:Unix 侧保留一个 0700 权限的短路径兼容启动器;Windows 直接调用系统 ssh.exe。

适用场景

该插件适合需要稳定 SSH 连接、注重凭证安全存储以及需要严格文件边界控制的开发场景。由于插件以 DSH 进程权限运行,安装前建议检查源码与许可证。

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

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

小夜