UbuntuからAWS EC2インスタンスへSSH接続する方法

はじめに

AWS ELBの学習のために、EC2を起動したかった。 かつてはWindowsから操作していたのでTeraTermが使用できたが、Linux(Ubuntu22.04)から操作を行うようになったので、起動に戸惑ってしまった。 そのときに発生したエラー内容と解決策を備忘録として残す。

環境

  • Ubuntu22.04

まとめ

  • TeraTermWindows用アプリケーションなので、Ubuntuからは使えない

    • sshコマンドを使う
  • AWSマネジメントコンソールからダウンロードしたpemファイルはPermissionが664なので、sshコマンドでエラーが発生してしまう

    • 600に変更する

SSH接続に使用したコマンド

$ ssh -l ec2-user -i ./example_name.pem xx.xxx.xxx.xxx

オプション

  • -l ユーザ名
  • -i 鍵ファイルの指定

エラーメッセージ

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@         WARNING: UNPROTECTED PRIVATE KEY FILE!          @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0664 for './example_name.pem' are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.
Load key "./example_name.pem": bad permissions
ec2-user@xx.xxx.xxx.xxx: Permission denied (publickey,gssapi-keyex,gssapi-with-mic).

エラーを解決するコマンド

$ chmod 600 ./example_name.pem

参考