【问题标题】:Is it possible to use a fully managed service (Cloud Run or App Engine) with firewall in GCP?是否可以在 GCP 中使用带防火墙的完全托管服务(Cloud Run 或 App Engine)?
【发布时间】:2020-03-06 01:40:15
【问题描述】:

问题。我正在寻找一种敏捷的方式将 docker 容器(存储在 GCR.IO 上)发送到 GCP 上的托管服务:

  • 一个带有私有数据的 docker 容器 gcr.io/project/helloworld(例如 Cloud SQL 后端) - 无法面对现实世界。
  • 我想将其公开给一堆 IP:比如 [ "1.2.3.4" , "2.3.4.0/24" ]。

我的理想平台是 Cloud Run,但 GAE 也可以工作。

我想以敏捷的方式进行开发(比如使用 2-3 行代码进行部署),是否可以秘密运行我的服务但又超级容易?我们不是在谈论一个庞大的制作项目,我们是在谈论玩耍并编写一个 POC,您希望通过互联网安全地与几个朋友分享,以确保世界其他地方获得 403。

到目前为止我已经尝试过。

唯一可以轻松工作的想法是具有 docker 友好操作系统(如 cos)的 GCE vm,我可以在其中设置防火墙规则。这可行,但它是一次性 VM 上的蹩脚 docker 应用程序。机器永远运行并在重新启动时死机,除非我在 cron/startup 上稳定它。看来我在做别人的工作。

到目前为止我尝试过的所有其他方法都失败了:

  • 云跑。太棒了,但无法在其上设置防火墙规则,或者 Cloud Director,.. 似乎仅适用于设置起来很痛苦的 IAP。
  • GAE。适用于多个 IP,不能分离公共 IP 或对其进行防火墙保护。我设法在应用程序中进行了 IP 过滤,但似乎有点冒险。我不 [想] 相信我的编码技能 :)
  • 云盔甲。只支持我没有的 HTTPS 负载均衡器。我也没有 MIG 可以指出。我想要简单。
  • Traffic Director,需要一个 HTTP L7 平衡器。但我有一个 docker 容器,在一个 pod 上。为什么我需要 LB?
  • GKE。实际上这似乎可行:[1] 但它没有完全托管(我需要创建集群、pod ......)

这是产品缺陷还是我看错了产品?实现我想要的最简单的方法是什么?

[1]how do I add a firewall rule to a gke service?

【问题讨论】:

  • 我同意 john hanley 的回答,根据您的要求,Cloud Run 是您的最佳选择。如果您遇到 IAP 问题,请在单独的问题中询问详细信息。

标签: google-app-engine google-cloud-platform cloud google-cloud-run google-cloud-armor


【解决方案1】:

请将您的问题仅限于一项服务。并非每个人都是所有 Google Cloud 服务的专家。如果每项服务是单独的问题,您将更有可能获得好的答案。

总之,如果您想使用 Google Cloud 安全组来控制基于 IP 的访问,您需要使用在 Compute Engine 上运行的服务,因为安全组是 VPC 功能集的一部分。 App Engine Standard 和 Cloud Run 不在您项目的 VPC 中运行。剩下的就是 App Engine Flex、Compute Engine 和 Kubernetes。

我会改变策略并使用由身份验证管理的 Google Cloud Run。访问由 Google Cloud IAM 通过 OAuth 令牌控制。

Cloud Run Authentication Overview

【讨论】:

    【解决方案2】:

    我同意 John Hanley 的回复,并且对他的回答投了赞成票。

    另外,我了解到您正在研究如何通过 GCP 限制对您的服务的访问。

    通过设置防火墙规则,您可以通过将源 IP 范围限制为允许的源来限制对您的服务的访问,这样只有该地址将被允许作为源 IP。

    请查看服务器故障 [1] 中的另一个线程,说明如何“限制对单个 IP 的访问”。

    https://serverfault.com/questions/901364/restrict-access-to-single-ip-only

    【讨论】:

      猜你喜欢
      • 2020-07-19
      • 2020-04-18
      • 1970-01-01
      • 1970-01-01
      • 2021-04-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多