Defaults.Exposed

Defaults.Exposed修复 › CDN / WAF 与主机

如何修复 CDN / WAF 与主机

对你网站背后管线的两次解读:你是否坐落在一面防护盾后面(一个带 Web 应用防火墙的 CDN,如 Cloudflare),它过滤攻击、吸收流量高峰;以及一张地图,说明到底是谁在运行你的 DNS、网站和邮箱。两者在我们的评分中都属于提示性——它们不动你的评分——但它们描述了你的源站服务器对攻击和宕机有多暴露,以及你的提供商有多盘根错节。前面有一面盾、再加上一组合理拆分的提供商,正是有韧性的企业该有的样子。

对您业务的关键影响: 一个前面没有防护盾的网站,会把每一次攻击、每一次流量高峰直接接在源站服务器上——所以一次机器人洪流、一次上线日激增,或单单一次自动化攻击,就能让你下线好几个小时,而恢复全靠你自己。在前面放一个 CDN/WAF(有免费档)能过滤掉绝大多数自动化攻击、吸收激增,并让网站在全球更快——对你的 IT 人员来说通常是一下午的活,且无许可费用。另外,如果你的 DNS、网站和邮箱全都在一家提供商那里,那里的一次宕机或攻破就会把你整个在线存在一次带下线;在一起事件中,知道你的提供商地图是你首先需要的东西。这两项检查都不改变你的评分——但两者都描述了对停机、销售损失和缓慢痛苦恢复的真实暴露。

这会让您付出什么代价

为什么它重要。 本页两项检查在我们的方法学里都属于提示性——它们登记为零分,永远不改变你的评分——因为它们描述的是你的基础设施,而非测试一个通过/失败的安全控制。我们把它们呈现出来,是因为它们映射真实的业务暴露。一个没有 CDN/WAF 的网站,把每一次攻击和流量高峰直接接在源站上,没有过滤、没有激增吸收;加上一个(Cloudflare 的免费档是常规路子)是一家小企业能做的杠杆最高、成本最低的韧性升级之一。而一张清晰的提供商地图——知道你的 DNS、网站和邮箱是拆分还是堆叠在一家提供商上——是出了状况时你首先需要的东西,也是一起被控制住的事件和一次彻底停摆之间的区别。

一句话说清这是什么

每个网站都跑在某处的一台服务器上。本页回答的问题是:在开放的互联网和那台服务器之间站着什么——以及到底是谁在运行你在线存在的各个部件?

有两个部分:

  1. **CDN / WAF——前面的盾。**CDN(内容分发网络)是一个坐落在你网站前面的全球网络,把你的内容快速送给任何地方的访客,并吸收流量激增。WAF(Web 应用防火墙)是一个过滤器,检查进入的请求,在它们到达你服务器之前挡掉恶意的。流行的服务(Cloudflare、AWS CloudFront、Fastly、Akamai、Sucuri 等)把这些捆在一起。我们查看你网站的响应,报告能否看到前面有一面盾——并且也记下你跑的是什么 Web 服务器。

  2. 主机 / 提供商地图——谁在运行你的管线。我们读取那些说明谁处理你 DNS(把你的域名变成地址的目录)、谁处理你邮箱的公开记录。由此我们能判断你的 DNS、网站和邮箱是拆分在多个提供商上(有韧性),还是堆叠在一家上(便利,但是一个单点故障)。

**最重要的一点要先说清:**在我们的评分中,**这两项都属于提示性。**它们不影响你的评分。我们把它们呈现出来,是因为它们描述了你的业务对停机和攻击有多暴露——这是一个不同于评分、且非常实际的问题。

这会让你付出什么代价

这些不是抽象的风险——它们是一个没有防护、盘根错节的配置把小问题变成糟糕一天的日常方式。

它实际上是什么

CDN / WAF——那一层防护

当一位访客(或一名攻击者)请求你的网站时,请求要么直接去你的源站服务器,要么先经过一个 CDN/WAF。如果前面有一面盾,那面盾可以:

我们通过查看这些服务在你网站响应头里留下的指纹来检测一面盾——例如 cf-ray 响应头(Cloudflare)、x-amz-cf-id(Amazon CloudFront)、x-served-by(Fastly)、x-akamai-transformed(Akamai)或 x-sucuri-id(Sucuri)。我们也读取 Server 响应头来识别你底层的 Web 服务器(nginx、Apache、IIS、LiteSpeed、Caddy 等),并标记任何过度分享的 X-Powered-By 响应头。

良好的状态长什么样:在你源站前面检测到一个 CDN/WAF,并且一个宣告具体版本号的 Server 响应头。

主机 / 提供商地图——你的基础设施依赖

你的域名悄悄指向好几个不同的服务:

由此我们能看出这些职责是拆分在多个提供商上(一处故障不会拖垮其他),还是堆叠在单一提供商上(便利,但一次宕机或攻破就带走一切)。

**良好的状态长什么样:**至少,DNS 由一个专门、可靠的提供商持有,而不是和其余一切捆在同一个账户里——这样你域名的目录就不和你的网站及收件箱同命运。

如何修复(免费,约一下午)

**把这交给你的 IT 人员或网页开发人员——修复是免费的。**在常见的免费档上,把一个 CDN/WAF 放到你网站前面不花一分钱,而隐藏你的服务器版本是一行设置。没有许可要买。(这里的付费选项只有监控、组合追踪和审计——绝不是修复本身。)业主唯一的决定是:对,在网站前面放一面盾。

因为两项检查都是提示性的,这里没有一样是计分的——但一个 CDN/WAF 是一家小企业能做的最有价值的韧性升级之一,所以值得做。

