跟得上你的 SSH 客户端
HostDock 的终端是一个完整的 macOS SSH 客户端:所有服务器的标签在一处,支持跳板机、每台服务器单独的代理和一次性验证码登录。连接断了几秒内就能发现,并自己重连。

能做什么
每台服务器都能开多个标签
一台服务器可以开好几个会话。顶上一条标签栏列出所有服务器的终端,带编号,⌘1–9 直接跳过去。
跳板机
最多经过三台跳板机连到内网的机器。每一跳各自校验主机密钥、各用各的登录方式,界面上显示成「A → B → 这台服务器」。
密码、密钥、两步验证
用密码、私钥(有没有口令都行)登录,或者用键盘交互的方式输一次性验证码。一份保存好的凭据可以给很多台服务器共用。
断了自己重连
按下的键没有回显时,HostDock 会探一下连接,几秒内把标签标成「没有响应」并重连。按回车可以马上重连。
一条连接,样样都用
终端、文件、监控、Docker 共用一台服务器的一条 SSH 连接:只登录一次,服务器上也只看到一个会话。
隐藏地址
一个开关把界面上所有服务器的地址都显示成 ***,截图、录屏、共享屏幕时用。
规格
| SSH 实现 | 纯 Rust(russh)。不调用系统的 ssh,不用 OpenSSL、libssh2 |
|---|---|
| 验证方式 | 密码 · 私钥(可带口令)· 键盘交互(一次性验证码)· 保存的凭据 |
| 密钥类型 | Ed25519(测过)。RSA、ECDSA 由 SSH 库支持 |
| 跳板机 | 最多 3 级,每一级各自校验主机密钥、各自登录 |
| 代理 | SOCKS5 或 HTTP,每台服务器单独设 |
| 主机密钥 | 第一次连接时显示指纹,变了会警告 |
| 导入 | ~/.ssh/config(Host、HostName、User、Port、IdentityFile、ProxyJump)和 JSON |
| 状态栏 | 验证方式、代理、延迟、终端尺寸、已连接时长 |
| 终端字体 | 自带 JetBrains Mono,也可以用本机装的任何字体,9–24 号 |
常见问题
HostDock 能导入我的 ~/.ssh/config 吗?
能。在 HostDock 里选中这个文件,会导入 Host、HostName、User、Port、IdentityFile 和 ProxyJump,带通配符的 Host 段当作默认值,重复的会标出来。Match 和 Include 还不处理。私钥本身不会自动读取,要通过选择文件的窗口添加。
HostDock 支持 SSH 的两步验证吗?
支持。服务器通过键盘交互的方式要一次性验证码的都能用,包括在密码或密钥之后再要的,最多 10 轮。验证方式选「每次询问」,每次连接时都会问你。
HostDock 用的是 Mac 上装的 ssh 命令吗?
不是。HostDock 自己用 Rust 实现了 SSH,不依赖也不读取系统的 OpenSSH 配置,除非你主动导入。
HostDock 的其他功能
把你的服务器收进一个窗口
免费下载,支持 macOS 12 Monterey 及以上。