前言¶
DeepSeek Harness (DSH) 默認僅監聽本地迴環地址,這使得開發者無法直接從其他設備訪問。直接暴露 DSH 的 Web 端口存在安全風險。dsh-remote-gateway 插件提供了一個安全的反向代理方案:DSH 進程本身始終只監聽 127.0.0.1,由網關負責接收遠程請求並進行認證轉發。
插件簡介¶
該插件由 RyensX 維護,旨在解決 DSH 的遠程訪問需求。它通過網關模式,將外部請求安全地轉發到本地,並支持認證、IP 白名單、HTTPS 配置等功能。
核心功能¶
- 安全轉發:DSH 本身始終只監聽
127.0.0.1,由插件提供的網關進行轉發。 - 認證機制:支持密碼認證和 IP 白名單。來源 IP 只讀取 TCP socket,不信任代理請求頭。
- 實時配置:設置頁的所有配置(如監聽地址、端口、白名單、密碼)在點擊“保存”後實時生效,無需重啓 DSH。
- HTTPS 支持:支持使用宿主機上的 PEM 文件配置 HTTPS 證書。
- 交互優化:通過網關地址添加工作區時,會在當前瀏覽器內打開宿主機文件夾選擇器,而非在遠程主機彈窗。
安裝與啓用¶
使用官方命令安裝插件:
dsh plugin --profile web add github:RyensX/dsh-remote-gateway
安裝後,在 DSH 的設置頁中找到該插件配置。首次使用時,必須通過本地 127.0.0.1 訪問設置頁並配置密碼。
典型用法¶
基礎訪問流程¶
瀏覽器通過網關訪問本地 DSH 的流程如下:
瀏覽器
→ dsh-remote-gateway(白名單 + 密碼認證)
→ http://127.0.0.1:<DSH Web 端口>
局域網訪問配置¶
如果需要在局域網內訪問,需在網關配置中將“監聽地址”從默認的 127.0.0.1 改爲 0.0.0.0 或指定的網卡地址。
HTTPS 配置¶
HTTPS 使用宿主機上的 PEM 文件,配置方式如下:
dsh-remote-gateway:
tls:
enabled: true
certPath: /absolute/path/to/cert.pem
keyPath: /absolute/path/to/key.pem
注意事項:
* 證書和私鑰路徑必須是絕對路徑,且文件大小不超過 1 MiB。
* 僅覆蓋同一路徑下的證書文件不會觸發自動加載,需重啓 DSH。
* 證書讀取失敗時不會降級到 HTTP,原監聽器繼續服務。
IP 白名單與 Host 控制¶
- IP 白名單:建議在需要特定設備訪問時開啓。支持精確 IPv4、IPv6 和 CIDR 格式。留空表示不限制來源 IP。命中白名單後仍需輸入密碼。
- Host 白名單:網關默認只接受本機 IP 和
localhost。如需使用局域網域名或 NAT 後的外部 IP,必須在“額外允許的 Host”中顯式添加精確域名或 IP(不包含協議和端口)。
適用場景與注意事項¶
適用場景¶
- 需要在多臺設備間同步使用 DSH 的開發者。
- 在局域網內搭建 AI 開發環境的場景。
- 需要通過 VPN 或內網穿透工具(如 Tailscale、ZeroTier、Cloudflare Tunnel)訪問本地服務的場景。
注意事項¶
- 遠程工具依賴:插件本身不直接提供遠程訪問服務,必須搭配 Tailscale、ZeroTier 等工具使用。
- 安全建議:HTTP 模式僅適合臨時使用的可信局域網,長期使用或監聽非迴環地址應配置 HTTPS,並設置 IP 白名單和主機防火牆規則。
- 會話管理:會話按令牌獨立滑動過期(默認 180 分鐘),最長絕對生命週期爲 7 天。服務端推送和心跳不會續期。
- 系統編輯器:通過網關打開配置文件時,會調用 DSH 原有的系統文本編輯器。
結語¶
dsh-remote-gateway 通過網關模式解決了 DSH 本地運行帶來的遠程訪問痛點,同時保持了安全性。對於需要在多終端或遠程環境使用 DeepSeek Harness 的用戶,這是一個可靠的解決方案。