DeepSeek Harness 局域網密碼門禁插件介紹

前言

DeepSeek Harness (DSH) 的 Web 界面默認綁定在本地迴環地址。在自託管或 Homelab 場景中,開發者通常需要從局域網內的其他設備訪問該服務。然而,官方 CLI 不支持直接指定 --host 0.0.0.0,這導致在非迴環地址暴露服務存在安全風險。dsh-lan-gate 通過插件層配置,允許監聽所有接口,並強制實施密碼和 CIDR 白名單,解決這一痛點。

插件介紹

dsh-lan-gate 是一個 DeepSeek Harness (DSH) 插件,定位爲 admin-security 類別。它由用戶 maxesisnclaw 維護。核心功能是爲 DSH Web 界面和 /api 接口提供密碼保護,並結合 CIDR 白名單機制,確保只有內網特定網段可以訪問服務。

核心功能

  1. 全接口監聽:通過 bundle patch 修改 webserver.host 配置項爲 0.0.0.0,從而在所有網絡接口上監聽服務。
  2. 密碼保護:初始狀態無密碼,必須先在迴環地址設置密碼。只有通過驗證後,UI 和 API 纔會對非迴環客戶端可見。
  3. CIDR 白名單:默認允許以下 IPv4 內網網段:10.0.0.0/8、172.16.0.0/12、192.168.0.0/16。超出此範圍的請求將被拒絕。
  4. 拒絕代理頭:插件會攔截並拒絕包含 X-Forwarded-*、Forwarded 或 Via 頭的請求。
  5. 迴環繞過:爲了便於調試和恢復,本地迴環地址訪問無需密碼即可通過。
  6. 安全存儲:密碼使用 scrypt 驗證器存儲,會話令牌爲隨機 32 字節值,僅將 SHA-256 哈希值保留在內存中。
  7. 配置文件:策略文件位於 $DSH_HOME/lan-gate.json,文件權限默認設置爲 0600。

安裝與啓用

使用 DSH 官方插件源安裝:

dsh plugin --profile web add dsh-lan-gate

安裝完成後,插件會自動應用配置補丁並啓動。

配置與使用

  1. 初始化密碼:首先在本地訪問初始化頁面設置密碼。地址爲 http://127.0.0.1:3080/dsh-lan-full/login。此步驟僅允許通過迴環地址訪問。
  2. 局域網訪問:配置完成後,局域網內的客戶端嘗試訪問 DSH Web 界面時,會自動重定向至登錄頁。
  3. 策略管理:在 DSH 的設置界面中,進入 LAN 訪問 選項,可編輯 CIDR 白名單、代理頭拒絕策略以及修改密碼。

注意事項與適用場景

該插件以當前 DSH 進程的權限運行。在安裝前,建議檢查源碼與許可證(MIT)。

  • 非 TLS 終止器:插件不提供 TLS 加密,在明文 HTTP 下,局域網內的觀察者仍可能嗅探到密碼和 Cookie。切勿將其部署在公共互聯網。
  • 反向代理限制:不要將此插件部署在添加了轉發頭(Forwarding Headers)的反向代理後面,插件設計上會拒絕此類請求。

總結

dsh-lan-gate 提供了在 Homelab 環境下安全暴露 DSH Web 服務的基礎能力。更多細節請參考 GitHub 倉庫 或 DSH 社區目錄。

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

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

小夜