EC2のキーペアを無くしてしまった時、既存のインスタンスに別のキーペアを登録できます。
新しいインスタンスを作成する必要はありません。
例としてlinux/MacOSの場合の手順を示します。
新しいキーペアを作成する
新しいキーペアの作成は必須ではありません。
既存の別のキーペアを使用する場合はスキップしてください。
-
AWSマネジメントコンソールにアクセス
-
EC2
>ネットワーク&セキュリティ
>キーペア
へ移動 -
pemファイルがダウンロードされる
-
pemファイルを適当なディレクトリに移動し、適切な権限を設定する
$ mv xxxxx.pem ~/.ssh/ $ chmod 400 ~/.ssh/xxxxx.pem
Windowsの場合
公開キーを作成する
$ ssh-keygen -y -f ~/.ssh/xxxxx.pem
- 出力された公開キーを「ssh-rsa 」も含めて全てコピーしておく
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQClKsfkNkuSevGj3eYhCe53pcjqP3maAhDFcvBS7O6V
hz2ItxCih+PnDSUaw+WNQn/mZphTk/a/gU8jEzoOWbkM4yxyb/wB96xbiFveSFJuOp/d6RJhJOI0iBXr
lsLnBItntckiJ7FbtxJMXLvvwJryDUilBMTjYtwB+QhYXUMOzce5Pjz5/i8SeJtjnV3iAoG/cQk+0FzZ
qaeJAAHco+CY/5WrUBkrHmFJr6HcXkvJdWPkYQS3xqC0+FmUZofz221CBt5IMucxXPkX4rWi+z7wB3Rb
BQoQzd8v7yeb7OzlPnWOyN0qFU0XA246RA8QFYiCNYwI3f05p6KLxEXAMPLE
Windowsの場合
EC2インスタンスのユーザーデータを変更する
- EC2インスタンスを停止
-
アクション
>インスタンスの設定
>Edit user data
をクリック
- すでに定義されたユーザーデータがある場合は、一旦どこかへ退避しておく
- ユーザーデータに下記のスクリプトを貼り付ける
Content-Type: multipart/mixed; boundary="//"
MIME-Version: 1.0
--//
Content-Type: text/cloud-config; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment; filename="cloud-config.txt"
#cloud-config
cloud_final_modules:
- [users-groups, once]
users:
- name: username
ssh-authorized-keys:
- PublicKeypair
-
users.name と PublicKeypair を修正して「保存」をクリック
-
インスタンスを起動
-
起動後、ダウンロードしたpemファイルを使用してssh接続出来ることを確認する
ssh -i ~/.ssh/xxxxx.pem ec2-user@xxx.xxx.xxx.xxx
-
インスタンスを停止
-
先ほど貼り付けたスクリプトを公開キーを含め全て削除する
- 退避したユーザーデータがある場合は貼り付ける
-
「保存」をクリック
-
インスタンスを起動する