Назад | Перейти на главную страницу

Могу ли я подключиться к своему экземпляру сервера Amazon EC2 по SSH, если у меня нет файла .pem с момента создания экземпляра?

Я работаю с некоторыми серверами Amazon EC2, которые уже работают, и мне нужно подключиться к серверам по SSH. У меня нет ключей, которые были сгенерированы при первой настройке серверов (кто-то сделал это задолго до меня). Могу ли я попасть на серверы без файлов ключей?

FWIW До сих пор я пробовал много вещей для SSH в коробке, включая создание новых пар ключей на панели управления EC2, и, похоже, ничего не работает. Это сообщение службы поддержки Amazon AWS и этот ответ Кажется, это указывает на то, что мне не повезло, если я не хочу создать AMI моего текущего сервера, а затем использовать его для создания экземпляра целого нового экземпляра сервера EC2 (просто чтобы получить файл .pem, сгенерированный в то время). Неужели это единственный способ попасть в ящик на данный момент ?!

Вкратце: да, можно, но не без работы.

Вам нужно будет сделать следующее:

(Для этих шагов предположим, что машина, к которой вы не можете подключиться, называется server-01.)

Прежде чем приступить к этим шагам, сделайте снимок своего сервера.

  1. Запустите новый временный экземпляр. Назовите его сервер-02.
  2. Остановить server-01. Не прекращайте это, просто прекратите.
  3. Отключить корень (/) Том EBS с сервера-01 и прикрепите его к серверу-02 как, скажем, /dev/sdb.
  4. Войдите в server-02 и запустите: $ mkdir /mnt/temp && mount /dev/sdb /mnt/temp. Это позволит смонтировать корневой раздел server-01 внутри (временного) server-02.
  5. Теперь вы сможете: $ vi /home/<user>/.ssh/authorized_keys и скопируйте / вставьте свой открытый ключ. Когда вы это сделаете, сохраните и закройте файл.
  6. Теперь запустите: $ cd / && umount /mnt/temp для размонтирования корневого раздела server-01 с server-02.
  7. Теперь просто отключите этот том от server-02, снова присоедините его к server-01, а затем запустите server-01. Когда он запустится, вы снова сможете подключиться по ssh.

Просто совет, прежде чем кто-либо попытается EEAAответ,

Если вы не запускали iptables save или iptables-save команду, чтобы сохранить ваши конфигурации, затем просто перезапустите сервер. Цитируя этот ответ на AskUbuntu, Я узнал, что iptables сохраняет ваши конфигурации в самой RAM, если вы явно не сохраните их в файлах конфигурации.

Экземпляры EC2 можно легко перезагрузить с панели инструментов EC2 или aws-cli