自建 iTerm2 中继服务器实测

前几天看到 iTerm2 官方出了个 iPhone 应用叫 Buddy,能在手机上连回 Mac 上已经打开的终端标签页,异地操作同步。我平时在外面用 5G 连回家里的机器,走官方公共中继 relay1/relay2.iterm2.com,从打开 App 到真正进终端,连接加加密两步最少要等五秒,体验确实说不上好。

后来发现中继服务本身是开源的,叫 iterm2-companion-relay,原理是 Mac 和手机各自主动向中继建一条 WebSocket,中继把两条接起来转发加密数据,自己看不到内容。配对用 Ed25519 签名,手机端还有 Apple App Attest 验证,配对记录落 SQLite,重启中继也不丢。既然代码公开,那自托管就是顺理成章的事。我这次没自己一行行写,直接把需求丢给 AI 让它去搭。前提条件其实就三样:一台有公网 IP 的 Linux 机器(群晖这类 NAS 也行)、一个能改 DNS 的域名用来签 TLS 证书、以及能从外部访问的端口,我这边用的是 TCP 18443 加路由器转发。搭完在 Mac 上跑两条命令,再用 Buddy 扫码配对就通了。效果对比很直接:以前从家连回家也要绕地球一圈走公共中继,现在局域网内直连,延迟基本可以忽略,测速环节都没什么可比的。不过要提醒一句,这套目前只在 x86_64 群晖上验证过证书、WebSocket 升级和 Mac 端握手,其他 NAS 架构还没试;自建中继也不会给 Buddy 增加新建标签页之类的客户端功能,它只解决连接路径的问题。我的判断是,如果你经常在外面临时连回 Mac 处理事情,自建中继的收益非常明显,尤其家里本来就有 NAS 或常开的 Linux 机器,成本几乎为零。但如果你只是偶尔用一次,公共中继那几秒等待其实也能忍,没必要为它专门维护一套证书和端口转发。
2

评论

登录后即可发表评论

参与讨论,和出海同行交流想法与经验

还没有评论,来抢沙发吧

说说你的看法,第一条评论最显眼