网站HTTPS配置HTTP严格传输安全(HSTS)方法

既然白天博客已经做了HTTPS改造,那么强迫症比较严重的白天肯定是希望SSL/TLS的安全评级达到A+(根据检测SSL/TLS的服务是否符合行业标准,可分A、B、C…F、T等多个评级),但白天博客的SSL/TLS评级一直是A,如下图所示,于是就找了一波原因。

网站HTTPS配置HTTP严格传输安全(HSTS)方法

在检测结果中提到,“开启HSTS后能够提升到A+”,而且在检测结果下方的协议详情中,也提到不支持HTTP严格传输安全(HSTS)。

网站HTTPS配置HTTP严格传输安全(HSTS)方法

知道了原因那就好办了,对症下降就完事了。

服务器开启 HSTS 的方法是,只需在网站配置文件中添加以下代码即可。

在Nginx中设置HSTS协议:

server {
	add_header Strict-Transport-Security "max-age=63072000; includeSubdomains; preload"; #开启HTTP严格传输安全HSTS
}

在Apache中设置HSTS:

<VirtualHost *:443>
    Header always set Strict-Transport-Security "max-age=63072000; includeSubdomains;"
</VirtualHost>

解释:当客户端通过HTTPS发出请求时,在服务器返回的 HTTP 响应头中包含 Strict-Transport-Security 字段,失效时间是两年(63072000秒)。

注:

  1. max-age的时间不能小于半年(15552000秒);
  2. 网站需要开启HTTPS协议, HSTS 才会有效
网站HTTPS配置HTTP严格传输安全(HSTS)方法

改造之后再刷新一次检测报告,果然安全评级成A+了,自行恭喜一波。

如果遇到网站已添加了上述代码,且网站前端header表头中已显示strict-transport-security,但max-age的数值为5184000(60天),那么很有可能是网站做了CDN服务导致的。以阿里云CDN为例,转到CDN后台修改HTTPS配置,将HTST过期时间修改为180天即可。如下图所示:

网站HTTPS配置HTTP严格传输安全(HSTS)方法

原创文章,作者:白天,如若转载请注明出处:网站HTTPS配置HTTP严格传输安全(HSTS)方法

(11)
打赏 微信扫一扫 微信扫一扫
白天的头像白天博主
上一篇 2020年8月2日 22:45:48
下一篇 2020年8月13日 21:23:33

相关阅读推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

评论列表(2条)

微信内浏白天博客