リモートシステムを停止するとSSHがハングする

リモートシステムを停止するとSSHがハングする

私はうまく使いました

ssh -q -i pubkey [email protected] 'halt'

何年もの間、Linux ボックスから FreeBSD システム (FreeNAS) を停止してきました。

突然、何もないところからこれが機能しなくなりました。このコマンドを実行すると、ssh が永久にハングします。これはバックアップ スクリプトで使用されているため、これは大惨事です。

突然このようなことが起こるのはなぜでしょうか? 問題はサーバー側 (FreeBSD) とクライアント側 (Linux) のどちらにある可能性が高いでしょうか。クライアント側でこれを修正するにはどうすればよいでしょうか?

答え1

SSH クライアント構成を確認してください。クライアントに対してTCPKeepAliveが設定されていない必要があります。no

答え2

手動で SSH 接続してみましたか?

ssh -i pubkey [email protected]

私の推測では、何らかの理由でクライアントの known_hosts が変更、削除されたなど、あるいはそのエントリが一致しなくなった可能性があります。openssl がサーバー側で変更 (アップグレード?) された場合、known_hosts エントリは一致しません。

したがって、公開鍵を使用して ssh を実行すると、known_hosts が存在しない場合は次のようになります。

ホスト '192.168.200.122 (192.168.200.122)' の信頼性を確立できません。RSA キー フィンガープリントは fa:7c:54:45:70:c2:70:f9:f2:3c:c9:75:4d:83:10:5b です。接続を続行しますか (はい/いいえ)?

そしてそれはあなたが受け入れるのを待っている

一致しない場合はこれが表示されます

test:~/.ssh # ssh 192.168.200.122 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ 警告: リモート ホスト ID が変更されました! @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 何者かが不正行為を行っている可能性があります! 誰かが現在、あなたの通信を盗聴している可能性があります (中間者攻撃)! RSA ホスト キーが変更された可能性もあります。リモート ホストから送信された RSA キーのフィンガープリントは fa:7c:54:45:70:c2:70:f9:f2:3c:c9:75:4d:83:10:5b です。システム管理者に問い合わせてください。このメッセージを削除するには、/root/.ssh/known_hosts に正しいホスト キーを追加してください。/root/.ssh/known_hosts 内の問題のあるキー:1 192.168.200.122 の RSA ホスト キーが変更されたため、厳密なチェックを要求しました。ホスト キーの検証に失敗しました。test:~/.ssh #

手動で試してください。存在しない場合は、受け入れる必要があります。するとknown_hostsエントリが作成され、次にsshするときには問題ないはずです。

一致しない場合は、~/.ssh/known_hosts を編集して、そのホストのエントリを削除します。その後、手動で再度 ssh で接続するときに、それを受け入れて known_hosts エントリを再作成します。

頭に浮かぶのはこれだけです。それがすべてだといいのですが!

関連情報