判断一个 SSH 客户端是不是好工具,看一件事:
它有没有想方设法把自己塞进你和服务器之间。
随手打开市面上几个主流 SSH 客户端,你会撞见一连串荒谬:先要你登录一个云账号;自己维护一套和系统不通的 host key 数据库;要你在每台目标服务器上 source 一个 shell 集成脚本;专有的录制格式、专有的同步、专有的一切。
SSH 协议 1995 年发布。30 年后,连一台服务器,居然要先注册另一个公司的账号、要把私钥上传到别人的服务器、要修改目标机器的 dotfile —— 这件事本身就是这个行业最大的笑话。
rssh 的全部设计,就一句话:
工具要服务你已有的工作方式,而不是逼你为工具让步。
| 主流云同步 SSH 客户端 | 主流开源终端 | 主流命令块终端 | 系统终端 | 老牌商业 SSH | rssh | |
|---|---|---|---|---|---|---|
共享 ~/.ssh/known_hosts |
❌ 自管 | ❌ 自管 | ✅ | ✅ | ❌ 自管 | ✅ |
| CLI + GUI 同源数据 | ❌ | ❌ | ❌ | — | ❌ | ✅ 同一 SQLite |
| 命令块视觉分组 | ❌ | ❌ | ✅ 需改服务器 | ❌ | ❌ | ✅ 零服务器改动 |
| 内置 AI 排障 | ⚠️ 订阅 | ❌ | ⚠️ 订阅 | ❌ | ❌ | ✅ 自带 + 四道墙 |
| 同步存储位置 | 厂商服务器 | 自建 | 厂商服务器 | — | 厂商服务器 | 你的 GitHub repo |
| 会话录制格式 | 专有 | — | — | — | 专有 | asciicast v2 |
| 登录账号 | 必须 | 不需要 | 必须 | — | 注册 | 不需要 |
| 订阅收费 | 月费 | 免费 | 月费 | 免费 | 一次性付费 | 免费 MIT |
| 移动端 | 有 | ❌ | ❌ | ❌ | ❌ | Android ( iOS 自打包) |
| 遥测 | 有 | 可关 | 有 | 无 | 有 | 没写过这部分代码 |
(横轴是几类产品的典型代表,不点名 —— 你心里有数。)
绝大多数 SSH GUI 客户端有一个让人抓狂的设计:自己维护一套 host key 数据库。
意味着什么?意味着你在命令行 ssh prod 信任过的主机,到 GUI 里要再确认一次;你在 GUI 里删掉的指纹,命令行 ssh-keygen -R 还要再删一次。同一个事实,两份真理。
rssh 直接读写 ~/.ssh/known_hosts。一份数据,两个工具共用。
这不是什么了不起的技术决策,这是默认就该这样。其他客户端为什么不这么做?因为如果他们用系统的 known_hosts ,你换工具的成本就是零,他们没有了锁定你的钩子。
rssh 的 CLI 不是 GUI 的附庸。两者读同一个 SQLite:~/.rssh/rssh.db。
rssh ls prod # 模糊搜索
rssh open gateway-01 # 直接连,在你自己的终端里
rssh open fwd my-tunnel # 启动命名端口转发
意味着:
rssh open foo 写进 alias 、Makefile 、CI 脚本市面上号称有 CLI 的同类产品不少 —— 你试试,要不要登录,要不要 token ,能不能拿到 GUI 里建的 profile ?
有些终端的命令块功能确实好用。你能折叠、能选中、能独立复制每条命令的输出。
但代价是 —— 在服务器上改 shell 集成。
这在很多场景下根本不可能:
kubectl exec 进 pod ,根本没你的脚本rssh 的做法:完全前端实现。
每条命令在终端左侧画一道竖向色条,输入和输出共享同色。下一条命令换色(黄金角 HSL 算法保证相邻颜色对比最大)。进入 vim/top/less 全屏程序时色条自动淡出。
rssh 不知道你在哪台机器上,也不需要知道。一次连接立刻生效,包括你客户的服务器、别人的堡垒机。
CPU 跑满了、Java 堆爆了、Go 进程吃 8 个 G —— 现在主流的"AI 排障"流程是:
人变成了 LLM 和终端之间的搬运工。token 、密码、内网 IP 直接外发,没人替你脱敏。
SSH 客户端本来就在命令的 I/O 中间,这件事就该它来做。rssh 给 LLM 四个工具:
run_command(cmd, explain, side_effect, timeout_s?)
download_file(remote_path, max_mb)
analyze_locally(local_path, task)
load_skill(id)
四道硬墙在 Rust 代码里 enforce ,不靠 prompt 自律:
代码在 src-tauri/src/ai/,欢迎审计。
绝大多数同类产品的"同步",本质是把你的密钥上传到他们的服务器,然后向你保证"端到端加密"。你怎么验证?
rssh 不替你保管秘密:
加密本身没魔法:salted SHA-256 ( 1000 轮)+ 流式异或 + HMAC-SHA256 认证。代码在 src-tauri/src/crypto.rs,一百行能读完。
rssh config set # 配置 token 和仓库
rssh config push # 推送
rssh config pull # 拉取
底层就是 base64 + GitHub API 。想换工具就换,数据就在你的 repo 里。没有锁定,没有订阅,没有"导出到 CSV"按钮。
差异化不仅在做什么,更在不做什么:
不要看营销,问自己三个问题:
1. 你是不是经常用命令行 ssh ?
是 → rssh 共享 known_hosts 和系统钥匙串,零冲突 否 → 用什么都行
2. 你介不介意把私钥上传到第三方?
介意 → rssh 不替你保管,密钥进系统钥匙串 不介意 → 市面上"无脑"体验的付费产品有的是
3. 你需不需要让 AI 帮你排障,但又不想成为搬运工?
需要 → rssh 内置 AI + 四道安全墙 不需要 → 一个普通终端就够了
Releases 提供 macOS ( Intel + Apple Silicon )、Windows 、Linux ( deb/rpm/AppImage )、Android 安装包。
MIT 协议,无登录,无订阅,无广告,无遥测。
一句话总结:rssh 不是又一个想替代 SSH 的 SaaS ,它是个想让你忘记它存在的 SSH 客户端。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.