我想要一个具有本地用户的实例,目的是在该实例上运行和拥有服务。我尝试用简单的
创建它adduser <username>
以及以下, https://cloud.google.com/compute/docs/instances/adding-removing-ssh-keys#instance-only,根据以下内容
instance_a='<instance_a>'
ssh-keygen -t rsa -C "test_ssh_key"
gcloud compute instances add-metadata $instance_a --metadata-from-file ssh-keys=test_ssh_key.pub
gcloud compute ssh $instance_a --ssh-key-file='test_ssh_key'
但是,在这两种情况下,创建的用户都会自动同步到项目中的所有其他正在运行的实例。此外,在第二种情况下,即使文档说它是针对单个实例,我也能够进入第二个实例,尽管ssh密钥没有显示
gcloud compute instances describe $instance_a
请注意,使用新创建的密钥的ssh同时使用gcloud compute ssh和常规ssh。
有谁知道如何正确地在实例上创建真正的本地用户,或者关闭没有ssh登录的服务同步用户?
答案 0 :(得分:0)
您无法使用Google管理的SSH密钥(当您使用gcloud compute ssh时) 使用实例级SSH可以正常工作(正如您所做的那样),只需确保删除同一用户的任何项目级元数据。
还要确保新用户完全受限 A)确保用户没有使用谷歌管理SSH的IAM权限 B)限制实例上默认服务帐户的范围,以确保用户不使用它来绕过您现有的安全措施。