Mosh vs SSH:手っ取り早い結論
SSH はサーバーにログインするための標準的で広く使われている方法です。Mosh(Mobile Shell)は SSH の上に構築され、SSH が苦手とする 2 つのこと、つまりネットワークの変化に耐えることと、遅延のある接続でも快適に反応することを解決します。安定したネットワークにいるなら、素の SSH だけで十分です。スマートフォンで Wi-Fi とモバイル回線を行き来しているなら、セッションを生かし続ける mosh の能力は本当に役立ちます ── ただしサーバーにインストールが必要で、SSH のいくつかの機能を諦めることが代償になります。
Mosh が加えるもの
Mosh はまず SSH でログインし(そのため通常の SSH 認証を使います)、その後、独自の UDP ベースのプロトコルに切り替えます。この切り替えが 3 つのことをもたらします:
- ローミング。IP が変わっても ── Wi-Fi からモバイル回線へ、新しいネットワークへ ── セッションはそのまま続きます。素の SSH は接続が切れた瞬間に切断されます。
- スリープと切断に耐える。ノートパソコンを閉じても、トンネル内で電波を失っても、戻ってくればセッションはまだそこにあります。
- 即座のタイピング。Mosh はキー入力をローカルでエコーし結果を予測するため、高遅延のリンクでもタイピングが即座に感じられます。
Mosh で諦めるもの
- サーバー(とクライアント)にインストールが必要で、UDP ポート(通常 60000–61000)を開ける必要があります。
- ポートフォワーディングもエージェントフォワーディングもなし ── SSH トンネルに頼っているなら、mosh はそれをやってくれません。
- SFTP/SCP なし ── mosh は対話的なセッション用であり、ファイル転送用ではありません。それには引き続き SSH/SFTP を使います。
- スクロールバックが限られる ── 完全なリモートバッファではなく、ターミナルのバッファに依存します。
スマートフォンには:mosh か、安定したトランスポートか?
モバイルでは、mosh が解決する問題 ── ネットワークが途切れるとセッションが死ぬこと ── は現実です。これに対処する方法は 2 つあります:
- mosh を使う。iOS では Blink Shell の mosh サポートが優れており、パワーユーザーが iPad をノートパソコン代わりにする際にこれを選ぶ大きな理由になっています。
- 安定したトランスポートを使う。Tailscale のようなメッシュ VPN は、移動しても一貫したプライベートアドレスを保つため、すべてのサーバーに mosh を入れなくても通常の SSH 接続がはるかに信頼できるものになります。TermAI はこの道を選んでいます ── mosh ではなく Tailscale を内蔵しているため、安定したアドレスでサーバーに到達し、素早く再接続でき、おまけにターミナル内の AI アシスタントも使えます。
どちらを使うべきか?
- 安定したネットワーク、トンネル/SFTP が必要 → 素の SSH。
- 不安定/モバイルな接続、サーバーを自分で管理 → mosh(例えば iOS の Blink 経由)。
- 不安定/モバイルで、あちこちに mosh を入れずに信頼性が欲しい → Tailscale 上の SSH(TermAI に内蔵)。
よくある質問
Mosh は SSH より安全ですか?
これはセキュリティの話ではありません ── mosh は認証に SSH を使うので、SSH のセキュリティを受け継ぎます。Mosh は接続の回復力と反応性に関するものであり、より強力な暗号化に関するものではありません。
スマートフォンに mosh は必要ですか?
セッションをネットワークの変化に耐えさせたく、かつサーバーに mosh をインストールできる場合だけです。そうでなければ、Tailscale のような安定したトランスポート上の SSH で大半の利点が得られます。
Mosh はポートフォワーディングやファイル転送ができますか?
いいえ。Mosh は対話的なセッション用です。トンネルには SSH を、ファイルには SFTP/SCP を使ってください。
クイックファクト
- SSH:標準、TCP、トンネル + SFTP;ただしネットワークが変わると切断
- Mosh:SSH の上の UDP;ローミング/スリープに耐え、即座のタイピング;サーバーへのインストールが必要、トンネル/SFTP なし
- iOS で mosh を使うなら:Blink Shell
- mosh なしで信頼性を:Tailscale 上の SSH(TermAI に内蔵)
Free on iOS and Android. 5 AI requests/day on the free tier, plus unlimited SSH/SFTP and built-in Tailscale.