私は長い間 ssh を使用してきましたが、今は mosh を試してみたいと思っていますが、ドキュメントは最強ではありません。
ターミナルでmoshコマンドを使用して、このsshコマンドをどのように記述しますか??
ssh abc123@spaf.cs.utsa.edu -p 211
moshのドキュメントからの簡単な答えは次のとおりです
mosh --ssh="ssh -p 211" abc123@spaf.cs.utsa.edu
これが機能するには、ターゲット ホストで mosh を使用し、ターゲット ホストのファイアウォール設定で UDP 接続用にクリアされたポート (デフォルトでは 60000 から 61000 の範囲) でリッスンするなど、mosh をセットアップする必要があります。
github の README.md の「仕組み」セクションを参照して ください https://github.com/mobile-shell/mosh
mosh プログラムは user@host に SSH で接続して接続を確立します。SSH は、ユーザーにパスワードを要求するか、公開鍵認証を使用してログインする場合があります。
この時点から、mosh はサーバー マシン上で mosh-server プロセスを (ユーザーとして) 実行します。サーバー プロセスは高い UDP ポートでリッスンし、そのポート番号と AES-128 秘密鍵を SSH 経由でクライアントに送り返します。その後、SSH 接続がシャットダウンされ、ターミナル セッションが UDP 経由で開始されます。
クライアントが IP アドレスを変更すると、サーバーは数秒以内に新しい IP アドレスでクライアントへの送信を開始します。
Mosh が機能するには、クライアントとサーバー間で UDP データグラムを渡す必要があります。デフォルトでは、mosh は 60000 から 61000 の間のポート番号を使用しますが、ユーザーは -p オプションで特定のポートを選択できます。-p オプションは、SSH が使用するポートには影響しないことに注意してください。
-p オプションが SSH で使用されるポートに影響を与えないということはどういう意味ですか? これは、SSH オプションではなく、mosh オプションを指します。言い換えれば、あなたが望むものと私が上であなたに与えたものは基本的に次のように言っています:デフォルトのセットアップがあると仮定します)。
一方、あなたが私たちに mosh -p オプションを
mosh -p 211 abc123@spaf.cs.utsa.edu
これは、mosh に SSH 用に予約されたポートを介して接続を試みるように指示することになり、失敗します。さらに、デフォルトで標準の SSH ポート 22 を介して接続を確立しようとするため、これは絶対に機能しません。も失敗します。つまり、上記は「ポート 22 で SSH を使用して、ポート 211 でリッスンしている mosh サーバーに接続する」ことを示しています。あなたの場合、これらはすべてfalseであるため、機能しません。
したがって、特定の SSH ポートを指定することに加えて、ターゲット ホストで mosh を実行し、デフォルト ポートまたは指定した別のポートでリッスンしていることも確認する必要があります。また、その接続を許可するようにファイアウォール ルールが設定されていることを確認する必要があります。