一个不在家里撒尿的 SSH 客户端

0 阅读4分钟

我受不了市面上 SSH 客户端了,所有工具都想来我家里抢地盘,撒泡尿还不冲

  • 自己维护 host key,我真不懂为啥?
  • 云同步订阅要收费,稍微能理解,但是我没有付费习惯
  • 自己的专有录制格式,为啥呀?
  • 多平台没有移动端

rssh 的设计反过来:尽可能融入你已有的 Unix 工具链

image.png

1. rssh CLI

rssh CLI是一个特殊的存在,你可以在任意终端工具里使用rssh的数据,随时随地rssh open [profile],并且它和 GUI 读同一个 SQLite(~/.rssh/rssh.db 。在 GUI 里加的 Profile,命令行立刻能用;反之亦然。

rssh                     # 列出所有 Profile
rssh ls prod             # 搜索
rssh open gateway-01     # 直接连
rssh add profile         # 交互式新建
rssh open fwd my-tunnel  # 启动命名转发

这意味着你可以把 rssh open foo 写进任何脚本、任何 alias,不需要复制 ssh 配置。

2. 命令块彩色侧栏 —— 零远端配置

在一屏输出里找”上一条命令从哪开始”是终端日常痛点。

Warp 是一个很好的工具,这个问题它解决得漂亮,但它要求你在服务器上改 shell 集成脚本。rssh 选另一条路:纯前端、零远端侵入。

  • 每条命令在左侧画一条彩色竖线,输入和输出同色
  • 下一条命令自动换色(golden-angle HSL,相邻色最大差异)
  • 进入 vim / top / less 等全屏程序时,侧栏变成半透灰色占位
  • 可以在设置里一键关闭

服务端什么都不用装。打开就能用,哪怕连的是别人家的生产堡垒机。

3. 和 ssh 共享 ~/.ssh/known_hosts

这是 rssh 和其他 GUI 客户端最根本的哲学差异。

大部分 SSH GUI 客户端(TermiusTabby…)自己维护一套 host key 数据库。结果是:你在命令行用 ssh 信任过的主机,换到 GUI 里再认一次;GUI 里删掉的指纹,命令行里还在。

rssh 直接读写标准的 ~/.ssh/known_hosts 文件ssh-keygen -R <host> 删掉的条目 rssh 立刻知道;rssh 里新信任的主机,ssh 也立刻能连。

4. 数据安全 —— RSSH不保存你的任何数据,并且实现了多端同步

本地密钥:保存在你的keychain软件中,我相信你足够信任他,比起任何三方软件。

远端密钥:你可以选择不上传,换一种方式提供给你的另一台设备。密钥不常变,这个工作量是极少的。

远端数据:把配置(Profile、凭证、转发规则)加密推到你自己的 GitHub 私有仓库。多台设备共享同一套连接配置,不需要注册任何第三方服务,不需要订阅。

rssh config set     # 配置 token + repo
rssh config push    # 推
rssh config pull    # 拉

GUI 里有对应的可视化操作界面。底层就是 base64 编码 + 标准 GitHub API,想审计或迁移随时可以。

5. 终端 → GUI 的 OSC 7337 集成

在 rssh 的任何终端里(包括本地终端)打:

rssh open my-server

GUI 会立刻新开一个 tab 连过去。原理是 CLI 往 stdout 写一个标准的 OSC 转义序列,rssh 的 xterm 解析到就触发动作。不是自定义协议,是标准终端能力的合理利用。

这个能力让你可以在 .zshrc 里写 alias、在脚本里用、在 tmux 里用——随便哪里,反正是文本。

6. asciicast v2 格式录制

rssh 的会话录制用的是 asciinema 的标准 .cast NDJSON 格式,不是专有格式。这意味着你录下来的任何一段会话,可以直接 asciinema upload、直接嵌到网页、直接被任何 asciinema 工具消费。

7. 其他开箱即用的能力

不单列,但都实打实干活:

  • 关键词高亮:自定义规则,ERROR / WARN / INFO 自动染色,14 种预设
  • SFTP 浏览:Cmd+O 唤起,拖拽上传下载
  • 命令片段:Cmd+S 唤起可复用命令库
  • 端口转发:本地 / 远程,实时流量统计
  • 跨全平台:macOS(Intel + Apple Silicon)、Windows、Linux(deb/rpm/AppImage)、Android

下载

Releases 页面 有全平台安装包。没有订阅、没有登录、没有广告。

源码 MIT,欢迎 issue 和 PR。

设计哲学一句话:工具要服务你已有的工作方式,而不是逼你为工具让步。