You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Google App Engine与Identity-Aware Proxy下SSH如何启用MFA?

GAE实例SSH连接每次访问触发MFA的可行方案

首先明确前提:只有GAE 灵活环境(Flex) 支持SSH访问底层实例,标准环境无原生SSH入口,以下方案均针对Flex环境生效:

方案1:实例内部配置PAM MFA模块

  • 你可以在Flex环境的启动配置中加入Google Authenticator等PAM MFA模块的安装、配置逻辑,可通过app.yaml的runtime_config或自定义容器镜像的Dockerfile实现配置固化
  • 修改实例的sshd_config配置,禁用Google Cloud默认的密钥自动注入豁免规则,强制所有SSH登录请求走PAM认证流程,即可实现每次SSH连接都要求输入MFA验证码
  • 注意GAE Flex实例为动态扩缩容,不要将用户MFA密钥存在实例本地,需加密存储在Cloud Secret Manager这类中心化服务中,实例启动时自动拉取对应配置

方案2:通过IAP中转SSH并配置强制MFA规则

  • 将所有SSH访问切换为走Identity-Aware Proxy (IAP) 中转,访问命令格式为gcloud compute ssh --tunnel-through-iap [GAE Flex实例名]
  • 在Cloud IAM的上下文感知访问规则中,针对IAP SSH访问权限配置强制MFA校验规则,要求每次新建SSH会话都必须完成MFA验证,无法复用gcloud的初始认证状态
  • 该方案无需修改实例内部配置,所有校验逻辑在Google Cloud访问控制层完成,配置门槛更低,同时支持统一管控所有实例的SSH访问权限

补充说明:你之前的认知是准确的,原生OS Login功能确实仅直接支持Compute Engine实例,不支持直接在GAE控制台开启,但以上两种方案均可实现你要求的每次SSH连接触发MFA的需求。

内容的提问来源于stack exchange,提问作者Mike Hartman

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.08 06:54:00