在阿里云 ECS 上把 DSH 接进 MCP 管理控制台:出网、安全组与备份

简介: dsh-mcp-panel 是 DeepSeek Harness 官方 MCP 管理控制台,轻量易装但部署关键在出网配置:需配安全组出向、NAT/SNAT、内网地址或 ssh 端口转发,并确保系统盘余量与 Node 版本(≥22.19.0)达标。

dsh-mcp-panel 是官方 DeepSeek Harness MCP 客户端之上的管理控制台,README 里的装法只有一行命令。但把它真正跑在阿里云 ECS 上时,卡住大多数人的不是那行命令,而是三件平时不显眼的事:出不出得去网、安全组放没放通出向、profile 备份落在哪块盘上。站内对它的网络提示很直白——「该插件运行需访问外部网络 / 远程 API,部署在国内无外网环境时可能无法正常使用」。想先看它在清单里的位置,可打开 DeepSeek Harness Hub 插件清单。

事实对齐:插件由 PerryLink 维护,Apache-2.0,Star 66,周下载 1,575,Node 引擎要求 ^22.19.0 || >=24.0.0,兼容基线 dsh-v0.1.7-rc.2(已验证 2026-09-25);站内信任档位是仅索引,未做真实安装。动手前先确认三件事:能出网、DNS 可达、Node 版本达标。

第一步:给安全组加一条出向规则

默认出向规则通常是「允许所有」,但团队做安全加固时往往会收紧成白名单,这时要显式加回来。原则是插件要连谁,就放通到谁的目标端口与域名:给实例所属安全组加一条 egress 规则,协议按目标服务器而定(Streamable HTTP 一般是 TCP 443 或你自建服务的端口),授权对象填域名或 IP 段,别写 0.0.0.0/0;自建服务填 VPC 内网地址或对端公网 IP。探测是完整往返,出向比入向更关键。

第二步:没有公网 EIP 时,用 NAT 网关加 SNAT 出网

不少生产实例不绑公网 EIP,只放私网 IP。这种配置下前面的出向规则配了也没用——包根本出不了 VPC。做法是:给实例所在交换机绑一张 NAT 网关,加 SNAT 规则把源网段指向实例私网网段,再确认路由表已把默认路由指向 NAT 网关。验证用 curl -sS -o /dev/null -w '%{http_code}\n' https://dpharness.com/plugin/PerryLink/dsh-mcp-panel:能拿到状态码说明 SNAT 与 DNS 都正常。

第三步:装插件并验证服务器行

第二条确认 profile 里多了 mcp-panel 这一行。随后重启 DSH,打开「设置 → 插件 → MCP」选项卡或跑 /mcp。/mcp 里没有服务器不是安装失败,而是你还没添加服务器行——桥接仍是 @deepseek-ai/dsh-mcp-client,每个服务器都得占一行配置。

第四步:用 ssh -L 把远端 MCP 端口映射到本机

MCP 服务跑在远端、端口不对外开放时,不必改安全组入向规则,本地端口转发更干净:

它把本机 8080 映射到 ecs.example.com 视角下的 10.0.0.12:8080,本机探测 http://127.0.0.1:8080 就等于在探那台内网服务。好处是入向安全组一行都不用改,隧道随用随开;要长期跑就放进 systemd 单元。

第五步:VPC 内自建 MCP 服务,直接走内网地址

如果在同一 VPC 内自建了 MCP 服务器(比如把 filesystem、git 这类本地能力包成 HTTP 服务),不要绕公网——直接在那一行 config 里写内网 IP 或内网域名。收益是延迟低、不消耗公网带宽、也不用开公网入向规则。要注意安全组内互访也要放通:源填实例私网 IP,目的是 MCP 服务端口;这一步容易漏,表现就是状态一直停在连不上。

第六步:实例规格与系统盘余量

写入是仅追加的,每次都会在 $DSH_HOME 下留一份 cordis.patch.yml 备份,backupCount 默认保留 5 份。所以:系统盘要有余量,别把根分区用满到 95% 才想起写配置;备份要落在会做快照的盘上,把 $DSH_HOME(通常是 ~/.dsh)放进定期快照。控制台本身很轻,开销来自挂载的 MCP 服务器进程——同挂三台以上带子进程的服务器,建议起步 2 核 4 GiB。

