При настройке входа в систему ОС на одном экземпляре GCE я получаю сообщение Permission denied
для нового пользователя проекта.
В соответствии с документацией Google Cloud по входу в ОС, я установил метаданные на enable-oslogin TRUE
и разрешение для пользователя в экземпляре на roles/compute.osLogin
, поскольку в этом тестовом примере не требуется дополнительная учетная запись организации или службы. Правила брандмауэра тоже в порядке.
Я включил роль Project Editor
, и она работает, но я не хочу, чтобы пользователь был Editor
или Viewer
, просто S SH в экземпляр и управляйте им с помощью Cloud IAM.
Это ошибка, которую я вижу:
DEBUG: Executing command: [u'/usr/bin/ssh', u'-t', u'-i', u'/home/test/.ssh/google_compute_engine', u'-o', u'CheckHostIP=no', u'-o', u'HostKeyAlias=compute.xxxxx', u'-o', u'IdentitiesOnly=yes', u'-o', u'StrictHostKeyChecking=no', u'-o', u'UserKnownHostsFile=/home/test/.ssh/google_compute_known_hosts', u'test_com@xx.xx.xx.xx']
Permission denied (publickey).
DEBUG: (gcloud.beta.compute.ssh) [/usr/bin/ssh] exited with return code [255].
Traceback (most recent call last):
File "/google/google-cloud-sdk/lib/googlecloudsdk/calliope/cli.py", line 981, in Execute
resources = calliope_command.Run(cli=self, args=args)
File "/google/google-cloud-sdk/lib/googlecloudsdk/calliope/backend.py", line 807, in Run
resources = command_instance.Run(args)
File "/google/google-cloud-sdk/lib/surface/compute/ssh.py", line 262, in Run
return_code = cmd.Run(ssh_helper.env, force_connect=True)
File "/google/google-cloud-sdk/lib/googlecloudsdk/command_lib/util/ssh/ssh.py", line 1258, in Run
raise CommandError(args[0], return_code=status)
CommandError: [/usr/bin/ssh] exited with return code [255].
ERROR: (gcloud.beta.compute.ssh) [/usr/bin/ssh] exited with return code [255].