zzy2210/dsh-web-gate

zzy2210★ 0JavaScript最后同步: 2026-08-14

在 GitHub 打开

DeepSeek Harness (dsh) Web 密钥门禁 / Access gate for dsh Web GUI — 替换出厂 webserver 行,HTTP/WebSocket/SPA 全部先过密钥:登录页 + HMAC Cookie + Bearer Token + 防爆破;host/port/key 环境变量或行内可配;0.0.0.0 无密钥拒绝启动(安全锁). Login page, HMAC cookie, bearer token, lockout; env/row config; refuses 0.0.0.0 without key.

README 摘要

y1n-web-gate dsh web profile 的网页密钥门禁(本地包)。把"需要密钥才能进入界面"落在真正的 HTTP 边界上: 所有 HTTP 路由( /api 、插件包路由、HMR)、WebSocket upgrade ( /api/events.mux 、 /api/events.host )以及 SPA fallback(页面与静态资源), 在任何业务逻辑之前先过鉴权。 安装 1. 在 web profile 目录( /.dsh/profiles/web )安装本包: 或手写 package.json dependencies: "y1n-web-gate": "github:zzy2210/dsh-web-gate" (包名以包内 package.json 的 name 为准,即 y1n-web-gate )。 2. 把本仓库 install.patch.yml 里的两个条目合并进 /.dsh/profiles/web/cordis.patch.yml (禁用出厂 webserver 行 + 插入守卫行)。 3. 按下方「配置」设置密钥,重启 dsh web 。 机制 - cordis.patch.yml 禁用出厂 webserver 行;本包继承 @deepseek-ai/dsh-host-webserver 的 WebServer ,以同一个 webServer 服务键提供实例 —— 所有路由消费者(frontend-static、client-connection、 client-modules、HMR 等)透明拿到守卫实例。 - register / registerUpgrade / registerFallback 在 原型 上覆盖为 "先鉴权再转发",覆盖随对象一同诞生、早于服务对外可见,不存在激活顺序竞态。 - 密钥不落盘:HMAC 会话 cookie 的签名密钥由门禁密钥本身派生,不引入第二个秘密。 配置 监听 IP、端口、密钥三者均可通过 环境变量 或 配置文件 ( cordis.patch.yml 行内)配置,优先级:环境变量 行内配置。DSH 故意拒绝 .env 文件里的 DSH 变量,环境变量用 systemd Environment= 或 shell export 传入: 变量 含义 DSH WEB GATE KEY 访问密钥(任意非空字符串,越随机越好) DSH WEB GATE HOST 监听 IPv4 字面量( localhost / ::1 归一为 127.0.0.1 ) DSH WEB GATE PORT 监听端口: 0-65535 ( 0 = 系统分配) DSH WEB GATE MODE auto (默认)/ off (整体关闭门禁与安全锁,显式接受风险) [email protected] 打印的 …

在 GitHub 查看完整 README →
Tools / Devdsh-plugindsh-plugins

分类