AWS EC2でログイン手段を失った既存のインスタンスに自分のSSH公開鍵を入れる方法

  1. 対象のインスタンスから[ボリューム]をデタッチする
    戻せるように、どのボリュームがどのインスタンスのどのデバイス(/dev/xvda1など)にアタッチされていたのかはメモしておく。またはボリュームに分かるように名前を付けておく。
  2. ログイン可能な他のEC2インスタンスにアタッチする
    アタッチ先のインスタンスはrunningでも問題ないが同じアベイラビリティゾーンにある必要がある
  3. アタッチしたインスタンスにログインして、先ほどアタッチしたボリュームを手動でマウントする。
    例:sudo mount /dev/xvdf /mnt
  4. .ssh/authorized_keysに公開鍵情報を追加する
  5. アンマウントする
  6. デタッチする
  7. 元のインスタンスにアタッチする