AWS EC2 забыл пароль и не могу использовать SSH. Как сбросить пароль для экземпляра AWS EC2 с Ubuntu?

Вопрос или проблема

У меня есть экземпляр Ubuntu на aws ec2. Сейчас я забыл пароль для пользователя. У меня есть файл .pem, но при попытке входа с использованием команды ssh ниже он требует пароль.

ssh -i key.pem user@ip -vvv


debug3: send packet: type 50
debug2: we sent a publickey packet, wait for reply
debug3: receive packet: type 51
debug1: Authentications that can continue: publickey,password
debug2: we did not send a packet, disable method
debug3: authmethod_lookup password
debug3: remaining preferred: ,password
debug3: authmethod_is_enabled password
debug1: Next authentication method: password
's password:

Как сбросить пароль и войти в систему?

Попробовал следующие шаги.

Снимок объема экземпляра
создать образ
запустить экземпляр, используя этот образ, с другим файлом ключа pem, тоже требует пароль для входа.
Как можно войти в aws экземпляр? или как сбросить пароль?

Ответ или решение

Забыть пароль от экземпляра AWS EC2 может оказаться неприятной проблемой, особенно если у вас нет других способов доступа к системе, например, через SSH-ключи. Давайте разберемся, как можно восстановить доступ к вашему Ubuntu-экземпляру на AWS EC2.

Теория

Перед тем как приступить к решению проблемы, важно понять принцип работы SSH-доступа к EC2-экземплярам. Обычно AWS EC2 использует ключевую аутентификацию для входа в систему без пароля. Это делается для повышения безопасности, поскольку ключи SSH более сложны для подбора, чем пароли. Однако в случае, если ваш экземпляр запрашивает пароль, это может указывать на несколько различных проблем:

  1. Аутентификация по ключу SSH отключена в конфигурации SSH-сервера.
  2. Неправильная конфигурация безопасного доступа.
  3. Используемый SSH-ключ может не соответствовать настроенному в системе.

Основной задачей является определение проблем с конфигурацией и восстановление доступа.

Пример

Для начала, убедитесь, что вы правильно используете SSH-ключ. Иногда простая ошибка, такая как неверное имя пользователя, может привести к необходимости вводить пароль, несмотря на наличие PEM-файла. Попробуйте выполнить следующую команду, чтобы подключиться к вашему экземпляру:

ssh -i /путь/к/key.pem ubuntu@your_instance_ip

Здесь "ubuntu" является стандартным именем пользователя для Ubuntu-экземпляров на AWS. Если же это не решает проблему, возможно, потребуется применить более сложные методы восстановления через созданные снимки и новые экземпляры.

Применение

Если стандартные методы не дают результата, вы можете использовать следующее руководство по шагам, чтобы восстановить доступ к вашему экземпляру.

  1. Остановка экземпляра: Зайдите в ваш AWS Management Console, выберите ваш проблемный экземпляр и остановите его. Это важно, чтобы избежать внесения изменений напрямую на работающей машине.

  2. Создание снимка: Перейдите в раздел "Volumes" EC2 Dashboard, выберите корневой том вашего экземпляра и создайте его снимок. Аналогично, создайте снимки для всех дополнительных томов, если они имеются.

  3. Создание нового экземпляра: Используя созданные снимки, создайте новый AMI (Amazon Machine Image), а затем разверните новый экземпляр из этой AMI. При создании нового экземпляра обязательно укажите новый PEM-ключ. Этот процесс позволит вам создать идентичную копию вашего проблемного экземпляра, при этом конфигурация SSH будет сброшена.

  4. Монтирование тома: Если созданный новый экземпляр также требует пароля, возможно, потребуется примонтировать корневой том старого экземпляра к другому, рабочему экземпляру, чтобы вручную изменить конфигурационные файлы.

    • Перейдите в "Volumes" и отсоедините корневой том от нового экземпляра.
    • Подключите этот том к другому, заведомо рабочему экземпляру.
    • Монтируйте том и перейдите в директорию /etc/ssh/ чтобы внести изменения в sshd_config, или удалите файлы, отвечающие за пароли, если необходимо.
  5. Проверка конфигурации SSH: Произведите необходимые проверки конфигурации SSH. Убедитесь, что в /etc/ssh/sshd_config включена аутентификация по ключам:

    PasswordAuthentication no
    PermitRootLogin prohibit-password
    ChallengeResponseAuthentication no
  6. Демонтаж исправленного тома: Верните исправленный том назад на экземпляр и перезапустите его.

  7. Проверка доступа: Попробуйте снова подключиться к вашему экземпляру с использованием SSH, чтобы удостовериться, что проблема решена.

Следуя этому процессу, вы можете восстановить доступ к экземпляру EC2, даже если изначальная конфигурация была утеряна. Это пример того, как продвинутое понимание системных процессов и возможностей AWS может помочь в решении сложных вопросов администрирования без серьезных последствий для работы.

Оцените материал
Добавить комментарий

Капча загружается...