安装过程中最容易踩的四个坑

坑一:状态栏显示 unknown,就以为插件坏了

现象。 某台服务器的连接状态一直显示 unknown,甚至出现 -1 或 —。原因。 该字段来自上游 mcp/status 接缝,未观测时如实留空(带 statusSource: 'derived'),是「没有虚假状态」的刻意设计。解法。 先用 /mcp probe 主动探一次;还是空就回 ECS 侧确认服务器有没有启动。

坑二:点了写入却被判定为失败

现象。 点写入后控制台报失败,但去看 cordis.patch.yml 发现那一行其实在文件里。原因。 那一行是 $DSH_HOME/cordis.patch.yml 插入的,profile 层补丁无法触及;控制台按「加载器重新应用后的状态」验证,没应用上就如实失败。解法。 要么把这台服务器改到 profile 层管理,要么接受它只能只读。

坑三:面板加载正常,服务器却全部连接失败

现象。 面板 UI 一切正常,但所有服务器都连不上,诊断清一色超时或解析失败。原因。 站内明确提示该插件运行需访问外部网络 / 远程 API;ECS 常见根因是没绑 EIP 又没配 NAT,或出向安全组把目标端口收掉了。解法。 确认出网链路(NAT 网关 / SNAT / EIP / 代理),放通到目标地址的流量。

坑四:写入要审批,备份还越攒越多

现象。 写入被挂起等待审批;$DSH_HOME 下出现多个备份文件。原因。 写入走「仅追加 + 需审批 + 自动备份」路径,backupCount 默认 5 份,writeEnabled 是终止开关。解法。 批量改配置就一次写完;纯查看场景把 writeEnabled 设为 false(复制功能仍可用)。

总结

在阿里云 ECS 上跑 dsh-mcp-panel,门槛不在安装命令,而在出网链路与备份落盘:安全组出向、NAT 网关加 SNAT、VPC 内网地址、ssh -L 转发、系统盘余量对齐了,控制台才真正好用;先翻一遍 DeepSeek Harness Hub 插件清单 摸清全貌,再按本文顺序落地。

适合与不适合

适合:在阿里云 ECS 上跑 DSH、并已挂载或准备挂载多台 MCP 服务器的运维;没有公网 EIP、需要靠 NAT 网关出网又拿不准出向规则的团队;MCP 服务藏在 VPC 内网、想用 ssh -L 临时验证而不改安全组的人。

不适合:完全无法出网、也不打算开 NAT 或代理的纯内网机器,探测与远程 API 访问都会失败;只挂一到两台服务器、且已熟手手写 cordis.yml 的个人用户,多一层审批与备份收益有限;不能接受未实装验证与 0 人评分风险的谨慎派,建议等本站实装结论再上。

标签:dsh-mcp-panel、DeepSeek Harness、阿里云 ECS、MCP 接入、部署教程

本文由 DeepSeek Harness Hub 自动整理,数据来源于插件详情页。

