在没有负载平衡的情况下在许多单独的 GCP 计算实例上启用 DDoS 保护的最佳方法?

在没有负载平衡的情况下在许多单独的 GCP 计算实例上启用 DDoS 保护的最佳方法?

我一直在搜索Google Cloud Armor 文档有关 GCP 计算虚拟机实例的 DDoS 保护的信息。据我所知,Google Cloud Armor 托管保护提供传统的 DDoS 保护(可能是第 3 层和第 4 层),并且必须连接到负载均衡器。此外,Google Cloud Armor 自适应保护通过基于机器学习的网络流量异常检测提供第 7 层保护,并且必须通过Google Cloud Armor 安全政策而它又必须连接到负载均衡器。

但是负载均衡器与实例组相关联,而不是与单个 VM 实例相关联,并且它们旨在用于自动缩放实例(例如基于实例模板),而不是用于单个 VM 实例。我正在运行几个独立的有状态服务器应用程序(每个应用程序都在自己的 VM 实例中),其中自动缩放并不是一个真正的选项。

可以定义一个单实例实例组(即,将自动扩展规则设置为只生成 1 个实例)。但是,我有多个单独的 VM 实例需要 DDoS 保护,因此我需要为每个实例组设置一个实例组,并为每个实例组设置一个负载均衡器。这很快就会变得非常昂贵。

更实用的选项是设置一个连接到负载均衡器的自动扩展实例组,以作为所有其他服务器的反向代理,这些服务器在公共 VPC 内进行内部访问。该反向代理可以连接到负载均衡器,并作为单一入口点提供 DDoS 保护。

但我觉得 GCP 上的 DDoS 防护需要负载平衡这一点很奇怪。毕竟,AWS shield 不需要负载均衡器生效。我遗漏了什么吗?

编辑:

我正在为各种特定目标应用程序构建托管平台。每个客户要么拥有自己的 VM 实例,要么与一两个其他客户共享 VM 实例。大多数目标应用程序都是不是Web 应用,而只是支持 TCP/UDP 的应用(例如,其中一些是游戏服务器)。它们是有状态的应用,更重要的是,它们往往需要同时维持单个实例中的所有连接,因此扩展到单个实例之外通常是不可行的。此外,GCP 负载均衡器定价对前五个转发规则实施了较高的基本价格,因此让每个实例都位于自己的负载均衡器后面并不是一个好选择。对于其中一些应用,DoS 攻击尤其令人担忧。

答案1

Google Cloud Platform 提供了许多功能来防御 DDoS 攻击。您可以将这些功能与下面提到的最佳实践和其他根据您的需求量身定制的措施结合使用,以使您的 GCP 部署能够抵御 DDoS 攻击。

减少 GCE 部署的攻击面

○ 使用 Google Cloud 虚拟网络配置您自己的独立且安全的 Google Cloud 部分。​

○ 使用子网和网络、防火墙规则、标签和身份和访问管理 (IAM) 隔离和保护您的部署。

○ 使用防火墙规则和/或协议转发打开您需要的端口和协议的访问。

○ GCP 默认为私有网络(IP 地址)提供反欺骗保护。

○ GCP 自动提供虚拟网络之间的隔离。

将内部流量与外部世界隔离

○ 如无必要,请部署没有公共 IP 的实例。

○ 您可以设置 NAT 网关或 SSH 堡垒来限制暴露给互联网的实例数量。

部署第三方 DDoS 防护解决方案

○ 为了满足您对 DDoS 攻击预防/缓解的特定保护需求,请考虑购买专门的第三方 DDoS 防护解决方案来防御此类攻击。

○ 您还可以通过 G​oogle Cloud Launcher 部署可用的 DDoS 解决方案。

我给你留下了参考Google Cloud Platform 上 DDoS 保护和缓解的最佳实践

相关内容