# #google-cloud-platform #ssh #google-compute-engine
Вопрос:
Из того, что я прочитал, ~/.ssh/authorized_keys
просто возьмите то, что содержится в метаданных на уровне проекта. Если я удаляю запись с консоли, она также исчезает из authorized_keys
файла. Однако, если я удалю файл из authorized_keys
файла, консоль все равно отобразит запись с удаленным открытым ключом.
Как только я выйду из сеанса ssh, я не смогу вернуться ни с gcloud compute ssh user@instance_name
одним, ни ssh user@instance_ip
с другим . Почему это так?
Затем мне пришлось перейти к консоли и удалить эту запись (которую я ранее удалил, отредактировав authorized_keys
файл напрямую), и только теперь gcloud compute ssh user@instance_name
она снова работает правильно, помогая мне добавлять свои google_compute_engine.pub
метаданные в проект, так ssh user@instance_ip
что теперь тоже работает.
P. S Я не знаком с тем, как работают метаданные уровня экземпляра, поэтому экспериментировал только с ssh-ключами метаданных уровня проекта. Если какой-либо ответ может прокомментировать, применим ли ваш ответ и к уровню экземпляра, это будет здорово.
Ответ №1:
Можно предоставить ключи SSH либо на уровне проекта, либо на уровне экземпляра. Пожалуйста, не редактируйте файлы, а добавляйте их на консоль GCE, потому что обычно ими управляет GCP. Так что можно даже, например. создайте и предоставьте новый ключ, запустите сценарий, дайте ключу истечь. Аналогично, этому не нужно нигде хранить ключ …что совсем не похоже на традиционную виртуальную машину. Количество ключей, которые можно добавить в метаданные экземпляра, ограничено.