一个开源桌面运维客户端

用了很多 SSH / 远程连接工具,有些收费、有些太复杂,所以按自己的习惯做了一个轻量桌面运维客户端,平时自用,也开源出来分享一下,欢迎提出意见。

项目地址 / 下载地址:

为什么做这个项目

日常运维里,我经常会在几个工具之间来回切:

  • 用终端工具连 SSH;

  • 用 SFTP 工具传文件、改配置;

  • 用系统监控或命令查看 CPU、内存、磁盘;

  • 偶尔还要打开 RDP、VNC;

  • 常用命令、隧道、远程文件编辑又散落在不同地方。

这些工具都很好,但对于个人使用来说,有时候会觉得“上下文切换”有点多:连接信息在一处、文件在一处、命令在一处、监控又在另一处。

所以我做了 mXterm。它不是想一口气替代所有专业工具,而是想先解决一个朴素需求:

把个人常用的远程主机操作,尽量收拢到一个本地桌面工作区里。

image

 

当前能做什么

目前 mXterm 已经具备一些基础能力。

连接仓库

可以按分组维护连接,支持收藏、最近连接、搜索和快速启动。左侧是连接列表,主工作区可以打开多个会话。

连接类型目前覆盖:

  • SSH 终端;

  • 本地终端;

  • RDP 桌面;

  • VNC 桌面。

SSH 多标签终端

终端渲染基于 xterm.js,支持多连接、多标签。对于经常同时登录多台机器的场景,可以在同一个工作区里切换。

远程文件与编辑

项目里集成了远程文件面板,目标是减少“终端 + 文件传输工具”之间来回切换:

  • 浏览远程目录;

  • 上传、下载;

  • 重命名、删除、创建目录;

  • 文本文件远程编辑;

  • 传输队列和状态查看。

主机监控

右侧面板里可以查看一些主机状态,例如 CPU、内存、磁盘等。截图里就是一个 SSH 会话加右侧监控面板的工作区。

这个功能不是为了做完整的监控系统,而是为了在登录机器排查问题时,能快速看到当前机器的大致状态。

命令、隧道和工具面板

除了终端和文件,工作区右侧还预留了命令、隧道、工具等面板。我的想法是:常见运维动作不一定都要靠“记命令 + 手敲”,可以逐步沉淀成可复用的工作区工具。

技术栈

mXterm 是一个桌面应用,不依赖本地 Node/Express 服务来跑运行时能力。

主要技术栈:

  • Tauri v2;

  • React;

  • Rust;

  • xterm.js;

  • Monaco Editor。

前端负责桌面交互和工作区 UI,SSH、SFTP、本地存储、窗口能力、跨平台能力主要由 Rust/Tauri 承载。

我选择 Tauri 的原因也比较简单:

  • 桌面包体相对轻;

  • Rust 侧适合处理 SSH、SFTP、本地存储这类能力;

  • 前端仍然可以用 React 快速构建复杂工作区界面;

  • 对个人工具来说,发布 Windows、macOS、Linux 多平台版本比较方便。

和传统工具的关系

mXterm 目前不是一个“大而全”的终端,也不是要替代所有专业运维平台。

它更像是一个个人工作台:

  • 常用连接放在一处;

  • SSH、文件、监控放在一个工作区;

  • RDP/VNC 也可以从同一个连接仓库启动;

  • 常用命令和工具逐步沉淀;

  • 尽量保持本地、轻量、可控。

如果你已经有成熟的商业终端工具、堡垒机、监控系统,那 mXterm 不一定能替代它们。但如果你和我一样,经常需要管理一批个人服务器、测试机、虚拟机、内网环境,它可能会比较顺手。

下载体验

目前发布包放在 GitHub Release:Releases · syscryer/mxterm

posted @ 2026-07-01 14:02  HUMU  阅读(8)  评论(0)    收藏  举报