Подключение
-
Что делать, если после создания ВМ ни разу не удалось подключиться?
-
Что делать, если не удается подключиться к ВМ, хотя ранее подключение работало?
-
Что делать, если не удается подключиться к ВМ из образа Cloud Marketplace?
-
Как использовать серийную консоль? Как подключиться к ВМ напрямую?
-
Что делать при предупреждении REMOTE HOST IDENTIFICATION HAS CHANGED?
-
Что делать, если после обновления cloud-init пропал сетевой доступ?
Как подключиться к ВМ с Linux
Воспользуйтесь инструкцией: Подключиться к виртуальной машине Linux по SSH. Если на компьютере, с которого вы подключаетесь, старая версия Windows (7, 8 и первые выпуски 10) и нет встроенного консольного SSH-клиента, используйте PuTTY
В образах Linux, предоставляемых Yandex Cloud, изначально нет графической оболочки. Возможность подключения по SSH с использованием логина и пароля по умолчанию отключена, поскольку этот способ является устаревшим и небезопасным.
Что делать, если после создания ВМ ни разу не удалось подключиться?
Ваше устройство должно «видеть» ВМ по сети:
- Если вы подключаетесь извне, за ВМ должен быть закреплен публичный IP-адрес или настроена связность через другую ВМ с публичным IP-адресом (например, через NAT-инстанс).
- На вашем устройстве должен быть разрешен исходящий трафик в сторону ВМ и входящий от нее.
Сразу после создания ВМ ее не следует выключать или перезагружать. Для ВМ с малой гарантированной долей vCPU процесс первого запуска может занять длительное время (до получаса). Если работа ВМ завершена преждевременно, скрипты инициализации могли не успеть выполниться. В этом случае удалите ВМ и создайте новую.
Как использовать root на ВМ Linux?
При создании ВМ с операционной системой Linux не используйте логины, зарезервированные системой, такие как root, admin и т. п., поскольку cloud-init не сможет добавить пользователя с таким именем. Попробуйте создать ВМ, указав логин пользователя user.
Для повышения прав до root используйте sudo. Пользователь, указанный при создании ВМ, входит в группу sudo. У root нет пароля, поэтому достаточно подключиться к ВМ по SSH (смотрите инструкцию Подключиться к виртуальной машине Linux по SSH) и ввести команду:
sudo su
Вы также можете выполнять различные команды, не переключаясь на root. Например, для выключения ВМ из гостевой ОС достаточно ввести команду:
sudo poweroff
Что делать, если не удается подключиться к ВМ, хотя ранее подключение работало?
Вероятно, вашими данными завладели, и к ВМ получили доступ третьи лица. Сделайте снимок диска ВМ (смотрите инструкцию Создать снимок диска) и создайте новую ВМ из него (смотрите Создать виртуальную машину с дисками из снимков). Если к новой ВМ удалось подключиться, используйте более сложные пароли и не распространяйте ваши секретные данные.
Если ВМ, созданная из снимка, также недоступна для подключения, воспользуйтесь рекомендациями Как достать важные данные со сломанной ВМ.
Что делать, если не удается подключиться к ВМ из образа Cloud Marketplace?
В некоторых образах Cloud Marketplace зарезервированы служебные логины, например bitrix в образе 1С-Битрикс. Для создания и подключения к ВМ используйте логин, который не зарезервирован в системе, например user. Не используйте root, admin или другие системные логины.
В дальнейшем вы сможете сменить пароль для пользователя bitrix командой: sudo passwd bitrix.
Что делать, если возникает ошибка Permission denied?
При подключении к ВМ по SSH могут возникать подобные ошибки:
Permission denied (publickey)
Permission denied (publickey,gssapi-keyex,gssapi-with-mic)
Частые причины ошибок:
- При создании виртуальной машины указан открытый ключ с опечаткой.
- При попытке подключения передан неверный закрытый ключ.
- В файле
authorized_keysуказаны неверные данные.
Чтобы решить проблему, при подключении попробуйте указать нужный закрытый ключ с помощью флага -i:
ssh -i <путь_к_ключу/имя_файла_ключа> <имя_пользователя>@<публичный_IP-адрес_ВМ>
Если ВМ создана с помощью Terraform, проверьте имя пользователя: комментарий в конце SSH-ключа не создает пользователя с таким именем. Чтобы явно задать пользователя и его ключ, передайте конфигурацию cloud-init в user-data. Сохраните ее в файл cloud-config.yaml:
#cloud-config
users:
- name: <имя_пользователя>
shell: /bin/bash
ssh_authorized_keys:
- <публичный_SSH-ключ>
В ресурсе yandex_compute_instance укажите:
metadata = {
user-data = file("cloud-config.yaml")
}
Подробнее о ключах метаданных и параметрах ресурса Terraform. Имя пользователя и установленные ключи можно проверить в выводе последовательного порта.
Как настроить RDP/VNC-подключение к ВМ с Linux?
Для подключения графического интерфейса на ВМ с ОС Linux есть два варианта:
- Использовать RDP или VNC. Для этого:
-
Установите окружение рабочего стола на ВМ на базе ОС Linux (Ubuntu/CentOS).
-
Установите xrdp или VNC-сервер для подключения по RDP или VNC соответственно.
-
Настройте ПО.
Рекомендуем использовать связку VNC-сервера, прослушивающего только localhost, и SSH-туннеля: в этом случае вы исключите риск подключения злоумышленников к вашей ВМ по VNC, а также зашифруете VNC-трафик. Возможно, вам будет полезна статья на Хабре
.
-
- Настроить X11 forwarding на локальный компьютер. Для Windows используйте Xming
.- Установите окружение рабочего стола.
- Настройте X11 forwarding и подключитесь по SSH.
- Запустите приложение из терминала.
Что делать, если не удается подключиться к ВМ, хотя ранее подключение работало?
Вероятно, вашими данными завладели, и к ВМ получили доступ третьи лица. Сделайте снимок диска ВМ (смотрите инструкцию Создать снимок диска) и создайте новую ВМ из него (смотрите Создать виртуальную машину с дисками из снимков). Если к новой ВМ удалось подключиться, используйте более сложные пароли и не распространяйте ваши секретные данные.
Если ВМ, созданная из снимка, также недоступна для подключения, воспользуйтесь рекомендациями Как достать важные данные со сломанной ВМ.
Как использовать серийную консоль? Как подключиться к ВМ напрямую?
При возникновении проблем с подключением к ВМ по сети вы можете использовать серийную консоль. Подробнее о ней в разделе Серийная консоль виртуальной машины.
Включить доступ к серийной консоли можно при создании или изменении ВМ. Серийная консоль будет доступна в консоли управления
Для ВМ с Linux дополнительно необходимо заранее настроить парольный доступ для пользователя, подключившись по SSH и задав пользователю пароль командой sudo passwd user (вместо user следует указать имя пользователя, заданное при создании ВМ).
Что делать, если утерян SSH-ключ?
Если вы устанавливали пароль для пользователя, настройте серийную консоль ВМ и подключитесь к ней. Мы рекомендуем подключаться с помощью Yandex Cloud CLI.
Если пароля для пользователя нет, сделайте снимок диска ВМ и создайте новую ВМ из снимка.
Если проблему решить не удалось:
- Создайте новый диск из снимка ВМ.
- Подключите его в качестве дополнительного диска к другой ВМ.
- Измените корневой каталог с помощью операции
chroot. - Измените файлы конфигураций, влияющие на недоступность ВМ, например, задайте новый пароль для пользователя с помощью команды
sudo passwd <имя_пользователя>. - Отключите диск от ВМ.
- Создайте новую ВМ. В блоке Выбор образа/загрузочного диска перейдите на вкладку Пользовательские и выберите ваш диск в качестве загрузочного.
- После восстановления доступа к ВМ не забудьте удалить неиспользуемые ресурсы: виртуальные машины, диски и снимки дисков. Если их не удалить, они продолжат тарифицироваться, а Yandex Cloud продолжит брать за них плату.
Почему после перезагрузки не работает ВМ?
ВМ может перестать работать после перезагрузки по одной из следующих причин:
- ВМ была принудительно перезагружена во время записи на системный диск. В этом случае могла быть повреждена файловая система.
- Был неправильно настроен файрвол и/или сеть.
- Были внесены изменения в настройки
cloud-init. - Была изменена системная версия Python, которая используется в том числе
cloud-init. - Произошла неполадка в сервисе.
Если вы совершали одно из этих действий, воспользуйтесь рекомендациями Как достать важные данные со сломанной ВМ. В ином случае оставьте обращение.
Как достать важные данные со сломанной ВМ?
При выходе из строя ВМ:
- Сделайте снимок проблемного диска: смотрите инструкцию Создать снимок диска.
- Создайте новую ВМ с дополнительным (не загрузочным) диском, восстановленным из снимка: смотрите Создать виртуальную машину с дисками из снимков.
- Подключитесь к ВМ: смотрите Работа на виртуальной машине.
- Смонтируйте диск: смотрите Смонтировать диск, созданный из снимка или образа.
- Проведите проверку файловой системы диска.
- Перенесите необходимые данные на загрузочный диск новой ВМ.
Что делать, если возникает предупреждение UNPROTECTED PRIVATE KEY FILE?
В Unix-подобных системах после распаковки SSH-ключей, сгенерированных через Консоль управления, закрытому ключу назначаются слишком высокие права. Из-за этого при подключении к ВМ возникает предупреждение UNPROTECTED PRIVATE KEY FILE. Чтобы сократить права, выполните команду:
chmod 600 <путь_к_файлу_закрытого_ключа>
Как подключиться к ВМ Linux по паролю?
В публичных образах Linux подключение по SSH с паролем по умолчанию отключено. При создании ВМ можно включить его через ключ метаданных user-data в формате cloud-config:
#cloud-config
ssh_pwauth: true
users:
- name: <имя_пользователя>
shell: /bin/bash
lock_passwd: false
hashed_passwd: '<хеш_пароля>'
Замените значения в угловых скобках именем пользователя и хешем пароля, поддерживаемым гостевой ОС. Передайте конфигурацию при создании ВМ. Подробнее о формате — в документации cloud-init
Важно
Аутентификация по паролю менее безопасна, чем по SSH-ключу. Ограничьте доступ к SSH в группе безопасности.
Что делать при предупреждении REMOTE HOST IDENTIFICATION HAS CHANGED?
Предупреждение означает, что ключ сервера отличается от сохраненного в known_hosts. Это возможно, например, после создания новой ВМ с прежним статическим IP-адресом, но также может указывать на подмену сервера.
Сначала убедитесь, что подключаетесь к нужной ВМ, и проверьте новый отпечаток ключа через доверенный канал, например серийную консоль. После проверки удалите старую запись на локальном компьютере:
ssh-keygen -R "<IP-адрес_ВМ>"
Команда использует стандартный файл known_hosts. Если он расположен в другом каталоге, укажите путь параметром -f. При повторном подключении сверьте отпечаток ключа перед его сохранением.
Как подключиться к ВМ через WinSCP с SSH-ключом?
В окне подключения WinSCP укажите:
- File protocol —
SFTPилиSCP. - Host name — IP-адрес ВМ.
- User name — имя пользователя ВМ.
- Password — оставьте пустым для аутентификации по ключу.
Нажмите Advanced, откройте SSH → Authentication и выберите закрытый ключ в поле Private key file. При необходимости преобразуйте ключ в формат PuTTY с помощью WinSCP. Сохраните настройки и нажмите Login. Если закрытый ключ защищен парольной фразой, введите ее при подключении.
Для такого подключения включать Allow agent forwarding не требуется. Установка пароля пользователю командой passwd сама по себе не включает аутентификацию по паролю в SSH-сервере. Подробнее о ключах — в документации WinSCP
Что делать, если после обновления cloud-init пропал сетевой доступ?
Проблема может возникнуть на Ubuntu после обновления cloud-init до версии 25.1.4 или при создании ВМ из образа с этой версией и некорректной конфигурацией. При запуске не настраивается сетевой интерфейс; в выводе серийной консоли может отсутствовать информация об инициализации cloud-init.
-
Создайте снимок диска проблемной ВМ.
-
Создайте диск из снимка и подключите его как дополнительный к вспомогательной ВМ.
-
В файловой системе подключенного диска откройте
etc/cloud/cloud.cfg.d/90_dpkg.cfg. Для описанной проблемы с версией25.1.4оставьте в списке источников толькоEc2:datasource_list: [Ec2]Изменяйте файл на подключенном диске, а не конфигурацию вспомогательной ВМ.
-
Размонтируйте файловую систему, отключите диск и создайте новую ВМ с этим загрузочным диском.
-
Проверьте доступ и сохранность данных. После проверки удалите ненужные ВМ, диски и снимки.
Если проблема сохраняется, обратитесь в техническую поддержкуcloud-init.
Что делать, если не удается подключиться к Kosmos VM?
Проверьте сетевую доступность ВМ с другой ВМ в той же облачной сети и попробуйте подключиться к консоли SAC.
Если SAC возвращает Unable to launch a Command Prompt. The service responsible for launching is not available:
-
Создайте образ диска проблемной ВМ.
-
Создайте диск из образа и подключите его как дополнительный к другой Kosmos VM.
-
Откройте командную строку
cmd.exeс правами администратора и выполните:bcdedit /store <буква_диска>:\boot\bcd /ems {default} on bcdedit /store <буква_диска>:\boot\bcd /emssettings EMSPORT:1 EMSBAUDRATE:115200Укажите букву подключенного диска, на котором находится хранилище BCD.
-
Отключите измененный диск от вспомогательной ВМ и создайте ВМ с ним как с загрузочным.
Если подключиться не удалось, обратитесь в техническую поддержку
Почему не сбрасывается пароль Administrator в Kosmos VM?
Если сброс пароля через консоль управления не дает результата, проверьте DNS в гостевой ОС. При использовании собственного DNS-сервера настройте на нем запись:
metadata.google.internal. A 169.254.169.254
Также можно вернуться к DNS-серверу подсети Virtual Private Cloud. Его адрес определяется относительно начала подсети. Подробнее в разделе Облачные сети и подсети.