当源站服务器接受直接连接时,CDN 如何真正防止 DDoS 攻击?

信息安全 防火墙 攻击预防 ddos cdn
2021-08-29 10:00:32

我试图了解 CDN(例如 Cloudflare)如何防止 DDoS 攻击。

我认为互联网流量是通过 CDN 的反向代理路由的,然后进行过滤。当然,这假设相关网站的 DNS 记录指向 CDN 反向代理。

现在,我是否应该/必须在我的原始服务器上安装一个只允许来自 CDN 相关 IP 的连接的防火墙?

注意:在这篇支持文章中,当受到攻击时,Cloudflare 建议更改源 IP 并更新一些路由:

如果攻击者直接针对您的原始 Web 服务器,请请求您的托管服务提供商更改您的原始 IP 并更新您的 Cloudflare DNS 应用程序中的 IP 信息。在更改源 IP 之前,确认所有可能的 DNS 记录都是橙色云,并且您的名称服务器仍指向 Cloudflare(除非使用 CNAME 设置)。

为什么他们不推荐使用防火墙?现在,他们的解决方案将产生短期影响,但很容易被规避。

仅更改 IP 是不好的建议吗?我在这里理解有什么问题吗?

2个回答

IP 白名单是一个不完美的解决方案,因为它很繁琐。CloudFlare 的全球反向代理网络本身不一定是 IP 地址的静态列表。如果 CloudFlare 添加了新的 IP 范围,在您更新防火墙之前,某些 CloudFlare 的服务器可能无法访问您的源服务器,并且您的应用程序可能会遇到许多您可能永远不会注意到并且很难调试的用户断电即使您这样做,因为从您的有利位置来看,一切都运行良好。使防火墙上的 IP 地址白名单保持最新的维护工作与处理 DDoS 一样有问题。

CloudFlare 的 CDN 保护的主要思想是将源服务器的真实 IP 地址隐藏在 DNS 系统等可公开访问的数据库中。这使得攻击者更难发现将攻击指向您的源服务器的位置。

此外,如果您的防火墙设备实际上可以处理直接 DDoS 负载,那么您的攻击者可能还不够大,以至于您实际上需要 DDoS 保护。因此,跳过城镇并更改您的公共 IP 的建议是明智的,因为这可能是减轻主动攻击影响的最快方法。

CloudFlare 保护您的 Origin Server 免受直接流量影响的解决方案是使用Authenticated Origin Pull(免费),这将使 CloudFlare 在连接到您的 Origin 服务器时使用 TLS 客户端证书,或Argo Tunnel(额外费用),这将需要您在您的网络中运行一个 cloudflare 代理守护程序,以保持与 CloudFlare 存在点之一的传出连接。

“现在,我是否应该/必须在我的原始服务器上安装防火墙,只允许来自 CDN 相关 IP 的连接?”

我认为这是个好主意。Cloudflare 过去不推荐它,因为他们声称免费层上的站点在开始将流量直接卸载到源之前将获得有限的 DDOS 支持。但是,我再也找不到这些链接了,而 cloudflare 声称提供了未计量的 DDOS 保护。

在任何情况下,如果你真的被 DDOS 攻击得很厉害,那么支付 cloudflare 订阅费用会比尝试自己解决问题要便宜得多。

“为什么他们不建议使用防火墙?现在,他们的解决方案会产生短期效果,但很容易绕过。”

你是对的,如果你的网站以某种方式泄露了你的 IP,例如,攻击者可以订阅直接来自服务器 IP 的警报,仅仅轮换 IP 是无效的。

您需要以某种方式阻止来自非 cloudflare IP 的访问,最好是在平台级别使用 AWS 安全组,而不是服务器上的防火墙。