目录
相关文章
|
2月前
|
弹性计算 缓存 运维
在阿里云 ECS 上给 DSH 配免费搜索,先解决出网
dsh-free-search 是为 DeepSeek Harness(DSH)设计的免费搜索插件,解决无官方API Key时联网搜索失效问题。支持多引擎自动回退(含阿里云百炼)、5分钟缓存防限流,并适配ECS出网、代理与凭据配置。安装仅一行命令,但需注意Node≥22.19、安全组放行HTTPS、显式设置代理环境变量等关键细节。(239字)
390 1
|
Swift iOS开发 Perl
如何解决Swift混编的module编译错误
前言很多iOS工程都是基于Object-C开发,再逐步向Swift演进,演进过程中不可避免要进行Swift混编。Swift模块需要支持LLVM Module规范,混编工程会遇到各种Module编译错误。这对于不熟悉的同学来说简直是灾难,严重影响开发效率。本文会介绍常见的Module编译错误,希望对大家有所帮助。常见错误1:Could not build module xxx当一个OC模块引用了Sw
8507 1
如何解决Swift混编的module编译错误
|
Android开发 iOS开发 开发者
windows打包uniapp应用p12证书和证书profile文件的制作方法
uniapp打包app,无论是android还是ios,都需要证书。其中ios打包最麻烦,需要p12证书和证书profile文件。而uniapp官网的教程,创建p12证书需要苹果电脑,这里我们不用uniapp官网推荐的教程。因为我们大部分用户使用的是windows电脑,没必要因为打包一个ios应用花7K买一台mac电脑。
2266 0
windows打包uniapp应用p12证书和证书profile文件的制作方法
|
存储 分布式计算 搜索推荐
连载6:阿里巴巴大数据实践:大数据建设方法论OneData
避免重复建设和数据不一致性,保证数据的规范性,一直是大数据系统建设不断追求的方向。
9592 1
连载6:阿里巴巴大数据实践:大数据建设方法论OneData
|
2月前
|
弹性计算 JavaScript 安全
阿里云 ECS 部署 DSH Web + 余额鲸鱼挂件:安全组、3080 端口与出网配置
余额鲸鱼挂件(dsh-whale-widget)是DeepSeek API余额可视化桌面小工具,纯JS轻量运行,需部署于DSH Web(Node≥22.19),默认监听127.0.0.1:3080,推荐SSH隧道安全访问,仅需DEEPSEEK_API_KEY凭据,支持实时余额与用量统计。(239字)
876 3
|
3月前
|
缓存
dsh plugin 命令怎么用?DSH 插件安装、卸载、列出命令大全
dsh plugin 是管理 DSH 插件的命令族:add 安装、remove 卸载、list 列出,都配合 --profile 指定环境。安装有 npm 包名、GitHub 源码、本地目录、市场图形化四种方式,卸载有命令行与界面两种,本文逐个展开步骤并附常见问题排查。
7535 1
dsh plugin 命令怎么用?DSH 插件安装、卸载、列出命令大全
|
4月前
|
人工智能
Qwen3.8抢先体验!正式版即将发布并开源!
千问Qwen3.8即将开源,参数达2.4T,进化速度以“天”计,实力媲美Fable 5。预览版Qwen3.8-Max已上线阿里Token Plan等平台,限时优惠:日间Credits低至1折,夜间更优,个人/团队版月付仅35元起!
6585 226
|
并行计算 编译器 调度
0.8MB 跑通 Qwen|第 1-2 篇:推理引擎的 ARM 工具链第一课——原生编译 vs 交叉编译,以及一个真实的 -march 翻车现场
本文深入解析ARM交叉开发三大核心:原生vs交叉编译的本质区别、`-march`/`-mcpu`的语义差异,以及`dotprod`扩展为何不可或缺;并通过真实编译报错复现,揭示编译器如何在编译期主动拦截潜在运行时崩溃——不是刁难,而是保护。
141 0
 0.8MB 跑通 Qwen|第 1-2 篇:推理引擎的 ARM 工具链第一课——原生编译 vs 交叉编译,以及一个真实的 -march 翻车现场
|
26天前
|
缓存 运维 安全
在阿里云上给 DSH 插件升级加一层稳妥保护
本文介绍DeepSeek Harness插件网关的内网部署与安全运维方案:支持私有Registry、Git、搜索及索引四类源内网化;提供快照回滚、自动禁用防护、进程外预检等机制;强调源收敛、日志巡检与磁盘规划,适用于阿里云VPC内需合规运维的团队。(239字)
135 2
|
2月前
|
运维 Linux 网络安全
阿里云上长期跑 iPolloWork:哪些做法该留,哪些别做
本文详解iPolloWork在阿里云长期运维的核心原则:坚持状态隔离(开发/Cloud配置互不干扰)、安全组与出网最小化、严守“桌面壳≠服务端”“本地包≠正式版”两条红线,并厘清package仅推进版本号而不发布。适合云上长期运行团队,助你降本增效。(239字)
106 3

热门文章

最新文章