Восстановление резервной копии Amazon EC2

Мне нужно знать любой способ доступа к запущенному экземпляру в Amazon EC2.

  • У меня нет оригинальной папки с ключом ".pem"
  • У меня есть доступ к консоли управления aws
  • Прекращение/перезагрузка невозможна.

ближайший к моему вопросу, который я нашел, был this, но я надеюсь, что с тех пор все изменилось.

Есть ли способ загрузить этот файл pem или назначить новую пару ключей?

Ответ 1

Ключи можно загружать только один раз из Amazon, предположительно по соображениям безопасности. То, что вы можете сделать, назначает один из ваших Elastic IP экземпляру и маршрутизирует трафик через это нормально. Снимите экземпляр и создайте дубликат с новой Keypair. Переключите Elastic IP на новый экземпляр. Это не особенно элегантно, но намного меньше времени простоя, чем полное завершение работы.

Примечание. Если вы назначаете Elastic IP экземпляру, он будет переопределять текущий общедоступный IP-адрес, поэтому вам также нужно будет обновить DNS.

Ответ 2

На самом деле вы можете назначить новую пару ключей экземпляру ТОЛЬКО ЕСЛИ вы остановите экземпляр, отсоедините корневой раздел (обычно/dev/sda1) и присоедините его к другому экземпляру. После этого у вас будет доступ к /home/ubuntu/.ssh/authorized_keys. Вы можете создать новый ключ .pem через командную строку и вставить его в этот файл. Затем вы отсоединяете этот раздел и снова присоединяете его к исходному экземпляру. Используйте новый сгенерированный ключ для подключения к нему.

Подробнее об этих шагах можно узнать в Google или здесь: http://www.eng.cam.ac.uk/help/jpmg/ssh/authorized_keys_howto.html

Ответ 3

Когда вы настраиваете AMI вперёд, настройте cloud-init. При загрузке это приведет к потере пользовательских данных и их обработке соответствующим образом. Поэтому вы можете вставить что-то вроде следующего в поле данных пользователя, когда AMI остановлен:

mkdir -p /root/.ssh/

cat > /root/.ssh/keyname.pub <<EOF_PUB
ssh-rsa yourkeydata== [email protected]
EOF_PUB

cat /root/.ssh/keyname.pub >> /root/.ssh/authorized_keys;

Опять же, если ваши пакеты cloud-init не установлены и запущены, это будет неэффективно. Мне не раз приходилось восстанавливать AMI от разработчиков, которые не сохраняют свои ключи. Это находка.

Ответ 4

Вы можете перейти на панель инструментов EC2, нажать "X Key Pair" (X - число), создать пару ключей. Поэтому дайте ему имя, и появится возможность его загрузить.