AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 716362
Accepted
Christian Grabowski
Christian Grabowski
Asked: 2015-08-25 08:31:01 +0800 CST2015-08-25 08:31:01 +0800 CST 2015-08-25 08:31:01 +0800 CST

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

  • 772

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

user-management
  • 4 4 个回答
  • 8600 Views

4 个回答

  • Voted
  1. Best Answer
    David
    2015-09-17T11:41:01+08:002015-09-17T11:41:01+08:00

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

    您可能希望制作一个预先禁用该服务的映像(甚至删除单元文件),这样当您创建实例时,它不会在您禁用该服务之前创建帐户。

    • 6
  2. Greg Dubicki
    2017-03-23T09:55:46+08:002017-03-23T09:55:46+08:00

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

    要做到这一点:

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

      [Daemons]
      accounts_daemon = false
      
    2. 跑/usr/bin/google_instance_setup

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


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

    • 6
  3. Misha Brukman
    2015-08-29T11:07:56+08:002015-08-29T11:07:56+08:00

    如果用户对项目具有“编辑”权限,他们就可以通过 SSH 连接到任何虚拟机(并且可以无密码sudo访问),因为他们可以编辑任何给定虚拟机或项目本身的元数据,以将其公共 SSH 密钥添加到其中,即gcloud当您使用gcloud compute ssh或单击 UI 中的 [SSH] 按钮时,会自动为您做什么。

    您不能禁用此功能,因为那样您将无法通过 SSH 连接到您自己新创建的实例:GCE VM 实例在没有任何用户帐户或 SSH 密钥的情况下启动,并从项目继承它们,或从更改元数据一旦运行,您就可以通过更改元数据动态地将用户添加到正在运行的虚拟机中,并且虚拟机上的守护程序会自动为您创建一个用户帐户。

    如果您想控制谁可以通过 SSH 访问哪个实例,请授予用户查看权限,而不是编辑权限,然后手动将他们的 SSH 密钥添加到您希望他们访问的那些实例。或者启用基于密码的 SSH 并添加他们的用户帐户。

    在撰写本文时(2015 年 8 月 28 日),有一个可用的程序化用户帐户访问alpha版,您可以使用它在 VM 上创建新用户帐户。您可以请求加入此 API 的白名单,因为此时它只是受邀请的。

    • 1
  4. Kamran
    2015-08-26T10:37:53+08:002015-08-26T10:37:53+08:00

    目前这是不可能的。如果您的项目成员具有编辑或所有权权限,那么他们可以通过 ssh 连接到 VM 实例。

    但是,您可以为不想与其他成员(编辑者/所有者)共享的 VM 实例创建不同的项目。另一种解决方法是allowusers在您的/etc/ssh/sshd_config文件中使用以允许特定用户/IP 地址通过 SSH 连接到虚拟机。

    我建议在GCE 公共问题跟踪器上提交功能请求以添加该功能。

    • -1

相关问题

  • 如何从脚本添加具有随机或无效密码的 linux 用户

  • 将用户配置文件迁移到新的 Active Directory 帐户

  • 如何在 Web 托管突发 MBPS 带宽与。固定的用户连接数?

  • 如何判断正在使用哪个用户帐户来执行操作(在 SQL Server 的上下文中)?

  • 如何通过 GPO 授予漫游用户帐户在 Windows Server 2003 上的安装权限?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve