dsh-lab-ssh
dsh-lab-ssh
Inglés | 简体中文
Herramientas de desarrollo SSH con control de seguridad para DeepSeek Harness y clientes MCP estándar.
El plugin permite que un agente que se ejecuta en una estación de trabajo conectada utilice la GPU, el runtime y el espacio de trabajo fuente configurado explícitamente de un servidor de laboratorio, mientras el servidor permanece aislado de Internet pública.
La versión 0.3.0 es una vista previa experimental. Fija una versión probada de DeepSeek Harness antes del despliegue en laboratorio.
Este es un plugin comunitario independiente y no es un paquete oficial de DeepSeek AI.
Por qué existe
Dar a un agente una terminal SSH normal expone destinos, comandos y rutas del sistema de archivos arbitrarios. Este proyecto inserta una capa de políticas que deniega por defecto:
alias de host fijos visibles para el modelo;
huellas digitales de clave de host SHA256 de OpenSSH fijadas;
referencias de credenciales mediante variables de entorno, archivos de clave locales o SSH Agent;
listas blancas de comandos por host, reglas de aprobación automática y reglas de denegación;
salida de comandos limitada y tiempos de espera;
raíces de directorios remotos basadas en alias con comprobaciones canónicas de contención;
lecturas UTF-8 limitadas y escrituras atómicas protegidas por hash;
directorios de trabajo de comando opcionales basados en alias;
un puente de artefactos HTTPS deshabilitado por defecto para servidores sin conexión;
una única política JSON compartida por DeepSeek Harness y Codex MCP.
El plugin no expone hosts arbitrarios, shells interactivos, secretos incrustados, transferencia de archivos sin restricciones, operaciones de borrado/movimiento/chmod, comandos en segundo plano, reenvío de puertos, túneles inversos ni reenvío de agente.
Estado
El plugin de DeepSeek Harness, el servidor MCP stdio, la política de comandos, el acceso SFTP restringido, los alias de directorio de trabajo y la primera capa del puente de artefactos están implementados. La suite de pruebas contiene 25 pruebas en 9 archivos y nunca contacta con infraestructura real de laboratorio ni con Internet pública.
Las sesiones de credenciales visuales de corta duración, la auditoría persistente, las políticas basadas en roles, la sincronización de directorios, el cierre de dependencias, el almacenamiento en caché y la transferencia reanudable son trabajo futuro.
Inicio rápido
Requisitos:
Node.js
^22.19o>=24;DeepSeek Harness
0.1.0-rc.7o una vista previa compatible0.1.x;pnpm en
PATHparadsh plugin.
Compilar e instalar:
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>Copia la configuración de ejemplo fuera del repositorio, reemplaza cada marcador de posición y apunta el parche de usuario de DSH hacia ella:
- id: lab-ssh
config:
configFile: C:/Users/<USER>/.dsh/lab-ssh.private.jsonEstablece las variables de entorno de credenciales en el mismo proceso que inicia DSH:
$env:LAB_SSH_GPU01_PASSWORD = '<enter locally>'
npx -y @deepseek-ai/dsh@0.1.0-rc.7 webConsulta la guía de operador en chino y el inicio rápido en chino para la configuración, la política de aprobación, el almacenamiento provisional de artefactos sin conexión y la resolución de problemas.
Herramientas
ssh_list_hosts: enumera los alias de host configurados y redactados.ssh_list_file_roots: enumera los alias de directorio y la política de acceso.ssh_list_directory: enumera las entradas limitadas dentro de una raíz autorizada.ssh_read_file: lee texto UTF-8 limitado y devuelve su SHA256.ssh_write_file: crea o reemplaza atómicamente texto UTF-8 limitado.ssh_exec: ejecuta un comando permitido en un host fijo y un alias de directorio opcional.ssh_stage_artifact: descarga, verificación y carga atómica de un artefacto sujetas a aprobación.
Servidores sin conexión
El puente de artefactos no es un proxy transparente. La estación de trabajo acepta una URL HTTPS sin credenciales ni tokens de consulta, valida cada redirección contra una lista blanca de dominios del administrador, aplica un límite de tamaño y un SHA256 de confianza obligatorio, y luego crea atómicamente el archivo dentro de una raíz remota explícitamente habilitada para artefactos. Los archivos existentes no se reemplazan.
El proxy genérico SOCKS/HTTP, el reenvío SSH y los túneles inversos siguen fuera del alcance para preservar el aislamiento de red del servidor.
Codex MCP
El repositorio contiene el vacío seguro config/lab-ssh.empty.json y el .codex/config.toml a nivel de proyecto. Compila el paquete y recarga Codex en un proyecto de confianza para descubrir el servidor MCP. Para un despliegue real, apunta una configuración privada de Codex a un archivo JSON fuera del repositorio.
El servidor también puede iniciarse directamente:
node <PLUGIN_DIR>/lib/mcp-server.js --config <PRIVATE_CONFIG_PATH>Desarrollo y verificación
npm install
npm run typecheck
npm test
npm run build
npm run pack:checkEn Windows, ejecuta una prueba de aceptación en entorno limpio que reclona el repositorio público en el directorio temporal del sistema y no reutiliza ni las dependencias actuales, ni el resultado de compilación, ni el perfil de DSH, ni la configuración SSH privada:
powershell -ExecutionPolicy Bypass -File scripts/clean-room-test.ps1Ejecuta npm ci, comprobación de tipos, pruebas, compilación, inspección del paquete, instalación del plugin en un perfil aislado y una prueba de humo HTTP de DSH Web con hosts: []. El puerto 3180 se utiliza por defecto y el entorno temporal se elimina después.
Revisa SECURITY.md antes de publicar. La configuración SSH real, las credenciales, los registros, los perfiles locales, el resultado de compilación y los archivos no deben confirmarse ni incluirse en una versión.
Licencia
MIT
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
An MCP server for Arcjet - the runtime security platform that ships with your AI code.
Security scanner for MCP servers. Detect vulnerabilities, prompt injection, and tool poisoning.
An MCP server for deep research or task groups
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/gdgfd22/deepseek-harness-ssh'
If you have feedback or need assistance with the MCP directory API, please join our Discord server