SSH が接続されません - 操作がタイムアウトしました

SSH が接続されません - 操作がタイムアウトしました

今朝からリモコンに接続しようとすると次のエラーメッセージが表示されますUbuntu 14.04 LTSマシン経由sshからMacBook Air ヨセミテ 10.10.1

ssh_exchange_identification: read: Operation timed out

フラグを使用すると、-vvv次の詳細なメッセージが表示されます。

OpenSSH_6.2p2, OSSLShim 0.9.8r 8 Dec 2011
debug1: Reading configuration data /etc/ssh_config
debug1: /etc/ssh_config line 20: Applying options for *
debug1: /etc/ssh_config line 102: Applying options for *
debug2: ssh_connect: needpriv 0
debug1: Connecting to XXX.XXX.XXX.XXX [XXX.XXX.XXX.XXX] port 22.
debug1: Connection established.
debug1: identity file /Users/felix/.ssh/id_rsa type -1
debug1: identity file /Users/felix/.ssh/id_rsa-cert type -1
debug1: identity file /Users/felix/.ssh/id_dsa type -1
debug1: identity file /Users/felix/.ssh/id_dsa-cert type -1
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_6.2
ssh_exchange_identification: read: Operation timed out

この接続は何ヶ月も問題なく機能していました。私は何の問題も経験したことがありません。他の解決策としては、ここそしてここ役に立たなかった。

この問題を解決する方法について何か提案はありますか?

答え1

debug1: Local version string SSH-2.0-OpenSSH_6.2
ssh_exchange_identification: read: Operation timed out

デバッグ トレースによれば、リモート SSH サーバーへの接続は成功しており、サーバーは接続を切断していませんが、ソフトウェア識別文字列を送信していません。これはクライアントとサーバーによって最初に実行される処理であり、クリア テキストで実行されます。

問題は次の 3 つのいずれかに集約されると思います。

  1. あなたとサーバーの間にあるネットワーク デバイスが接続を妨害しています。たとえば、リモート ホストが NAT ルーターの背後にある場合、ポート 22 のポート転送が誤って設定され、間違ったサービスに接続している可能性があります。

  2. リモートホストのSSHサーバープログラムがハングしているか、誤動作している可能性があります。ホストが過負荷状態または仮想メモリ不足の場合などに、このようなことが起こることがあります。または、サーバーが次のようなものを使用している可能性があります。TCP ラッパークライアント IP に対して DNS クエリが実行されており、解決に長い時間がかかっています。

  3. リモート ホストは通常​​とは異なる方法で設定されており、ポート 22 で実行されているサービスは SSH サーバーではありません。

サーバーにアクセスできる場合は、トラブルシューティングをそこに集中してください。SSH サーバーのログを探します。ログがあるはずなので/var/log、失敗した接続試行について何か記録されているかどうかを確認します。サーバーから localhost に ssh を実行して、正常に動作するかどうかを確認します。

サーバーへのルート アクセス権がある場合は、 のデバッグ インスタンスを起動して、sshdクライアントが接続したときに何がログに記録されるかを確認できます。通常のsshdサーバーを停止し、ルート ターミナル ウィンドウで を実行します/path/to/sshd -d。これにより、sshd のコピーが実行され、1 つの接続が受け入れられ、ターミナル ウィンドウにデバッグ情報が出力されます。問題が再現されるかどうかを確認し、サーバーがログに記録した内容を調べます。

通常の ssh サーバーをオフラインにできない場合は、別のポートで sshd を実行できます。/path/to/sshd -p 42 -dポート 42 で待機している sshd のコピーを実行します。ssh クライアントを実行するときは、同じポート番号を指定します。ssh -p 42 user@host問題の原因が干渉するネットワーク デバイスである場合、ポート 22 への接続とは異なる動作をする可能性があります。

関連情報