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

Добавление общедоступных SSH-ключей на уровне экземпляра в экземпляр GCE

За Управление ключами SSH в метаданных | Документация по Compute Engine | Google Cloud, Я отредактировал метаданные открытого SSH-ключа на уровне экземпляра, добавив свой открытый ключ (в следующем формате):

ssh-rsa [KEY_VALUE] [ИМЯ ПОЛЬЗОВАТЕЛЯ]

пока не могу подключиться.

/var/log/auth.log:

Apr 18 15:24:19 web0 sshd[5080]: Invalid user staging from X.X.X.X port 52403
Apr 18 15:24:19 web0 sshd[5080]: input_userauth_request: invalid user XXX [preauth]
Apr 18 15:24:19 web0 sshd[5080]: error: Received disconnect from X.X.X.X port 52403:14: No supported authentication methods available [preauth]
Apr 18 15:24:19 web0 sshd[5080]: Disconnected from X.X.X.X port 52403 [preauth]

Пожалуйста, порекомендуйте.

Когда вы создаете свою пару закрытого / открытого ключей, используя команду, подобную приведенной ниже:

ssh-keygen -t rsa -C "your_email@example.com"

Ваш адрес электронной почты уже должен присутствовать в сгенерированном файле открытого ключа (обычно называемом id_rsa.pub по умолчанию).

Поэтому вам нужно только скопировать содержимое этого файла и вставить его прямо в раздел ssh-keys экземпляра в консоли. Итак, да, формат, который вы написали, правильный, но самый надежный способ убедиться, что вы вводите его правильно, - это скопировать его прямо из файла открытого ключа.

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

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

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

РЕДАКТИРОВАТЬ:

Поскольку пользователь из ключа SSH не отображается в файле / etc / passwd, это говорит о том, что возможно, что соответствующие службы Гостевая среда Linux не выполняются, что, в свою очередь, означает, что метаданные не передаются в экземпляр. Я считаю, что за эту проблему может нести ответственность демон Compute Engine Accounts Daemon в гостевой среде Linux.

Вы можете попробовать выполнить следующую команду, чтобы проверить, активна ли она:

sudo systemctl list-units --all | grep google 

Если он не активен / не установлен, есть полезная информация Вот о том, как запустить службы, или установить гостевую среду Linux, если она еще не установлена ​​на экземпляре.