ByteNoteByteNote
别再开四个App连服务器了,Termo 一个窗口全搞定
字

字节笔记本

2026年10月5日 · 约 6 分钟读完

别再开四个App连服务器了,Termo 一个窗口全搞定

API中转
¥120

在 macOS 上做远程运维,你往往要同时开着好几个软件:一个终端连服务器,一个 FileZilla 传文件,一个 Microsoft Remote Desktop 连 Windows,命令行里再手动配端口转发,旁边还要开个页面盯着服务器负载。这些任务本质上都是同一件事:连到一台远程主机上完成某件事,却被拆散在风格各异、体验参差的工具之间。Termo 想改变这个局面,它是 macOS 原生、用 SwiftUI + AppKit 构建的应用,把 SSH 终端、文件传输、Windows 远程桌面、端口转发、主机监控、密钥管理整合进同一个界面。

一、Termo 是什么

Termo 是一款 macOS 原生远程运维客户端,定位是「大一统远程工作台」。目标很清晰:把日常分散在多个工具里的远程操作,整合到一个统一、克制的界面里。它不是又一个 SSH 客户端,也不是又一个 SFTP 工具,而是一个把所有远程操作都装进去的工作台。项目在 GitHub 上开源,目前已有百余颗 star,仍处于活跃开发中。

Termo 架构总览:一个窗口装下六种远程能力

二、支持什么

功能说明
SSH 终端完整的终端体验,PTY 支持
SFTP 文件传输远程文件浏览和传输
Windows 远程桌面内嵌 RDP 客户端,直连 Windows
端口转发直连 TCP 转发,命令行式的端口映射可视化操作
主机监控服务器负载、状态可视化
密钥管理SSH 密钥生成和管理

每个功能单独看都不新鲜,但全部整合到一个 App 里,而且全部是 macOS 原生实现,这件事是 Termo 的差异化。

三、技术实现上的刻意取舍

这个项目的技术细节值得说,因为它不是简单套壳,而是在几个关键地方做了有代价但正确的选择。

SSH 栈:全程进程内

早期实现依赖系统 /usr/bin/ssh,能用但受系统环境约束、进程管理繁琐,也无法满足沙盒分发。后续重写为进程内的 libssh2(静态)+ 共享 OpenSSL:

  • 覆盖终端 PTY、SFTP 子系统、直连 TCP 转发
  • known-hosts 校验、密钥生成
  • 全程不落系统 ssh 二进制、不 fork 外部进程

代价是实现复杂度大幅上升,收益是:连接更稳、启动更快、行为完全可控。

SSH 连接数据流:全程进程内

RDP 栈:内嵌 FreeRDP

内嵌 FreeRDP 静态库,配合 Objective-C 桥接:远端 BGRA 帧回主线程转为 CGImage 渲染,同时处理键盘输入与双向剪贴板同步。这意味着连 Windows 远程桌面不需要再开 Microsoft Remote Desktop,直接在 Termo 里操作。

数据安全

  • 主机与会话以 JSON 落盘
  • 密码合并写入系统钥匙串,从不明文存储
  • 远程文件保存采用乐观锁,避免 App 与其他工具或多会话并发修改导致内容覆盖

界面

  • 全自绘统一组件,深浅色主题
  • 菜单栏常驻呼吸指示灯,一眼看出连接状态
  • 以 Ghostty、Xcode 为参照打磨细节
  • 避免暴露原生控件默认样式,持续消除卡顿和可感知的加载

四、和 iOS 端的 Monito 是什么关系

同一开发者此前还在 iOS 上发布过服务器监控应用 Monito,两个产品解决的是同一类问题在不同平台的体现:

维度Monito(iPhone)Termo(macOS)
平台iOSmacOS
监控哪吒/Komari 面板内置主机监控
SSHPro 版解锁核心功能
文件管理Pro 版解锁内置 SFTP
Windows 远程桌面不支持内置 RDP
端口转发不支持内置
适合场景移动端随时查看桌面端深度运维

如果你同时用 iPhone 和 Mac 管理服务器,Monito + Termo 基本能覆盖你的所有远程运维需求。

五、下载和环境要求

  • 系统要求:macOS 14(Sonoma)及以上、Apple Silicon(M 系列)
  • 签名与公证:已完成 Developer ID 签名与 Apple 公证,Gatekeeper 正常放行
  • 更新:安装后新版本自动提示更新
  • 开源协议:PolyForm Noncommercial 1.0.0,个人使用、学习研究没有限制,商用需另行授权

官网下载:https://termoi.app GitHub:https://github.com/icloudza/termo

从适用场景看,它最适合手里管着几台到几十台 Linux、Windows 主机,已经被一堆零散工具折磨够了的 Mac 用户:运维、后端开发、独立开发者都是典型画像。如果你只是一年连一次服务器,系统自带终端加密码管理器其实就够,不必为了「统一」多装一个常驻应用。

六、一句话总结

Termo 的核心价值不是某个单独功能有多强,而是「统一」这件事本身。当你每天要在 SSH 终端、SFTP 工具、远程桌面客户端、端口转发命令之间来回切换时,「统一」就是生产力。尤其是 SSH 栈全部进程内实现这个技术选择,不用系统 ssh 二进制、不 fork 外部进程,说明作者不是在做个玩具,而是认真想做一个可靠的生产工具。

GitHub:https://github.com/icloudza/termo

官网:https://termoi.app

相关文章

分享: