Ec2 拒绝服务:保护基于云的网站免受 DOS 攻击

Ec2 拒绝服务:保护基于云的网站免受 DOS 攻击

如何准备在 EC2 实例上运行的网站基础设施以抵御 DOS 攻击?我使用 nginx 作为反向代理运行 apache

答案1

您无法阻止 DOS 攻击,您只能减轻其攻击。

  • 保持较小的攻击面。关闭您不使用的服务,阻止仅需从特定位置访问的端口,确保您的守护进程具有关于它们运行的​​线程数以及在系统资源不足时如何表现的合理默认值。
  • 监控流量。知道攻击何时开始,因为您会收到有关流量或资源负载峰值的通知。注意您的 ssh 守护程序或其他安全端口何时被扫描。注意请求的重复模式。当事情变得混乱时,能够并准备好深入分析它们,但要始终关注事情的脉搏。
  • 躲避或阻挡尽快清除构成攻击的任何流量。找出一种方法来识别攻击并限制此类请求。优先处理服务,必要时关闭低优先级服务。蹲伏下来,从 CDN 提供一切服务,直到一切恢复正常。

答案2

首先,你需要区分之间“拒绝服务 (DoS)”攻击和“分布式拒绝服务 (DDoS)”攻擊。

由于您的问题是关于 DoS 的,因此通常可以通过以下方式防范 DoS 攻击:

  • 保持您的操作系统、网络服务器、邮件服务器等更新,以便不会发生任何针对底层操作系统和服务的众所周知的远程 DoS 攻击。

  • 对您自己的 Web 应用程序代码进行安全审核,并为您自己的 Web 应用程序代码制定安全的开发实践。您希望确保没有任何针对您自己的 Web 应用程序代码的远程崩溃/远程资源匮乏/缓冲区溢出/等攻击。

  • 就像 Caleb 提到的那样,要有一个较小的“攻击面”。尽可能少地让服务响应互联网流量。安装防火墙,并设置默认的拒绝所有规则,只开放所需的端口(Amazon EC2 的“安全组”可以做到这一点为你)。

你可以做的事情几乎是无限的提高 DoS 攻击的安全性。真正的诀窍是明智地判断你应该做。我上面的列表是一个合理的起点,但如果您愿意,您可以了解有关此主题的更多信息。安全.stackexchange.com是一个不错的起点。

答案3

我一直在考虑使用云Flare为此。所有流量都通过它们路由,它们会监视恶意请求并阻止它们。主要卖点是,由于他们的业务是监视来自各种来源的不良流量,因此他们可以在您自己能够这样做之前识别潜在威胁。

这似乎是建立自己的基础设施的一种非常经济有效的替代方案,但我不确定通过第三方路由所有流量是否会减慢速度。

答案4

保护第三方基础设施(如 EC2)免受 DDoS/DoS 攻击是徒劳的。单个 EC2 实例无法处理任何类型的攻击。

如果您对自己的业务很认真,我建议您与可以代理过滤您的流量到实际目的地的提供商取得联系:

例如:http://www.gigenet.com/ddos-protection.html

相关内容