我计划将我的网站和 API 迁移到EC2
亚马逊。如果我的某个网站EC2
instances
遭受 DDoS 攻击,我是否可以先terminate
启动instance
一个新的instance
,然后将我的 CloudFlare DNS 记录更新到新EC2
instance's
IP,以减轻 DDoS 攻击?我有一个AMI
为我的网站和 API 创建的,EC2
instance
所以我可以轻松启动新的instance's
,并在大约 5 分钟内让新服务器准备就绪。亚马逊会允许这样做吗?
答案1
你应该读一下AWS DDOS 白皮书。
一些想法:
- 如果您遭受 DDOS 攻击,请启用 CloudFlare 的“我受到攻击”功能。这将有助于缓解攻击。当然,您必须为您的实例设置防火墙,以便只有 CloudFlare IP 才能访问您的基础设施。仅此一项可能就足以缓解 DDOS 攻击。
- 在实例前面放置一个 ELB(或 ALB)。它提供 AWS Shield,为您提供相当不错的 DDOS 保护。我想知道 CloudFlare IP 是否会被视为攻击您的网站,因为相对较少的 IP(我猜是数百个 IPS)会将所有流量发送到您的实例。这可能会切断合法流量。
- AWS WAF 提供额外的 DDOS 保护。不确定您是否也想将其与 CloudFlare 一起使用。
- 如果所有其他方法都失败了,您需要更改 IP,则不需要新实例。只需分离并取消分配您的弹性 IP,分配并附加新的弹性 IP。可能需要在操作系统级别进行一些配置。但这应该是最后的手段,因为所有客户端都需要时间才能获得新 IP。
答案2
我想你可以,但说实话这似乎有点过头了。为什么不利用 API Gateway 的节流功能呢?
为了防止您的 API 因过多请求而无法承受,Amazon API Gateway 使用令牌桶算法限制对您的 API 的请求,其中令牌计入一个请求。具体而言,API Gateway 针对您账户中的所有 API 设置了稳定状态速率和请求提交突发的限制。在令牌桶算法中,突发是最大桶大小。
另请阅读:https://aws.amazon.com/answers/networking/aws-ddos-attack-mitigation/