网络中断,Mosh 会话依然在线

设备休眠、信号中断、从 Wi-Fi 切到蜂窝网络,会话依然在线。SwiftServer 经由 SSH 替你启动 Mosh。

Download on the App StoreDownload on the Mac App Store

锁屏,过一会儿再回来

合上盖子,换个网络,回来时 shell 仍在原处:同一个目录,同一个程序。

  • 按键即时显示,服务器确认之前带下划线。

细节

经 SSH 启动

把机器设为 Mosh 模式,SwiftServer 先经 SSH 登录,再转入 UDP。

按机器设置

程序路径与 UDP 端口范围可逐台设置,诊断会指出卡在哪一步。

穿过堡垒机或代理

SSH 启动可经由跳板机或连接代理。

免费

机器与会话数量不限,随时在 Mosh 与 SSH 之间切换。

让 Mosh 会话运行起来

  1. 01

    在服务器上安装 mosh

    apt install mosh、dnf install mosh,或你的包管理器中对应的命令。SwiftServer 需要服务器上已有 mosh-server,它不负责安装。

  2. 02

    放行 UDP 端口

    在服务器防火墙上放行入站 UDP 60000 到 61000,或者把范围收窄,并在 SwiftServer 中设为同一个范围。

  3. 03

    设置终端模式

    在机器设置的「终端」部分,把「连接」设为 Mosh。

  4. 04

    连接

    照常启动终端。SwiftServer 先通过 SSH 登录,再把会话交给 Mosh。

  5. 05

    离开即可

    锁屏、换网络,再回来。会话接着刚才的位置继续。

Mosh 文档

常见问题

Mosh 是什么?

Mosh 是 mobile shell 的缩写,一种远程终端协议。它通过 SSH 启动,之后在 UDP 上运行,并带有自己的状态同步机制,所以 IP 地址变化、设备休眠,以及会让 SSH 断开的丢包,都不会终止会话。

用 Mosh 需要装东西吗?

服务器上需要:mosh-server,主流发行版的 mosh 包里都带。设备上不需要,SwiftServer 自己实现了客户端。

Mosh 用哪些端口?

默认是 UDP 的 60000 到 61000 范围,一个会话占用一个端口。范围可以按机器配置,最初的引导走你平常的 SSH 端口。

SwiftServer 里的 Mosh 免费吗?

免费。Mosh 属于免费版,机器数量和同时打开的会话数量都不设上限。

可以通过跳板机用 Mosh 吗?

可以,说的是 SSH 引导这一步,跳板机路由、SOCKS5 或 HTTP CONNECT 代理都行。UDP 会话本身是直连的,所以这台机器还需要一个你的设备能直接访问的地址;地址不同的话,为它单独设置 UDP 主机。

Mosh 会话起不来怎么办?

Mosh 诊断会显示引导停在了哪一步。常见原因是 PATH 里没有 mosh-server、UDP 范围被防火墙挡住,或者 NAT 不保持映射。

合上盖子,会话仍在等你。

iPhone、iPad 和 Mac 上免费使用。

Download on the App StoreDownload on the Mac App Store