前言¶
DeepSeek Harness (DSH) 的 Web GUI 默認僅綁定本地地址。若需在外網或局域網訪問,通常需要配置 SSH 隧道或複雜的反向代理。dsh-remote-access 是一個 DSH 插件,它作爲 DSH Web 服務的 TLS 邊緣入口,提供獨立端口監聽、自簽證書、登錄認證、會話保護以及 HTTP/WebSocket 透明反代功能,支持通過 FRP、Cloudflare 隧道等手段將服務暴露到遠程。
核心功能¶
- TLS 與認證:獨立端口(默認 3081)監聽,自動生成自簽證書。支持用戶名+密碼登錄,登錄後下發 HttpOnly/SameSite/Lax/Secure 的會話 Cookie。
- 透明代理:將 HTTP 和 WebSocket 請求透明轉發到本機的 DSH Web 服務(127.0.0.1:3080)。
- 熱配置:通過 GUI 設置面板即時更改 TLS、端口、監聽地址、賬號密碼,支持啓動/停止。
- 遠程接入:支持局域網訪問、FRP 隧道及 Cloudflare 隧道等遠程訪問方式。
安裝¶
本插件是 DSH Web 的 Profile 插件,需要先有一個運行中的 DSH Web 部署。
使用官方命令 dsh plugin 安裝(Linux / macOS / Windows 通用):
dsh plugin --profile web add github:zergtant/dsh-remote-access
安裝後必須重啓 DSH 才能生效。插件默認 enabled: false,不會自動監聽任何端口。安裝時 pnpm 可能會報 peer 依賴缺失提示,這是預期的,不影響實際運行。
使用¶
- 重啓 DSH 後,打開 GUI:設置 → 遠程訪問。
- 設置用戶名(默認
admin)和密碼。 - 點擊頁面頂部的 「啓動」 按鈕(即時生效)。
- 訪問:
- 本機:
https://127.0.0.1:3081 - 局域網:
https://<主機IP>:3081 - 公網:通過 frp 隧道指向
127.0.0.1:3081
- 本機:
配置項¶
| 字段 | 默認值 | 說明 |
|---|---|---|
| 啓動/停止 | — | 頁面頂部操作區:點「啓動」立即拉起、點「停止」立即停止,均無需保存。按鈕旁實時顯示狀態。 |
| TLS(https) | 開 | 自籤 HTTPS。關閉 = 明文 HTTP(僅內網/調試用)。保存後生效。 |
| 端口 | 3081 |
1–65535,保存後即時遷移監聽。 |
| 監聽地址 | 0.0.0.0 |
0.0.0.0(對外)/ 127.0.0.1(僅本機,例如只給 frp 用)。 |
| 用戶名 | admin |
登錄用戶名。 |
| 密碼 | — | 存儲在 DSH 憑據庫(~/.dsh/.credentials.yaml),留空則保持不變。 |
注意事項¶
- 自簽證書:瀏覽器首次訪問時會提示證書不受信任,需點擊”高級 → 繼續訪問”。
- 會話狀態:會話爲內存態,DSH 重啓後需重新登錄。
- 單實例限制:單進程單 edge,一個 DSH 實例對應一個 3081 端口,多實例需修改端口。
- pnpm 提示:安裝時出現 peer 依賴提示是預期的,插件實際運行正常。
結尾¶
dsh-remote-access 通過添加一層 TLS 和認證網關,解決了 DSH Web 本地監聽難以遠程訪問的問題,適合需要在內網或公網環境通過隧道訪問 DSH 的場景。