Cloudflare VS 阿里云 ESA :开发者眼中的“流量黑洞”与“免费天堂”

更新日期: 2025-12-03 阅读次数: 13 字数: 1601 分类: CDN

最近一周同时经历了国内网站服务器和海外服务器被大规模 CC 攻击的经历。 恰好同时使用了阿里云 ESA 和 Cloudflare 两种不同的防护服务,也通过这两家的服务分别解决了国内和海外的 CC 攻击问题。 经过几天的折腾,算是有了一点点的经验收获。这里主要说一下阿里云 ESA,因为 cloudflare 大家可能都比较熟悉了。 而我则是先使用的阿里云 ESA,之后才使用的 cloudflare。我用 cloudflare 时,也是完全依据使用 ESA 时积累的经验。

先说好的地方

经过一周多的使用,算是掌握了基本的阿里云 ESA 内置的 WAF (Web Application Firewall) 规则设置方法。 也基本扛住了广东电信 PCDN 的海量 IP CC 攻击(一天 20 万独立 IP 刷流量)。

阿里云 ESA 防护历史

从阿里云 ECS 服务器的流量监控来看,ESA 开启 WAF 之后,CC 攻击流量基本被拦截在 ESA 层,ECS 服务器的流量稳定在正常访问水平。 CPU 也从日常的 25% 降低了到 3% 以下。参见下面截图:

阿里云 ECS CPU 使用率

收获的经验

不同的服务需要区分二级域名。 例如,网站和 app api 接口服务通过二级域名分离。防止网站被刷,又因为怕影响 api 接口,不敢开全站滑块验证。

个人开发者,在没有 cloudflare 这种良心服务的情况下,还是少碰网站服务器。维护成本太高,无论是时间成本,还是钱包成本。 能用 SAAS 服务的,尽量用 SAAS 服务。像现在这种情况,网站服务器被攻击,流量暴涨,导致服务器宕机,影响用户体验。最后还得自己花时间和精力去解决这些问题,得不偿失。

阿里云 ESA 的不足

  1. 阿里云客服不专业。遇到 esa 问题,在微信群里问,客服让你提工单找工程师。提工单之后,遇到的售后工程师思维逻辑都很乱,给出的 waf 规则都是错的。要是不懂行的小白,照做了,网站直接 over。这个也能理解,正常懂运维的,谁去干阿里云客服啊,这就很尴尬。这种专业的操作最后还是要靠自己,或者找网上的大佬咨询。

  2. 基础版的每月 50g 流量就是个笑话 每天还要担心自己的流量超了。纯粹给自己找不痛快。对比 cloudflare 的免费版,流量不限量,真是天壤之别。 不得不说 Cloudflare 的免费服务真的是良心服务。作为一个个人开发者,能用 cloudflare 免费版,真的是太幸福了。 而且完全不需要担心静态资源文件的流量问题。毕竟现在网站静态资源文件越来越大,图片,视频,音频这些东西,流量消耗是非常大的。

  3. WAF 规则不支持滑块验证 只有 IP 规则支持滑块验证。通过地区,referrer,URI 这些规则都无法添加滑块验证。 而 cloudflare 的防护规则是支持滑块验证的。我作为一个开发者,我完全不理解加上这个功能有什么难度。 难道是为了节省防护产生的滑块页面流量?我都是年付费用户了,这点流量都不愿意给我吗?

网站防护还是需要专业知识

无论是阿里云 ESA 还是 cloudflare,都是需要一定的专业知识才能玩转的。 里面的概念特别多,即便是我有一定的开发经验,但是运维经验还是相对少很多,还是需要花时间去学习和摸索。 对于没有任何专业知识的小白用户来说,真的很难上手。 我亲眼看到非专业出身的站长,在 cloudflare 上面折腾了好几天,靠 AI 给出的 WAF 规则,但是效果并不好。 还是需要对攻击特征有一定的了解,才能制定出有效的防护规则。

可以参考前文 海外站被攻击,cloudflare 自定义防护规则创建策略,就是一个很好的案例。 其实防护规则相对清晰简单,但是如果不是专业人士,还是很难总结概括出 WAF 规则。

对我来说,也有很多的概念需要学习和理解。奈何现在攻击基本防住了,就没有动力继续深入研究了。。。

关于作者 🌱

我是来自山东烟台的一名开发者,有感兴趣的话题,或者软件开发需求,欢迎加微信 zhongwei 聊聊, 查看更多联系方式