dsh-local-hanaccount:本地 DSH Web 的訪問網關插件

在本地運行 DeepSeek Harness (DSH) Web 配置文件時,直接暴露服務端口往往缺乏精細的訪問控制。對於單操作員場景,需要一個輕量級的“門”,既能管理密碼、通行密鑰和 IP 白名單,又能不干擾 DSH 原生的工作區和會話管理。

dsh-local-hanaccount 是一個爲本地 DSH Web 配置文件設計的單操作員訪問網關插件。由維護者 Z-6354 開發,它提供了一套統一的登錄機制,將密碼、通行密鑰和 SSH 密鑰整合在一個入口,並支持 IP 白名單、黑名單統計以及 Nginx 集成。

核心功能

統一登錄與多因子支持
插件提供統一的登錄頁面。支持密碼登錄(使用 scrypt 哈希,5 次失敗鎖定)和通行密鑰登錄(WebAuthn,需 HTTPS 或 localhost)。此外還支持 SSH 公鑰登錄,適用於 CLI 或腳本場景。

全路由保護與失敗關閉
默認保護所有插件 webServer 前綴。配置的 excludePrefixes 無法豁免需要認證的業務路由,只允許內置資源和插件包在通過 IP 和入口檢查後匿名訪問。這意味着業務路由採用“失敗關閉”策略。

會話與權限管理
支持登出撤銷(關閉活躍套接字)。password-native-v1 橋接機制在建立網關會話的同時也建立官方主機會話,確保兼容性。會話包含密碼版本綁定和服務器端絕對/空閒生命週期。

IP 與網絡控制
支持 IP 白名單(信任 IP 可跳過登錄日誌)和黑名單(永久拒絕並記錄統計)。支持 LAN 模式(禁用白名單,顯式拒絕 + 強制認證)。

集成能力
提供 Nginx 反向代理配置片段(含 X-Real-IP 設置),便於在公網環境部署。

安裝與啓用

安裝插件後需重啓 DSH Web 配置文件才能生效。

dsh plugin --profile web add dsh-local-hanaccount

如果本地已有源碼,也可以直接添加路徑:

dsh plugin --profile web add /path/to/dsh-local-hanaccount

典型用法

  1. 安裝並重啓 DSH Web 配置文件後,直接在瀏覽器打開 localhost(不經過反向代理),在登錄頁設置初始密碼。
  2. 進入 DSH 的設置界面,在“訪問控制”中添加當前 IP 到白名單。
  3. 對於遠程訪問,必須使用 HTTPS 和受信任的反向代理。通行密鑰功能僅在 HTTPS 或 http://127.0.0.1 / localhost 環境下可用。

適用場景與注意

適合需要本地運行 DSH Web 配置文件,並希望爲單用戶或小團隊提供可控訪問入口的場景。

  • 權限與依賴:該插件以 DSH 進程的權限運行,安裝前應檢查源碼與許可證。
  • 會話管理:工作區和會話由 DSH 原生管理,插件不干預。
  • 持久化限制:目錄的 fsync 和電源故障持久化在 Windows 上未做保證。
  • 通行密鑰檢測:通行密鑰的可用性取決於當前 URL 的 isSecureContext,與域名無關。

通過 dsh-local-hanaccount,可以在不改變 DSH 核心架構的前提下,爲本地 Web 服務增加一道可控的訪問鎖。它通過標準化的接口整合了多種認證方式,適合追求安全與簡潔並重的開發者。項目源碼與文檔可在其 GitHub 倉庫查閱。

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

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

小夜