HTTP Strict Transport Security (通常简称为HSTS) 是一个安全功能,它告诉浏览器只能通过HTTPS访问当前资源, 禁止HTTP方式。
当用户已经安全的登录开启过htst功能的网站 (支持hsts功能的站点会在响应头中插入:Strict-Transport-Security) 之后,支持htst的浏览器(比如chrome. firefox)会自动将这个域名加入到HSTS列表,下次即使用户使用http访问这个网站,支持htst功能的浏览器就会自动发送https请求(前提是用户没有清空缓存,如果清空了缓存第一次访问还是明文,后续浏览器接收到服务器响应头中的Strict-Transport-Security,就会把域名加入到hsts缓存中,然后才会在发送请求前将http内部转换成https),而不是先发送http,然后重定向到https,这样就能避免中途的302重定向URL被篡改。进一步提高通信的安全性。
HSTS preload list是什么?
HSTS preload list是Chrome浏览器中的HSTS预载入列表,在该列表中的网站,使用Chrome浏览器访问时,会自动转换成HTTPS。Firefox、Safari、Edge浏览器也会采用这个列表。
如何加入HSTS preload list?
加入HSTS preload list不但不麻烦,而且Chrome也鼓励HTTPS网站能够主动加入。申请的方法和需要满足的条件在https://hstspreload.appspot.com网站上都有具体说明。
我将加入HSTS preload list的条件摘录如下:
有效的证书(如果使用SHA-1证书,必须是2016年前就会过期的);
将所有HTTP流量重定向到HTTPS;
确保所有子域名启用HTTPS,特别是www子域名
同时输出的HSTS响应头部需要满足以下条件:
max-age至少需要18周,10886400秒
必须指定includeSubdomains参数
必须支持preload参数
Nginx配置:
HSTS preload list响应头:
在server模块中加入.
add_header Strict-Transport-Security “max-age=31536000; includeSubDomains;preload”;
新增一个server模块.
server
{
listen 80;
server_name suming.org www.suming.org;
rewrite ^/(.*) https://suming.org/$1 permanent;
}
达到以上条件之后前往:https://hstspreload.appspot.com 进行申请加入HSTS.(需反代访问)
最新评论
记得第一次拥有MP3 里边就有存有这首歌,满满的青春回忆
和和 2024-03-14
完全可以水一个插件😉
干货鱼 2024-03-10
我觉着这个快捷按钮还挺方便。
威言威语 2024-03-01
强迫症,哈哈哈
obaby 2024-02-22
这个东西不错,满满的干货啊
obaby 2024-02-20
现在用的家庭版,感觉用起来也没感觉少了什么功能,可能很多高级功能也用不到吧。
威言威语 2023-12-21
最近安装 win11 之后,我发现之前用激活 win10 的批处理,也能激活 win11.
obaby 2023-12-20