AWS EC2 で作成した Ubuntu Server 22.04 LTS
インスタンスに Tera Term
を使った SSH接続ができず、詰みかけたので備忘録として残します。
環境
今回の環境は下記のとおりです。
- ホストOS:Windows 11 Pro
- Tera Term:Ver 4.106
現象
AWS EC2 で作った Ubuntu Server にアクセスする場合、本来であれば下記の情報で接続ができるはずです。
しかし、なぜか接続ができませんでした!\(^o^)/オワタ
- ユーザー名:ubuntu
- パスフレーズ:空欄
- 秘密鍵:インスタンス作成時に設定したキーペア(.ppkファイル)
原因と解決方法
この原因は Ubuntu の OS アップデートで SSH 接続時のセキュリティが強化され、 SHA-1 RSA認証
がデフォルトで無効化されたためです。
そして、 Teraterm Ver 5.0 beta 1
以前のバージョンでは rsa-sha2-256
や rsa-sha2-512
のプロトコルが利用できないため、認証に失敗します。
解決方法は下記の2通りがあります。
- Tera Term をアップデートする。
- SSH の設定を変更し、
SHA-1 RSA認証
を有効化する。
セキュリティ上の問題があるため、素直に Tera Term のアップデートすることをオススメしますが、何らかの理由で古いバージョンの Tera Term を使う必要がある人向けに、2つ目の方法を解説します。
EC2 Instance Connect の起動
EC2 Instance Connect を使って SSH の設定を変更し、 SSH接続ができるようにします。
EC2 Instance Connect
が起動したら、ターミナルと同様にコマンド操作ができるようになります。
SSH の設定変更
sshd_config
をエディタで開きます。
sudo nano /etc/ssh/sshd_config
最終行に下記を追加します。
PubkeyAcceptedAlgorithms=+ssh-rsa
SSH の再起動
SSH を再起動します。
sudo systemctl restart sshd
SSH アプリケーションでの接続確認
今回は Tera Term を使って接続確認を行いました。
ホスト(T)
に EC2 の パブリック IPv4 アドレス
を入力し、 OK
をクリックします。
ユーザー名(N)
に ubuntu
を入力します。
※デフォルトから変更してない場合
認証方式
は RSA/DSA/ECDSA/ED25519鍵を使う
にチェックを入れ、 EC2 の キーペア
を選択します。(.ppkファイル)
参考文献
下記のサイトを参考にさせて頂きました。