🪩google cloud通过第三方工具密码登陆ssh

type
status
date
slug
summary
tags
category
icon
password
最后编辑时间
Jan 12, 2026 10:18 AM
order
漏洞编号
Author
 
 

1. IAM 权限与系统角色 (解决 sudo 报错)

  • 操作: 在 Google Cloud 控制台的 IAM 和管理 → IAM  页面,为账号添加 Compute OS Admin Login(计算引擎操作系统管理员登录)(搜索)角色。
  • 具体:
      1. 在 IAM 列表中找到对应用户
          • 修改已有账号的权限:在用户列表中找到该账号,点击最右侧的 编辑图标(铅笔形状)。
          • 为账号添加 Compute OS Admin Login(计算引擎操作系统管理员登录)(搜索)角色。
      1. 保存:点击 “保存” (SAVE) 按钮生效。
  • 目的: 解决最初 sudo 提示 "I'm afraid I can't do that" 的权限阻断,让你拥有在网页终端提权 root 的合法身份。

2. 虚拟机元数据调整 (解除云端托管)

  • 操作: 在虚拟机详情页的“元数据”部分,手动添加键值对 enable-oslogin = FALSE
  • 具体:
      1. 进入 Compute Engine -> 虚拟机实例
      1. 点击目标虚拟机的 名称 详情。
      1. 点击 “修改” (EDIT)
      1. 在 “元数据” (Metadata) 部分,找到 enable-oslogin
      1. 将其值改为 FALSE(如果没有这一项,请添加 enable-oslogin = FALSE)。
      1. 点击 保存
       
  • 目的: 强制关闭 Google 的 OS Login 身份验证模式。如果不关闭此项,系统会优先走 IAM 密钥验证,从而忽略你手动设置的 root 密码。

3. 修改 SSH 配置文件 (开启权限)

  • 设置密码: sudo -i 切换到 root ,然后使用 passwd 命令为 root 账号设置了登录密码。
  • 操作: 登录网页 SSH 终端后,修改了 /etc/ssh/sshd_config 文件:
    • PermitRootLogin yes (允许 root 登录)
    • PasswordAuthentication yes (允许密码验证)
  • 重启:reboot

4. 清理模块化配置干扰 (最关键的突破)

  • 操作: 删除了 /etc/ssh/sshd_config.d/ 目录下的所有 .conf 文件(如 50-cloud-init.conf)。
  • 具体:
    • 确认第3步的修改是否有生效
      • 如果输出显示 passwordauthentication no,说明配置文件修改没生效(被覆盖了)。
      • 如果输出显示 yes 但你还是连不上,说明是 PAM 或 OS Login 在底层拦截了验证。
    • 删除
      • 强制在主配置中置顶
        • 重启
        • 原因: 这是 2026 年新版镜像的特性。这些子目录里的配置优先级高于主配置文件。即使主文件改了,子目录里的 PasswordAuthentication no 也会把你的修改覆盖掉。
        Loading...

        没有找到文章