SSH 経由で AWS EC2 インスタンスに接続できなくなりました。

SSH 経由で AWS EC2 インスタンスに接続できなくなりました。

Amazon Linux 2 を実行する AWS EC2 インスタンスがあります。数日前まで、インスタンスは正常に実行されました。

その後、Ansible Playbookを使用して新しいバージョンのソフトウェアをインストールします。私たちは以前は何の問題もなく同じスクリプトを何度も使用してきました。ただし、今回はプレイブックに正常な実行が表示された後は、SSH経由でインスタンスに接続できなくなります。 SSH は以下を出力します。

$ ssh -vvv -i .ssh/ourkey.pem [email protected]
OpenSSH_7.2p2 Ubuntu-4ubuntu2.8, OpenSSL 1.0.2g  1 Mar 2016
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: Applying options for *
debug2: resolving "10.130.35.176" port 22
debug2: ssh_connect_direct: needpriv 0
debug1: Connecting to 10.130.35.176 [10.130.35.176] port 22.
debug1: connect to address 10.130.35.176 port 22: Connection refused
ssh: connect to host 10.130.35.176 port 22: Connection refused

AWS コンソールで EC2 インスタンスを停止して再起動しようとしましたが、まだ SSH 経由で接続できません.

接続できないインスタンスと同じVPCとサブネット上の他のインスタンスにSSH経由で接続できるため、これはセキュリティグループの問題ではありません。どちらのインスタンスもまったく同じセキュリティグループを持ちます。

私は別のものを見つけました。回答破損したファイルが問題を/etc/ssh/sshd_config引き起こす可能性があります。アクセスできないインスタンスからEBSボリュームを分離し、SSH経由でアクセス可能な別のインスタンスに接続しました。その後、ボリュームの/etc/ssh/sshd_configファイルをSSHアクセス権限を持つインスタンスの/etc/ssh/sshd_configファイルと比較して同じことがわかりました。

/etc/fstabまた、これが犯人である可能性があるという別の投稿を見たのでボリュームの内容も見てみましたが、大丈夫に見えます。

#
UUID=ec9a77e7-7b7b-4421-a91c-9142206a844a     /           xfs    defaults,noatime  1   1

また、sshd ログが見つかりましたが、見つかった唯一のログは /var/log/secure にありました。

Dec  4 19:21:33 ip-10-130-35-176 sshd[3265]: Received signal 15; terminating.
Dec  4 20:10:23 ip-10-130-35-176 sshd[3280]: Server listening on 0.0.0.0 port 22.
Dec  4 20:10:23 ip-10-130-35-176 sshd[3280]: Server listening on :: port 22.

AWS コンソールの EC2 インスタンスで、アクション > 監視とトラブルシューティング > システムログのインポートの下に SSH デーモンが起動したことを示す行があります。

Started OpenSSH server daemon.

また、ログインプロンプトも表示されるため、インスタンスが実行されているように見えます。

Amazon Linux 2
Kernel 5.10.96-90.460.amzn2.x86_64 on an x86_64

ip-10-130-35-176 login: 

私ができないことの1つは、AWSコンソールを使用してインスタンスに接続することです。 EC2 Instance Connect、Session Manager、および EC2 シリアルコンソール方式は、私たちのインスタンスでは動作しません。

また、誰かがリモートでログインしようと提案したが、それもうまくいかなかったという記事を見ました。

$ telnet 10.130.35.176 22
Trying 10.130.35.176...
telnet: Unable to connect to remote host: Connection refused

私ができる唯一のことは、SSHを介して接続できる他のEC2インスタンスにEBSボリュームをマウントすることでした。このインスタンスにSSHで接続できない理由を理解するために何を確認できますか?

ベストアンサー1

おすすめ記事