2026 Mac mini リモート SSH 安定化:autossh、Mosh、ControlMaster、keepalive
ProxyMac の最寄りノードは正しくても、デプロイ途中で SSH が切れたり scp が止まったりするなら、それは安定性の問題です(生の RTT だけではありません)。本稿では素の OpenSSH、ControlMaster、autossh、Mosh を比較し、keepalive 設定例とリリース前 5 分チェックをまとめます。遅延対策はクロスリージョン遅延・ノード選定ガイドと併用してください。
対象読者
レンタル Mac mini M4 上で長時間シェルを張る CI、越境スクレイピング、OpenClaw、越境デザインチームなど。NAT のアイドル切断、スリープ、Wi‑Fi ローミング、企業プロキシと UDP の相性が典型的な原因です。HK/JP/KR/SG/US いずれのノードにも適用できます。
よくある障害
- アイドルタイムアウト:60–180 秒無通信で NAT がエントリ削除。
- スリープ/ローム:クライアント側ポートが失われる。
- MTU ブラックホール:ping は通るが SCP が固まる。
- 半開トンネル:親 SSH 終了で子が残る。
ServerAliveInterval 30、ServerAliveCountMax 3。スタック比較
| 方式 | 耐断 | 時間 | 用途 | 注意 |
|---|---|---|---|---|
| 素 SSH | ✗ | 0 | 単発 | 自動復旧なし |
| ControlMaster | △ | 5 分 | 大量 git/scp | マスター依存 |
| autossh | ✓ | 15 分 | 常時トンネル | 導入要 |
| Mosh | ✓✓ | 10 分 | 悪 Wi‑Fi | UDP 必須 |
クライアント調整(5 ステップ)
- RTT を
ping。>120ms なら先にプラン/ノードを見直す。 ~/.ssh/configに keepalive を記載(英語版と同じブロック)。- 高並列なら ControlMaster + ControlPersist。
- SCP 停止時は MTU や
IPQoSを試す。 - 切り分けは
ssh -vvv、チケットはヘルプへ。
autossh 例
AUTOSSH_GATETIME=0 autossh -M 0 -N -D 1080 user@host。SOCKS はプロキシ出口ガイド参照。
Mosh
対話シェル向け。大きな rsync は SSH のまま。UDP 60000–61000。企業網で UDP 不可なら autossh へ。
5 分チェック
| # | 作業 | 合格基準 |
|---|---|---|
| 1 | ping | ロスほぼゼロ |
| 2 | ssh -G | grep alive | ≤30 |
| 3 | tmux | 長時間ジョブ継続 |
| 4 | 出口確認 | 国がノードと一致 |
| 5 | Runbook | 担当と文書化 |
ControlMaster のソケット衛生、ControlPath 掃除、踏み台の入れ子、HK/JP/KR/SG/US へ向かう不安定 WAN での MUX 判断を 2026 年版でまとめた記事は SSH ControlMaster 多重化ガイド を参照してください。
FAQ
ControlMaster は不安定?
性能とトレードオフ。ssh -O exit でリセット。
VNC だけ残る理由
トラフィックパターンが異なり NAT に見える「活動」が違う。
OpenClaw との関係
遠隔編集の土台は SSH。API 側はトラブルシュートを。
Mac mini M4 の意味
ネイティブ macOS とユニファイドメモリで sshd とインデックスが干渉しにくい。最寄りノード変更でジッタ削減も。料金とVNCを参照。