遠程服務器管家:在 DSH Web UI 裏通過 SSH 管理 Linux 主機

前言

在 DeepSeek Harness 裏做智能體或日常運維時,常見做法是本地終端 SSH 進服務器,再分別打開 Docker、防火牆和 apt 源配置。對話裏想讓模型「幫你看一下某臺機器上的容器」,往往還要手動粘貼主機信息或反覆說明連接方式。遠程服務器管家(dsh-remote-server-manager)把多臺 Linux 服務器的連接、文件、容器、鏡像、防火牆、軟件探測和 apt/Docker 源配置收進 Harness 左側活動欄的一個持久化插件面板,並通過 @ 服務器引用與 remote_server 工具把同一套能力接到對話裏。

下面介紹插件定位、已文檔化的功能、安裝步驟和典型用法;涉及寫操作與權限的部分一併說明,便於安裝前評估。

這是什麼

遠程服務器管家是維護者 cnHuaShao 發佈的 DSH 插件,npm 包名 dsh-remote-server-manager,當前資料中的版本爲 1.4.0,許可證 MIT。社區目錄分類爲 admin-security,目錄頁:SkillHub 插件頁,源碼與說明:GitHub 倉庫。

一句話定位:安裝在本機 Harness Web UI 裏,通過 SSH 連接 Linux 服務器,在同一面板管理遠程文件、查看主機狀態、管理防火牆、探測開發/部署軟件,並停止/重啓 Docker 容器;針對「單臺服務器上容器很多」的場景,列表、搜索、項目分組、分頁和批量操作在服務端完成。

核心功能

服務器與主機總覽

  • 新增、編輯、刪除多臺 SSH 服務器;支持密碼和私鑰登錄。連接信息保存在當前 DSH profile;密碼/私鑰寫入 Harness 憑據服務,不出現在前端或 servers.json。
  • 總覽頁展示操作系統、運行時長、當前用戶、磁盤、內存、Docker 版本、運行中容器數、SSH 主機 SHA-256 指紋(trust-on-first-use,指紋變化會拒絕連接並返回 host_key_changed)。

文件管理

目錄瀏覽、路徑跳轉、麪包屑、隱藏文件開關、名稱過濾;新建目錄、重命名、遞歸刪除、上傳(≤ 24 MB)、下載、文本在線編輯(≤ 2 MB,帶 expectedMtime 衝突檢測)。依賴遠端 SFTP;二進制文件僅支持下載。

容器與鏡像

  • 容器:一次 docker ps -a 拉取全部容器,在主機側搜索、按狀態/Compose 項目過濾、排序、分頁(25/50/100/200,默認 50);當前頁多選批量停止/重啓(最多 4 併發);單容器啓停/重啓與詳情;4 秒緩存 + 手動刷新 + 15/30/60 秒自動刷新。暫不提供刪除容器入口。
  • 鏡像:獨立「鏡像」頁,按倉庫/標籤/ID 搜索,區分有標籤與懸空鏡像,分頁與排序;頂部統計總數、有標籤數、懸空數、大小合計(按鏡像大小求和,非層去重磁盤佔用)。不提供刪除/拉取鏡像;「Docker 源」可查看並修改 /etc/docker/daemon.json 的 registry-mirrors(DaoCloud、1Panel、中科大或自定義 https 地址),保存前二次確認,自動備份並重啓 Docker,失敗回滾。

防火牆

獨立「防火牆」頁,識別 firewalld、ufw,nftables/iptables 只讀展示。支持開放 TCP/UDP 端口、firewalld 服務放行/移除、刪除 ufw 規則、重載;ufw 未啓用時可展示暫存規則,確認後可先自動放行當前 SSH 端口再啓用。SSH 端口與 ssh 服務默認受保護;寫操作需 root 或免密 sudo,否則只讀。

安裝探測與軟件源

  • 安裝探測:一次性檢查 Node.js、Python、Java、Go、Docker、kubectl、Nginx、數據庫等常見開發與部署軟件是否安裝及版本;apt 系統上可讀候選版本,未安裝可「一鍵安裝」、可升級項可「一鍵升級」(二次確認,內置 apt 包名,不接受任意命令)。結果緩存 5 分鐘,點刷新強制重讀。
  • 軟件源(僅 apt):查看發行版與官方源,一鍵 apt-get update,或切換至阿里雲、清華 TUNA、中科大等鏡像;只改 Ubuntu/Debian 主倉庫 URL,第三方源不動;備份 /etc/apt 下源文件,失敗恢復。

