Восстановление доступа к виртуальной машине
Восстановление доступа к ВМ может понадобиться, если:
- Утрачены учетные данные пользователя ВМ.
- Была изменена публичная часть SSH-ключа.
- Невозможно подключиться по SSH.
- Не загружается ВМ.
Утрачены учетные данные пользователя ВМ
Если вы утратили закрытый ключ SSH для Linux или пароль пользователя Windows:
-
Создайте снимок диска ВМ, доступ к которой нужно восстановить.
-
Если для вас важно сохранить публичный IP-адрес, используемый текущей виртуальной машиной, сделайте этот IP-адрес статическим.
-
Остановите ВМ и отвяжите от нее публичный IP-адрес.
-
Создайте новую ВМ с диском из снимка, указав этот диск в качестве загрузочного. При создании ВМ в блоке Доступ укажите новые учетные данные для входа.
Если ранее вы делали публичный IP-адрес ВМ статическим, используйте этот IP-адрес в качестве публичного IP-адреса новой ВМ:
Консоль управленияCLITerraformВ поле Публичный адрес выберите способ назначения адреса
Список
и в появившемся списке выберите зарезервированный ранее IP-адрес.В команде
yc compute instance create
передайте зарезервированный ранее IP-адрес в полеnat-address
параметра--network-interface
. Например:yc compute instance create \ ... --network-interface subnet-name=subnet-b,nat-ip-version=ipv4,nat-address=111.112.13.14 \ ...
Подробнее о команде
yc compute instance create
читайте в справочнике CLI.В секции
network_interface
ресурсаyandex_compute_disk
укажите зарезервированный ранее IP-адрес в параметреnat_ip_address
. Например:network_interface { subnet_id = "e2lqsms4cdl3********" nat = true nat_ip_address = "111.112.13.14" }
Подробнее о ресурсе
yandex_compute_disk
см. в документации провайдера . -
Подключитесь к ВМ по SSH или RDP, используя новые учетные данные.
-
Убедившись, что новая ВМ доступна и работоспособна, удалите старую ВМ и снимок диска.
Если их не удалить, они продолжат тарифицироваться, а Yandex Cloud продолжит брать за них плату.
Если для ВМ была изменена конфигурация 'cloud-init' или сети, описанный способ может не сработать. В этом случае смотрите раздел Не загружается ВМ.
Была изменена публичная часть SSH-ключа
Проблема с доступом по SSH к ВМ на базе Linux может возникнуть, если публичная часть SSH-ключа на стороне ВМ была изменена или удалена.
Вы можете восстановить доступ по SSH к ВМ на базе Linux с помощью серийной консоли при наличии работоспособной пары SSH-ключей.
Если доступ к серийной консоли отсутствует, для восстановления публичной части SSH-ключа выполните следующие действия:
-
Остановите ВМ.
-
Сделайте снимок с загрузочного диска ВМ.
-
Создайте вспомогательную ВМ на базе Linux. Для загрузочного диска выберите операционную систему в блоке Образ загрузочного диска. Чтобы подключить диск с данными к вспомогательной ВМ, выберите ранее созданный снимок в блоке Диски и файловые хранилища.
-
Подключитесь по SSH к вспомогательной ВМ, смонтируйте диск, созданный из снимка.
-
Замените SSH-ключ, который хранится на этом диске, на работоспособный:
-
Перейдите в каталог, в котором хранится публичная часть SSH-ключа на смонтированном разделе, например:
cd /mnt/home/<имя_пользователя>/.ssh
По умолчанию пользовательские SSH-ключи хранятся в каталоге
~/.ssh
конкретного пользователя. -
Откройте файл
authorized_keys
, например, с помощью текстового редактораnano
:nano authorized_keys
Если файл отсутствует, после выполнения команды он будет создан.
-
Замените содержимое файла на публичную часть работоспособной пары SSH-ключей.
-
-
Отмонтируйте от ВМ диск с исправленным SSH-ключом:
sudo umount /mnt
-
Остановите вспомогательную ВМ, отключите от нее диск с исправленным SSH-ключом.
-
Создайте новую ВМ. В блоке Образ загрузочного диска перейдите на вкладку Пользовательский и выберите диск с исправленным SSH-ключом в качестве загрузочного.
Примечание
Новая ВМ и диск с исправленным SSH-ключом должны находиться в одной зоне доступности.
-
Подключитесь к вновь созданной ВМ по SSH.
-
Удалите снимок диска, также удалите вспомогательную и старую ВМ.
Если их не удалить, они продолжат тарифицироваться, а Yandex Cloud продолжит брать за них плату.
Невозможно подключиться по SSH
Проблема может возникнуть из-за ошибки в настройках SSH, групп безопасности или сети. Для восстановления доступа подключитесь к ВМ с помощью серийной консоли и сделайте необходимые исправления.
Примечание
Вы можете воспользоваться серийной консолью, только если был установлен пароль пользователя. Иначе смотрите раздел Не загружается ВМ.
- Включите доступ к серийной консоли ВМ.
- Подключитесь к серийной консоли ВМ.
- Измените настройки SSH или сети. Если настроены группы безопасности, проверьте, чтобы в правилах был разрешен входящий трафик по протоколу TCP на порт 22.
- Подключитесь к ВМ через SSH.
Утерян SSH-ключ
Если вы устанавливали пароль для пользователя, настройте серийную консоль ВМ и подключитесь к ней. Мы рекомендуем подключаться с помощью CLI.
Если пароля для пользователя нет, сделайте снимок диска ВМ и создайте новую ВМ из снимка.
Если проблему решить не удалось:
- Создайте новый диск из снимка ВМ.
- Подключите его в качестве дополнительного диска к другой ВМ.
- Измените корневой каталог с помощью операции
сhroot
. - Измените файлы конфигураций, влияющие на недоступность ВМ.
- Отключите диск от ВМ.
- Создайте новую ВМ. В блоке Выбор образа/загрузочного диска перейдите на вкладку Пользовательские и выберите ваш диск в качестве загрузочного.
- После восстановления доступа к ВМ не забудьте удалить неиспользуемые ресурсы: виртуальные машины, диски и снимки дисков. Если их не удалить, они продолжат тарифицироваться, а Yandex Cloud продолжит брать за них плату.
Не загружается ВМ
Если ВМ не загружается, получите доступ к данным диска следующим образом:
- Создайте снимок диска ВМ, доступ к которой нужно восстановить.
- Создайте диск из снимка. При создании диска в поле Наполнение выберите
Снимок
и укажите созданный снимок. - Подключите диск в качестве дополнительного к вспомогательной ВМ.
- Измените конфигурационные файлы, влияющие на загрузку ВМ или скопируйте важные данные.
- Отключите диск от вспомогательной ВМ.
- Если вы обнаружили и устранили проблему загрузки, создайте новую ВМ. При создании в блоке Образ загрузочного диска перейдите на вкладку Пользовательский и выберите исправленный диск в качестве загрузочного.
- После восстановления доступа к ВМ не забудьте удалить неиспользуемые ресурсы: виртуальные машины, диски и снимки дисков. Если их не удалить, они продолжат тарифицироваться, а Yandex Cloud продолжит брать за них плату.