自由気ままに書いちゃおう

好きなことをつらつらと・・・

【AWS】【Ubuntu】Ubuntu 22.04 LTSにSSH接続/ログインできない

少しはまったので、備忘を兼ねて記載しております。

■はじめに

Ubuntuで少し作業したく、EC2で以下の通りAMIを選択し、特段変わった設定をすることなくEC2起動状態までいけたのですが、TeraTerm使ってUbuntuにSSHログインができない・・・という事象に悩まされたので、その解決策を記載しております。

選んだAMIは以下です。

■SSHログインができなかった理由

Ubuntu22.04LTSのSSH サービスでssh-rsa がデフォルトで無効になっているためです。。。
(全然知らなかった)

■解決策

ssh-rsaを有効にすれば、いつも通りTeraTermを使ってSSHログイン可能になります。
※ssh-rsaが使えなくなっているだけなので、ECDSAを使ってのSSHログインはできます。
今回はPowershellからSSH接続を行い、設定変更後、TeraTermでのSSHログイン確認を行う流れです。

1.Powershellを起動します。

2.キーペアを使うため、キーペアの保管場所を確認致します。
※以降は、カレントディレクトリにキーペアがあるものとして記載しております。

3.以下コマンドを実行します。

 ssh -i key-pair.pem ubuntu@UbuntuサーバのグローバルIPアドレス

4.Ubuntuサーバにログインできたことを確認します。

5.引き続きPowershellでUbuntuにログインしている状態で以下コマンドを実行します。


sudo su -
cp -p /etc/ssh/sshd_config /etc/ssh/sshd_config_org
sed -i '1s/^/PubkeyAcceptedAlgorithms=+ssh-rsa\n/' /etc/ssh/sshd_config
grep PubkeyAcceptedAlgorithms /etc/ssh/sshd_config
systemctl restart ssh.service
systemctl status ssh.service
exit
exit


6.TeraTermからUbuntuサーバにログインしてみます。


以上です。