對話集成

  • 輸入 @ 選擇「服務器」分組中的已保存服務器,消息中帶名稱、地址和 id。
  • 工具 remote_server 支持列出服務器、總覽、容器/鏡像查詢與分頁、防火牆與安裝軟件探測、讀目錄與文本文件、在用戶明確要求時啓停/重啓容器。防火牆寫操作、軟件安裝/升級、軟件源與 Docker 源修改僅通過 UI,避免模型誤改。
  • 界面語言跟隨 Harness,內置 zh / en。

安全與數據位置(摘要)

HTTP 接口前綴 /remote-server-manager,複用 Harness 的 Host/Origin 與瀏覽器認證檢查。服務器列表:$DSH_PROFILE_DIR/remote-server-manager/servers.json(權限 0600);憑據引用名形如 DSH_RSM_<SERVER_ID>_PASSWORD。詳見 README「安全設計」與「已知限制」。

安裝與啓用

推薦從 npm 安裝:

plugin_manager install_bundle  target: dsh-remote-server-manager

也可從 GitHub 安裝:

plugin_manager install_bundle  target: https://github.com/cnHuaShao/dsh-remote-server-manager

或在 Harness 插件管理裏搜索/安裝 dsh-remote-server-manager。安裝後刷新 Web UI,左側活動欄會出現「遠程服務器管家」圖標。

本地開發時,在插件目錄執行(示例路徑按你的環境替換):

plugin_manager install_bundle  target: D:\path\to\remote-server-manager

典型用法

  1. 打開左側「遠程服務器管家」,點右上角 + 填寫名稱、主機、端口、用戶名與認證方式。
  2. 保存後點「測試」確認 SSH 與 Docker 可用;首次連接記錄主機指紋。
  3. 在「容器」頁搜索、按 Compose 項目過濾、分頁與批量操作;鏡像與 Docker 源在「鏡像」頁;防火牆與安裝探測在對應獨立頁。
  4. 「文件」頁跳轉路徑,文本文件點擊文件名在線編輯;「總覽」「日誌」查看狀態與近期操作。
  5. 對話裏輸入 @ 引用服務器,或說明服務器名稱讓模型通過 remote_server 的 list 定位;查看類操作可由模型調用工具,容器變更需用戶明確要求。

若 SSH 用戶執行 Docker 需要 sudo,將配置改爲 sudo docker;命令僅允許字母、數字及 _ . / 空格 -,避免 shell 注入。

適用場景與注意

適合:在 Harness 裏維護少量到多臺 Linux 服務器、需要集中看容器/鏡像/防火牆/常見 devops 軟件是否就緒,並希望在對話中引用固定服務器做只讀或受控容器操作的開發者與運維。

安裝前建議:插件以當前 DSH 進程權限運行,會通過 SSH 在遠端執行文檔描述的操作(含 apt、防火牆、Docker 重啓等)。安裝前應閱讀 倉庫源碼與 LICENSE,確認憑據存儲與接口範圍可接受。社區目錄 SkillHub 爲獨立站點,與 DeepSeek / 幻方無官方從屬關係。

已知限制(節選):不支持 SSH Agent、跳板機、鍵盤交互認證;鏡像/容器無刪除與拉取入口;防火牆寫操作僅 firewalld/ufw;一鍵安裝/升級僅 apt 且僅內置包名;Docker 源只改系統級 daemon.json 的 https 鏡像列表;ufw 啓用前會放行當前 SSH 端口但仍可能影響其他端口,且插件不提供關閉防火牆。

結尾

遠程服務器管家把 SSH 運維與 Docker 日常操作放進 DSH 面板,並用引用與 remote_server 對齊對話場景,同時把高風險寫操作限制在 UI。進一步瞭解可訪問 SkillHub 目錄頁 與 GitHub README。

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

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

小夜