了解 HSTS(HTTP Strict Transport Security)

Cloudflare 支持 HTTP Strict Transport Security(HSTS),可帮助保护您的 HTTPS Web 服务器免受中间人降级攻击,例如 SSL 剥离攻击。


概述

HSTS 是一项网络安全技术,用于保护 HTTPS Web 服务器免受降级攻击。降级攻击(也称为 SSL 剥离攻击)是一种中间人攻击形式,攻击者将 Web 浏览器从正确配置的 HTTPS Web 服务器重定向到恶意服务器。

HSTS 由一个含有多个参数的 HTTP 标头组成,这些参数可指引兼容的 Web 浏览器

  • 将所有 HTTP 链接转换为 HTTPS 链接,以及
  • 将所有浏览器 SSL 警告升级为无法绕过以查看网站的错误。

请参阅启用 HSTS 之前的先决条件。


先决条件

启用 HTTP Strict Transport Security(HSTS)可提高网站的安全性。但是,需要记住一些重要注意事项:

  • 在 HSTS 之前启用 HTTPS,否则浏览器无法接受您的 HSTS 设置。
  • 启用 HSTS 后,HTTPS 必须保持启用状态,否则访问者将无法访问您的网站。

启用 HSTS

如果在启用 HSTS 时禁用了 SSL 或 HTTPS,则访问者无法在最长期限标头指定的持续时间内访问您的网站。例如,如果最长期限标头设置为 6 个月且您在启用 HSTS 后 2 个月禁用 HTTPS,则在启用 HSTS 时访问您网站的浏览器无法在另外 4 个月内访问您的网站,除非再次启用 HTTPS。

要启用 HSTS,请执行以下操作:

1.登录 Cloudflare 仪表板。

2.单击需要 HSTS 的域的相应 Cloudflare 账户。

3.确保选择了正确的域。

4.单击 Cloudflare SSL/TLS 应用。

5.单击 HTTP Strict Transport Security (HSTS) 部分下的启用 HSTS

6.随即将出现一个确认窗口。查看警告内容。

7.要继续,请单击我明白

8.单击下一步

9.配置适合您的域的 HSTS 设置。  至少配置最长期限标头以启用 HSTS:

 

设置名称

描述

选项

启用 HSTS(Strict-Transport-Security)

为所有 HTTPS 请求向浏览器提供 HSTS 标头。

关闭/打开

最长期限标头(max-age)

指定浏览器强制执行 HSTS 策略的持续时间,并要求为您的网站正确配置 HTTPS。

禁用,

或 1 至 12 个月的范围

将 HSTS 策略应用于子域(includeSubDomains)

将父域(example.com)中的 HSTS 策略应用于子域(www.development.example.comapi.example.com)。

如果您的子域不支持 HTTPS,则它们将无法访问。

关闭/打开

预加载

允许浏览器自动预加载 HSTS 配置。防止攻击者将第一个请求从 HTTPS 降级为 HTTP。如果没有预加载,则只有在初始成功的 HTTPS 请求后才设置 HSTS。

预加载可以使无 HTTPS 支持的网站完全无法访问。

关闭/打开

No-Sniff 标头

发送 X-Content-Type-Options: nosniff 标头,以防止 Internet Explorer 和 Chrome 浏览器自动检测 Content-Type 标头明确指定以外的内容类型。

关闭/打开

10.单击保存

配置 HSTS 预加载后,向每个浏览器的预加载列表提交添加请求。Chrome、Firefox/Mozilla 和 Safari 使用 Chrome 预加载列表。要包含在 HSTS 预加载列表中,最长期限标头至少需要为 12 个月。
下面列出的操作会禁用 HTTPS,并且在启用 HSTS 时必须避免执行这些操作。

如果您的源 Web 服务器没有证书颁发机构提供的有效 SSL 证书,请避免执行以下操作:

要避免的其他操作包括

  • 将 HTTPS 重定向到 HTTP
  • 上传配置错误的自定义 SSL 证书,其中包含:
    • 无效的 SSL 证书
    • 过期的证书
    • 不匹配的主机名

禁用 HSTS

如果在禁用 HSTS 之前或在等待 Cloudflare HSTS 配置中指定的原始最长期限标头的持续时间之前删除 HTTPS,则在最长期限标头的持续时间内或在启用 HTTPS 之前,访问者将无法访问您的网站。

请按照以下步骤禁用您域上的 HTTPS:

1.登录 Cloudflare 仪表板。

2.单击不再需要 HSTS 的域的相应 Cloudflare 账户。

3.确保选择了正确的域。

4.单击 Cloudflare SSL/TLS 应用。

5.单击 HTTP Strict Transport Security (HSTS) 部分下的启用 HSTS

6.随即将出现一个确认窗口。查看警告内容。

7.单击我明白

8.单击下一步

10.将最长期限标头设置为 0(禁用)


相关资源

使用 HSTS 实施 Web 策略

 

 

Not finding what you need?

95% of questions can be answered using the search tool. This is the quickest way to get a response.

由 Zendesk 提供技术支持