dsh-auth-remote: Single-User Remote Authentication Plugin for DeepSeek Harness

前言

DeepSeek Harness (DSH) 的默认 web profile 通常需要在本地访问。如果你需要从远程访问 DSH 的默认 web profile,且仅服务于单用户,可以使用 dsh-auth-remote。它运行在 DSH 内部,保护浏览器路由、API、流和 WebSocket。

这是什么

dsh-auth-remote 是一个为 DeepSeek Harness (DSH) 设计的单用户远程登录插件。由 ChenLuoi 维护,采用 MIT 许可证。

它解决了单用户远程访问的认证问题,支持密码、TOTP(时间同步一次性密码)和一次性备份代码,并提供可撤销会话。

核心功能

  • 认证方式:支持密码、TOTP 以及一次性备份代码。
  • 会话管理:支持撤销会话。会话具有固定的默认生命周期(168 小时),并在服务重启后存活。
  • 访问控制:保护浏览器路由、API、流和 WebSocket。
  • 管理工具:提供 CLI 管理命令(初始化、状态查询、重置密码、重置 TOTP、撤销会话)。
  • 生态集成:支持 PWA manifest 集成,自动声明原生桥接授权。

安装与启用

安装前请确保 DSH 版本在支持范围内(0.1.7-rc.1 到 0.2.1-alpha.3)。使用以下命令将插件安装到默认的 web profile:

dsh --version
dsh plugin --profile web add dsh-auth-remote@0.1.9
dsh plugin --profile web list

配置与启动

启动服务

启动 web 服务时,插件会自动从监听器推导根路径。如果未配置 publicUrl,直接访问监听地址即可。

dsh web --no-open --port 13090

启动后,请检查 /auth-remote/ready 端点以确保服务已就绪。如果没有显式配置 publicUrl,插件会根据实际的监听协议、地址和端口生成根路径。

配置公开访问(可选)

若需配置公开 HTTPS 入口,需设置 publicUrl、host 和 port。DSH 0.2.1-alpha.2 和 0.2.1-alpha.3 也支持原生 IPv6 和 TLS 配对配置。

注意:设置 URL 不会配置代理路由或 TLS,CLI 信任的主机配置会被保留,但外部的公开源和登录检查依然生效。

账户管理

初始化账户

首次使用需要在同一个默认 web profile 下初始化账户:

dsh plugin --profile web exec dsh-auth-remote init --lang en

系统会提示输入用户名和密码(密码长度 12-256 字符,且不在命令行回显)。首次密码登录默认要求设置 TOTP。初始化时会显示 10 个一次性备份代码,每个代码仅能使用一次,且列表无法在之后恢复。

常用管理命令

  • 查看状态:
    dsh plugin --profile web exec dsh-auth-remote status --lang en
使用 `--json` 参数可获取机器可读的状态。
  • 重置密码:
    dsh plugin --profile web exec dsh-auth-remote reset-password --lang en
  • 重置 TOTP:
    dsh plugin --profile web exec dsh-auth-remote reset-totp --lang en
  • 撤销会话:
    dsh plugin --profile web exec dsh-auth-remote revoke-sessions --lang en

以上 mutating 命令需要交互式确认。

注意事项

  • 配置文件隔离:账户状态属于默认 web profile,不与其他配置文件共享。
  • TOTP 默认开启:默认配置 requireTotp: true,首次密码登录必须设置 TOTP。
  • 版本兼容性:插件支持 DSH 0.1.7-rc.1 至 0.2.1-alpha.3。原生 IPv6/TLS 功能仅在 0.2.1-alpha.2 和 0.2.1-alpha.3 上可用。
  • 资源访问:PWA manifest 和 favicon 在登录前可读,但业务页面和 API 仍需认证。
  • 能力检查:如果 DSH 缺失必要的 WebServer/Connection API,插件会通过诊断提示认证不可用。

生态背景

DSH 的设计理念是「一切皆插件」。此插件由社区开发者维护,独立于 DeepSeek 或幻方官方,是 DSH 生态系统中的工具之一。

GitHub 仓库

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

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

Xiaoye