Не удается подключиться к экземпляру Compute Engine через SSH

Я только что создал экземпляр с помощью Google Cloud Platform Compute Engine и попытался подключиться к нему через SSH-соединение, но он не удался.

Я следую быстрому запуску здесь.

Я сгенерировал SSH-ключ на своем ПК и во время запроса ввел парольную фразу. Хотя мне не удалось выполнить вход в систему: - (

Я получил ошибку PuTTY SSH, как показано ниже.

enter image description here

Затем я получаю окно PuTTY неактивным.

enter image description here

Ответ 1

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

Вкратце

  • Сгенерировать SSH-ключ для экземпляра машины
  • Добавить открытый ключ SSH в экземпляр
  • Подготовьтесь к регистрации - получение информации для IP, имени входа, фразы, частного SSH-ключа.
  • Подключитесь к экземпляру через SSH-клиент, например. PuTTY в Windows

Подробные шаги

Для меня уже был gcloud быстрый запуск:

  • запустил мой экземпляр
  • создал мои общедоступные и частные ключи RSA (в C:\Users\USER_NAME\.ssh\)

Открытый ключ - C:\Users\USER_NAME \.ssh\google_compute_engine.pub

Закрытый ключ - C:\Users\USER_NAME \.ssh\google_compute_engine.ppk

enter image description here

  • Перейдите в Google Developers Console в своем браузере.
  • Выберите свой проект и в левой панели навигации нажмите: Вычислить → Вычислить двигатель → экземпляры виртуальной машины
  • Ваш исполняемый экземпляр будет связан ниже диаграммы использования ЦП.
  • Выберите тот, который вы хотите, и найдите ссылку Add SSH key и нажмите
  • Вставить все содержимое google_compute_engine.pub в появившееся поле
  • Нажмите "Сохранить", и через несколько секунд на странице появятся ключевые сведения (если вы получили ошибку, которую вы вставили из неправильного ключевого файла или не скопировали весь текст)
  • Первое слово в этих деталях - ваш (с учетом регистра) username

enter image description here

  1. Найдите External IP выше на странице
  2. Откройте PuTTY и вставьте внешний IP-адрес в Host Name (порт по умолчанию 22)

  3. В левой руке разверните: Connection → SSH и затем нажмите Auth

  4. Рядом с "Файл секретного ключа для аутентификации" нажмите "Обзор"
  5. Выберите "C:\Users\USER_NAME \.ssh\google_compute_engine.ppk" и нажмите "Открыть"
  6. Прокрутите резервную копию левой руки и нажмите верхний элемент "Сессия"
  7. В разделе "Сохраненные сеансы" введите имя и нажмите "Сохранить"
  8. Принять предупреждающее сообщение, и вам будет предложено войти в систему с помощью username с предыдущего шага.
  9. Введите вашу кодовую фразу
  10. Готово

Надеюсь, это поможет. Если у кого-то есть решение для проблемы gcloud, я тоже хотел бы это услышать.

Ответ 2

Чтобы идентифицироваться с помощью ssh, вам нужно запустить эту команду, которая добавит ключ gcloud ssh в список ключей ssh

ssh-add google_compute_engine C:\Users\USER_NAME\.ssh\

Ответ 3

Не обсуждаемый ответ заключается в том, что у вас должна быть хотя бы стандартная память на экземпляре виртуальной машины (3,75 ГБ) - НЕ используйте экземпляры Micro VM.

Я мог войти только через SSH через консоль браузера или командную строку gcloud, но не через Putty или терминал SSH Mac. Я провел час по телефону с поддержкой, и мы обнаружили, что это проблема.

Ответ 4

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

Ответ 5

Не уверен, почему, если пользователь уже существует (например: уже SSH, зарегистрированный в веб-консоли Google), он не работает, когда я вручную добавлял ключи SSH в метаданные на веб-консоли Google. Я пробовал сотни раз со следующих шагов.

Я узнал, что вам нужно вручную добавить свой ssh-ключ через веб-SSH CONSOLE → ssh на веб-консоли google и скопировать ssh pub key на ваш локальный компьютер (обычно это ~/.ssh/) и добавить (редактировать и вставьте его до конца), чтобы перейти к ~/.ssh/authorized_keys.

Ответ 6

1) SSh в облачную консоль vm.

2) Измените пароль root sudo passwd

3) установите для параметров ниже значение yes с помощью nano /etc/ssh/sshd_config

PasswordAuthentication  PermitRootLogin  PasswordAuthentication

4) перезапустите sshd service sshd restart