Я пытаюсь предоставить доступ к виртуальной машине GCE, добавив ключи SSH к метаданным проекта.Мой текущий ключ SSH находится в метаданных проекта, и я могу подключиться просто отлично , используя:
ssh -i ~/.ssh/<private_key> <username>@<instance_ip>
Теперь я сгенерировал другой ключ:
ssh-keygen -t rsa -f ~/.ssh/<new_key> -C <new_username>
После добавлениясгенерированный открытый ключ к метаданным проекта, затем я запускаю:
ssh -i ~/.ssh/<new_private_key> <new_username>@<instance_ip>
Но я получаю Permission denied (publickey,gssapi-keyex,gssapi-with-mic).
Запуск с флагом -vvv
не показывает мне ничего, кроме отклоненного ключа.
Вещи, которые я знаю / проверено :
- Брандмауэр не проблема, потому что я могу подключиться, используя свой оригинальный ключ из того же места
- , экземпляр работаетSSH (при запуске
nc <instance_nat_ip> 22
отображается «OpenSSH» и т. Д.) - при генерации любого ключа SSH не использовались парольные фразы
- нет никаких ограничений на уровне экземпляра для метаданных всего проекта
- нет уже добавленных ssh-ключей уровня экземпляра
- нет новых строк / разрывов, приводящих к искажению ключа
- разрешения для
~./ssh
не являются проблемой, поскольку другиепара ключей отлично работает из одного каталога, кроме того, оба ключав любом случае пары имеют одинаковые права доступа - OSLogin не включен ни в проекте, ни в экземпляре
То, что я пробовал :
- удаление и чтение ключей SSH в метаданных проекта
- попытка сгенерировать новые пары ключей на компьютере другого пользователя
- перезапуск службы sshd
Вопросы:
- Должно ли имя пользователя, указанное на шаге
ssh-keygen
, уже существовать в удаленном экземпляре до добавления ключа в метаданные?т.е. нужно ли мне запускать sudo useradd <new_username>
пока SSH'd в экземпляр Создание нового тестового экземпляра показало, что это не так, все пользователи в метаданных проекта были созданы автоматически - почему мойсуществующие ключи SSH, а не новые, даже если они добавляются одинаково?
- есть вероятность, что
enable-oslogin:TRUE
был применен к экземпляру недолго назад (я не уверен, так как яне тот, кто создал экземпляр), но его больше нет в метаданных экземпляра или проекта.Приведет ли это, даже на короткое время, к возникновению некоторых проблем?
РЕДАКТИРОВАТЬ : я запустил новый экземпляр в том же проекте с теми же данными сети и смогSSH к этому экземпляру, используя новый ключ.Оригинальный экземпляр по-прежнему отказывается от ключа