このトピックでは、次の問題を解決する方法について説明します。SSHクライアントからLinux Elastic Computer Service (ECS) インスタンスに接続すると、「ssh_exchange_identification: read: Connection reset by peer」というエラーメッセージが表示されます。
問題の説明
SSHクライアントからLinuxインスタンスに接続すると、正しいユーザー名とパスワードを使用していても、次のエラーメッセージが表示されます。
ssh_exchange_identification: read: Connection reset by peer.
sshd[11949]: refused connect from 192.168.0.0 (192.168.0.0).原因
この問題は、次の理由で発生する可能性があります。
インスタンス上のTCPラッパー設定ファイルにエラーが含まれています。 TCP Wrapperは、ネットワークサービスへのアクセスを制御するためにLinuxオペレーティングシステムで使用されるツールです。 ほとんどの場合、TCP Wrapperのtcpdデーモンは、
/etc/hosts.allowおよび/etc/hosts.de nyファイルをチェックして、IPアドレスまたはホストからのTCP接続を許可するかどうかを判断します。/etc/hosts.allowまたは/etc/hosts.de nyファイルに設定エラーが含まれている場合、SSH接続で例外が発生します。 この問題を解決するには、/etc/hosts.allowまたは/etc/hosts.de nyファイルを変更します。 詳細については、このトピックの「方法1: TCPラッパー構成ファイルの変更」セクションをご参照ください。インスタンス上のliblz4.so.1ファイルが失われました。 このファイルはliblz4.so.1.7.5ファイルへのシンボリックリンクです。 liblz4.so.1ファイルが失われると、SSH接続で例外が発生します。 詳細については、このトピックの「方法2: liblz4.so.1シンボリックリンクの作成」を参照してください。
オンプレミスデバイスが接続されているネットワークで接続エラーが発生します。 ネットワークの接続エラーを確認する必要があります。 詳細については、このトピックの「方法3: オンプレミスデバイスのネットワークの確認」をご参照ください。
解決策
方法1: TCPラッパー設定ファイルの変更
設定ファイルを変更して、インスタンスを再起動して設定を有効にすることなく、アクセス制御ポリシーを動的に設定できます。 このセクションでは、/etc/hosts.de nyファイルを変更する方法について説明します。
VNC (Virtual Network Computing) を使用してECSインスタンスに接続します。
詳細については、「VNCを使用したインスタンスへの接続」をご参照ください。
次のコマンドを実行して、
/etc/hosts.allowまたは/etc/hosts.de nyファイルにall:all:denyやsshd:<IP address>:denyなどの接続を拒否する設定が含まれているかどうかを確認します。cat /etc/hosts.denyファイルに
all:all:denyやsshd:<IP address>:denyなどの設定が含まれていない場合、TCP Wrapperによる問題は発生しません。 この場合、他のソリューションを使用して問題をトラブルシューティングします。ファイルに
all:all:denyやsshd:<IP address>:denyなどの設定が含まれている場合は、次の手順に進みます。 この例では、/etc/hosts.de nyファイルに設定が含まれています。
/etc/hosts.de nyファイルを変更します。/etc/hosts.de nyファイルを開きます。all:all:denyまたはsshd:<IP address>:denyを含む各行の前に番号記号 (#) を追加して、行をコメントアウトします。# all:all:deny # sshd:<IP address>: deny
方法2: liblz4.so.1シンボリックリンクの作成
VNCを使用してECSインスタンスに接続します。
詳細については、「VNCを使用したインスタンスへの接続」をご参照ください。
次のコマンドを実行してliblz4.so.1.7.5ファイルを照会します。
find / -name "liblz4*"liblz4.so.1.7.5ファイルが存在しない場合は、正常なECSインスタンスから現在のECSインスタンスの
/usr/lib64/ディレクトリにliblz4.so.1.7.5ファイルをコピーします。次のコマンドを実行して、シンボリックリンクを作成します。
ln -s liblz4.so.1.7.5 liblz4.so.1
方法3: オンプレミスデバイスのネットワークを確認する
オンプレミスデバイスを4Gモバイルネットワークなどの別のネットワークに接続し、オンプレミスデバイスからインスタンスに接続できるかどうかを確認します。
インスタンスに接続できる場合、元のネットワークに接続エラーがあります。 エラーのトラブルシューティング。