前言¶
DSH(DeepSeek Harness)採用插件化架構。默認的 Web GUI 通常只綁定本地迴環地址,若需在局域網內訪問,或需要精細控制監聽端口與 IP,官方配置往往不夠用。dsh-advanced-listening-settings 插件在 DSH Web GUI 的「設置」菜單中新增了一個獨立分區「高級監聽設置」,允許你將服務暴露到局域網,精確控制監聽範圍,並修復遠程訪問時部分功能失效的問題。
核心功能¶
該插件提供以下控制項:
- 全局監聽(0.0.0.0):綁定所有網卡地址。
- 本機 IP 列表:通過複選框選擇特定的網卡 IP 地址(默認全不選,僅本機迴環)。
- 端口控制:設置對外服務的端口,默認爲 3080。命令行
--port參數優先級高於此處。 - 取消鑑權:移除 Token 校驗(401),直接訪問 IP:端口 即可。注意:Host/Origin 來源校驗(403)仍保留。
- 重啓 dsh:面板提供二次確認的按鈕,用於拉起新實例。
- 訪問地址…:列出所有可用的入口 URL,支持一鍵複製。
- 配置與清理…:查看託管文件位置、清理歷史遺留條目、移除託管塊或完全清理。
安裝與啓用¶
安裝插件需要以管理員權限運行終端。
dsh plugin --profile web add dsh-advanced-listening-settings
安裝完成後,必須重啓一次 DSH 才能使新分區生效。重啓後,進入 設置 → 高級監聽設置 即可進行配置。
- 本地目錄安裝:如果是從本地目錄安裝,目錄必須保持原位不動。
- 依賴環境:需要 DSH 版本
0.1.5-rc.3,以及 Node.js 版本≥ 22.6。
使用與清理¶
配置完成後,根據需要選擇監聽地址或端口,並決定是否取消鑑權。
典型用法¶
- 在「本機 IP 列表」中勾選需要對外暴露的網卡 IP。
- 確認端口設置(命令行啓動的端口會顯示在輸入框中並置灰)。
- 點擊「訪問地址…」,複製生成的 URL 到其他設備進行訪問。
- 若需更改監聽策略,點擊「重啓 dsh」生效。
卸載與清理¶
插件設計爲默認態零殘留,但配置過的內容需要手動清理才能完全卸載。
推薦步驟:
1. 在面板的「配置與清理…」中點擊「完全清理(卸載前)」。這會刪除託管塊、遺留條目和設置文件。
2. 運行卸載命令:
dsh plugin --profile web remove dsh-advanced-listening-settings
- 重啓 DSH。
如果忘記清理,也可以使用清理命令從 npm 重新拉取一份插件代碼來執行清理:
npx -y dsh-advanced-listening-settings cleanup
安全與權限¶
使用此插件涉及對 DSH 進程的權限覆蓋。
- 鑑權風險:一旦取消鑑權,任何能訪問該局域網 IP 的人都可以直接操控 DSH(執行命令、讀寫文件)。請務必僅在完全可信的網絡環境中使用此功能,或保留 Token 鑑權作爲最後一道防線。
- 來源圍欄:取消鑑權只移除了 Token 校驗,Host/Origin 的 403 攔截(來源圍欄)依然有效。即使關閉鑑權,未受信任的域名訪問仍會被拒絕。
- IPv4 限制:插件僅支持 IPv4 網卡。IPv6 地址不會被改寫或監聽。
- 官方目錄:插件不會寫入 DSH 的官方安裝目錄,也不會修改官方源碼。
參考資料¶
- GitHub 倉庫: https://github.com/jcjyids/dsh-web-advanced-settings
- 插件目錄: https://www.skillhub.cn/plugins/jcjyids/dsh-web-advanced-settings