谷歌计算引擎如何创建用户以及如何禁用他们?

Chr*_*ski 9 user-management ssh-keys google-compute-engine coreos google-cloud-platform

我有一个在 GCE 上运行的 CoreOS 集群,我注意到所有 GCE 实例的一个问题是,只要您通过 Google Cloud 平台上的项目进行身份验证,您就可以登录服务器。这对我来说是一个问题,因为团队中的任何人,或进入项目的任何人,都可以像任何人一样直接进入服务器。我想禁用它,只使用我在云配置文件中创建的用户,这些用户指定了过期的 ssh 密钥和密码。在这样做时,我很好奇谷歌如何在 GCE 上创建用户?有没有人找到禁用它的方法?

Dav*_*vid 6

您可以通过确保 google-account-manager 服务不运行来阻止 GCE 实例添加帐户。在 CoreOS 上,您可以使用 停止此服务,sudo systemctl stop google-accounts-manager.service然后使用sudo systemctl disable google-accounts-manager.service.

您可能希望在预先禁用服务的情况下制作映像(甚至删除单元文件),以便在创建实例时不会在禁用服务之前创建帐户。

  • 好吧,您需要以其他方式提供您的 SSH 密钥(例如使用启动脚本),但不会出现任何问题。您可以在 https://github.com/GoogleCloudPlatform/compute-image-packages/tree/master/google-daemon/usr/share/google/google_daemon 查看代码;它所做的只是监视新的元数据,然后使用元数据服务器中的 SSH 密钥创建用户。 (2认同)

Gre*_*cki 6

截至 2017 年 3 月,您可以通过禁用帐户守护程序来阻止创建帐户,该守护程序部署在 GCE 中的所有映像上。

要做到这一点:

  1. 创建/etc/default/instance_configs.cfg.template包含以下内容的文件:

    [Daemons]
    accounts_daemon = false
    
    Run Code Online (Sandbox Code Playgroud)
  2. /usr/bin/google_instance_setup

这应该会永久停止并禁用守护程序,即使在守护程序的包更新的情况下也是如此。


您可以在GoogleCloudPlatform/compute-image-packages项目自述文件和代码中阅读有关 Google 在 GCE 系统映像上部署的守护程序和其他内容的更多信息。