1. 在你网站前面放一个 CDN/WAF

最常见、免费的路子是 Cloudflare

  1. 创建一个免费的 Cloudflare 账户并添加你的域名。
  2. Cloudflare 读取你现有的 DNS 记录;检查它们是否正确导入。
  3. 把你域名的域名服务器(在你的注册商处)改成 Cloudflare 给你的那两个。这就是把流量路由经过 Cloudflare 的开关。
  4. 把 SSL/TLS 模式设为 Full(strict),使加密在访客 → Cloudflare → 你的源站之间保持端到端。(避免 Flexible,它让最后一段不加密。)
  5. CDN 和一个基线 WAF 现在已激活。你之后可以调整 WAF 规则,但默认值已经过滤了不少。

其他路子,取决于你的技术栈:

切换后,测试网站,确认 HTTPS 处处可用,并观察一天。不要过度缓存那些必须保持个性化或实时的页面(已登录区域、购物篮、结账)。

2. 停止宣告你的服务器版本

无论你加不加 CDN,都把你服务器宣告的版本隐藏起来——那是你白白递给攻击者的信息。

Nginx:

server_tokens off;

Apache(在主配置里):

ServerTokens Prod
ServerSignature Off

移除一个过度分享的 X-Powered-By 响应头(例如来自 PHP 或某个应用框架),在服务器或 CDN 层面——在 Cloudflare 上你可以用一条响应头转换规则把它剥掉。

3. 核对一下你的提供商地图(可选,约 10 分钟)

看看你的 DNS、网站和邮箱实际活在哪里:

平台说明

常见错误

关于评分的说明

把话说得彻底明白:**这两项检查都不影响你的评分。**它们在我们的方法学里登记为提示性、零分,我们绝不会因为一个没防护的源站或一个单一提供商配置而罚你。我们报告它们,是因为它们描述了对停机、攻击和缓慢事件恢复的真实暴露——也因为加一个免费的 CDN/WAF 是一家小企业能做的最有价值的升级之一。如果你在这里什么都不做,你的评分不变。如果你在网站前面放一面盾、并把 DNS 拆分出去,你就免费让业务变得明显更有韧性。这才是看待本页的正确方式:不是一个要去守的数字,而是一次值得拿下的韧性升级。

常见问题

这些不影响我的评分——那我为什么要在意?

因为评分衡量的是特定的安全控制(加密、邮件防伪冒、安全响应头),而这两项检查描述的是你的韧性——你对停机和攻击有多暴露。一台没有防护盾的裸服务器,仍可能在那些计分检查上拿高分,却仍在上线日被一场机器人洪流打下线。评分和韧性是两个不同的问题;本页讲的是第二个。无论评分如何,加一个 CDN/WAF 都是你能做的最划算的升级之一。

我不懂技术——我到底要做什么?

一个决定和一次交接。决定:你想不想在网站前面放一面防护盾(CDN/WAF)?对几乎每一家企业,答案都是想,而常规路子——Cloudflare 的免费档——不花一分钱。交接:把如何修复一节交给管理你网站或域名的人。搭建一个免费的 CDN/WAF 通常是一下午的活,没有许可费。修复是免费的;只有可选的监控和组合工具才收费。

CDN 和 WAF 有什么区别——我两个都需要吗?

CDN(内容分发网络)是一个坐落在你网站前面的全球服务器网络,把你的内容缓存到离访客近的地方使页面加载更快,并吸收流量高峰使激增不至于压垮你的源站。WAF(Web 应用防火墙)是一个过滤层,检查进入的请求并在它们到达你服务器之前挡掉恶意的——注入尝试、机器人攻击、已知的漏洞利用模式。好消息是流行的服务把两者捆在一起:开启 Cloudflare(或类似服务),你就同时得到 CDN 和一个基线 WAF。所以实际操作上,是一次搭建、两份好处。

我所有服务都在一家提供商那里,这很糟吗?

这是一种集中风险,不是罪过。便利是真的——一张账单、一个登录、一条支持热线。但权衡在于:一次宕机或一次账户被攻破,就能把你的 DNS、网站和邮箱一起带下线,还让你连为此沟通都做不到。许多小企业是自觉接受这一点的。这项检查的意义只是把这个依赖暴露出来,让它成为一个决定、而非一个意外。一个常见、省力的改进是把 DNS 迁到一个专门的提供商(Cloudflare 的 DNS 免费),这样至少你域名的目录不会和你的主机同命运。

你们检测到了我的服务器软件和版本——这为什么要紧?

当你的服务器明明白白宣告它跑什么软件、哪个版本(在 Server 或 X-Powered-By 响应头里)时,它给了攻击者一条捷径:他们可以查出那个确切版本的已知漏洞,并径直瞄准它们。它本身不会让你不安全,但它是不必要的信息披露——就像把你门锁的品牌和型号留在前门上。隐藏版本(一行服务器设置,免费)是一个小而明智的加固步骤。下面的修复步骤里有覆盖。

在网站前面放一个 CDN 会弄坏什么或拖慢它吗?

做对了,它会让网站更快——这正是 CDN 的全部意义。搭建时要做对的主要几件事是:确保 HTTPS 保持端到端(在 Cloudflare 上用 Full(strict)模式,而非 Flexible),以及不要过度缓存那些需要保持个性化或实时的页面(已登录的仪表盘、结账)。信誉良好的提供商默认就是合理设置。切换域名服务器后测试网站,观察一天,你就会有一个更快、有防护的网站,而无任何坏处。