配置HSTS

通过开启HSTS(HTTP Strict Transport Security)功能,您可以强制客户端(例如:浏览器)使用HTTPS与CDN节点创建连接,提高安全性。

前提条件

执行该操作前,请您确保已成功配置HTTPS证书,操作方法请参见配置HTTPS证书

背景信息

HSTS(HTTP Strict Transport Security,HTTP 严格传输安全),是一种网站用来声明他们只能使用安全连接(HTTPS)访问的方法。

配置HSTS后,客户端第一次使用HTTPS与CDN节点连接时,CDN节点通过使用响应头来告知客户端后续一段时间内访问时只能使用HTTPS访问,并阻止HTTP请求,HSTS响应头结构为:Strict-Transport-Security:max-age=expireTime [;includeSubDomains] [;preload],参数说明如下表所示。

参数

说明

max-age

HSTS Header的过期时间,单位为秒,客户端在此时间段内强制使用HTTPS访问。

includeSubDomains

可选参数。如果包含这个参数,说明该域名及其所有子域名均开启HSTS。

preload

可选参数。当您申请将域名加入到浏览器内置列表时需要使用preload列表。

客户端会记录域名在max-age到期前强制执行HSTS策略,客户端发起HTTP请求时将被强制转换为HTTPS请求,HTTP请求将被阻止。

说明

配置HSTS后,如果客户端第一次访问时使用HTTP,此时由于HSTS策略未同步至客户端,CDN节点会将该HTTP请求301重定向到HTTPS,从而避免此安全隐患。

约束限制

  • 配置HSTS后,客户端只能使用HTTPS协议访问CDN节点,请勿同时配置HTTPS强制跳转HTTP。

  • HSTS策略仅对域名有效,对IP无效。

  • 由于HSTS策略在客户端生效,关闭HSTS后无法立即生效,需要执行刷新使HSTS策略在客户端下一次HTTPS请求时下发给客户端。

操作步骤

  1. 登录CDN控制台

  2. 在左侧导航栏,单击域名管理

  3. 域名管理页面,找到目标域名,单击操作列的管理

  4. 在指定域名的左侧导航栏,单击HTTPS配置

  5. HSTS区域,单击修改配置

  6. HSTS设置对话框,打开HSTS开关,同时配置过期时间包含子域名

    • 过期时间:HSTS响应头在浏览器的缓存时间,建议填入60天。配置为0时,HSTS关闭。

    • 包含子域名:请谨慎开启,开启前,请确保该加速域名的所有子域名都已开启HTTPS,否则会导致子域名自动跳转到HTTPS后无法访问。

    HSTS设置

  7. 单击确定