EC2 ELB 和 DOS 攻击

EC2 ELB 和 DOS 攻击

我正在使用 Amazon 的 ELB 在服务器之间进行负载平衡,

当我的网站受到机器人攻击时,一切都筋疲力尽,所以这就是问题所在

我无法使用 Amazon 的安全组来阻止 IP 地址,因为他们没有明确允许“拒绝”,因此拒绝一个 IP 就必须允许其他每个 IP 地址,这很繁琐。

我无法使用 iptables 来阻止 IP 地址,因为 ELB 会混淆公共 IP 地址并将其替换为自己的 IP 地址。

访客的实际 IP 地址只能在 X-FORWARDED-IP 中看到

答案1

我认为,除了您在 ELB 级别上描述的方法之外,没有其他方法可以实现这一点。

您可以在每个实例上使用防火墙(例如 iptables)来阻止某些 IP 地址,甚至可以为 IP 地址设置每分钟/秒的连接数限制。

这样你就可以自动阻止攻击者。

您还可以使用 Chef/Puppet 等工具将防火墙配置传播到每个实例。

答案2

我也遇到过这种情况。我一直在考虑这个问题,虽然我还没有尝试实现它,但我认为对于我们来说,答案是在应用服务器前启动一个运行专用防火墙的实例。这样,防火墙就可以看到真实的 IP 地址。我会在尝试实现它并解决遇到的任何问题后尝试更新它。

答案3

您说得对,您不能使用安全组来阻止流量。

如果您正在使用 VPC(您应该这样做),那么您可以使用 Amazon 的网络 ACL 作为防火墙。它们允许 DENY 规则,因此您可以阻止 IP 或 CIDR 块上的流量。

http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_ACLs.html http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_Security.html#VPC_Security_Comparison

答案4

不是一个好的解决方案

您可以使用 apache 或 iis 阻止 IP 地址访问 EC2 实例。对于数百个实例来说,这显然不切实际。

这个问题也非常相关:阻止负载均衡器后面的 IP

相关内容