前言¶
DeepSeek Harness 的 Web 服務器出於安全設計只綁定 127.0.0.1,且官方禁止使用 --host 0.0.0.0。這導致開發者無法直接從局域網或公網訪問 GUI。dsh-mobile-access 插件通過在 PC 端運行網關代理,填補了這一空白。它不僅實現了端口轉發,還內置了 PC 端審批門禁與網絡環境自動識別功能,確保移動端訪問的安全性。
核心功能¶
- PC 端審批門禁:手機設備首次訪問必須由 PC 端批准。支持批准、拒絕、撤銷、恢復、刪除以及“取消授權並刪除”操作。
- 網絡環境自動識別:自動識別訪問來源爲局域網(LAN)、VPN 或公網直連。網絡環境變化時,手機端會彈窗詢問是否切換模式。
- 外網安全訪問:公網直連時會提示改用 Tailscale 或 ZeroTier。PC 端面板可開啓“禁止公網直連”策略,強制攔截公網來源的設備。
- 實時狀態同步與轉發:PC 端“當前會話”自動同步到手機端,且支持 WebSocket 實時轉發(
/api/events.mux、/api/events.host)。 - 移動端適配:自動適配移動端 UI,主題跟隨 DSH 主題 token(支持深色/淺色及第三方皮膚),輸入欄工具區與操作區自動分行。
安裝與啓用¶
本插件是靜態插件包,隨 DSH 啓動自動加載。安裝後無需每次重啓重新部署。
執行以下命令安裝:
# 方式一:本地安裝
dsh plugin --profile web add dsh-mobile-access
# 方式二:從 GitHub 安裝(鎖定版本 v1.0.5)
dsh plugin --profile web add dsh-mobile-access@github:TongaiLinC/dsh-mobile-access#v1.0.5
安裝後,重啓 DSH。啓動成功後,PC 頁面右下角會出現一個藍色“📱”懸浮按鈕。
使用流程¶
1. 啓動網關(PC 端)¶
點擊右下角的“📱”按鈕打開移動端訪問面板,點擊 “啓動網關”。
該網關默認監聽 0.0.0.0:3081。如果使用 Windows 系統,首次啓動時請允許防火牆放行該端口的入站連接。
2. 訪問與掃碼(手機端)¶
- 局域網訪問:手機連接同一 Wi-Fi,使用相機或微信掃描 PC 面板上的二維碼,或直接在瀏覽器輸入
http://<PC局域網IP>:3081。 - 公網訪問:建議使用 Tailscale 或 ZeroTier 等工具建立 VPN 隧道後,通過 VPN 地址訪問。
3. 首次審批¶
手機首次訪問會進入門禁頁面。給設備命名並提交申請後,PC 端面板的“設備審批”區會出現該設備。點擊 “批准” 後,手機端約 3 秒內會自動放行進入 GUI。
4. 設備與策略管理(PC 端)¶
- 設備管理:在 PC 面板中,你可以對設備執行批准、拒絕、撤銷、恢復或刪除操作。
- 安全策略:開啓“禁止公網直連”策略後,所有來自公網的設備請求將被強制攔截,必須走 VPN 訪問。
注意事項¶
- 安全風險:網關鏈路無 TLS 加密,Cookie 與對話內容存在被嗅探風險。強烈建議通過 VPN(如 Tailscale/ZeroTier)加密訪問,而非直接使用 HTTP。
- 身份認證:舊版公開的
x-dshm-admin: 1頭已廢棄,任何局域網設備都能僞造它。新版採用x-dshm-admin-token結合迴環地址校驗,確保管理權限僅限 PC 本機。 - 數據持久化:設備與策略數據保存在
$DSH_HOME/dsh-mobile/state.json文件中。 - 防火牆:Windows 用戶需確保防火牆允許
node.exe對端口 3081(默認)的入站連接。
總結¶
該插件解決了 DSH Web GUI 僅綁定本地的問題,通過 PC 端作爲中繼網關,實現了移動端安全、可控的訪問方式。對於需要在多設備間切換或使用移動設備開發智能體的用戶,它提供了一個低侵入、功能完整的解決方案。