禁用 HSTS 和 HPKP

禁用 HSTS 和 HPKP

我们有一个启用了 HSTS 和 HPKP 并正常运行的域。出于一些原因,我们想禁用它,不是立即禁用,而是在密钥过期后立即禁用。这意味着该网站仍可通过 HTTPS 访问,就像现在一样,但没有 HSTS 和 HPKP 机制。

我们应该采取什么步骤才能顺利完成这一任务?

答案1

停止添加 HPKP(公钥密码) 和 HSTS(严格传输安全) 标头添加到答案中,并且当max-age其中任何一个的最大值过期后(意味着客户端将不再记得您的网站已启用这些功能),您的网站将不再受 HPKP 和 HSTS 的影响。

还请记住,如果您的max-ageHPKP 大于当前证书的剩余有效期,您仍然需要使用备份密钥进行证书更新,否则仍然记住您的备份密钥哈希的客户端会认为证书替换/更新时发生了一些令人讨厌的事情。

但这是一个非常奇怪的意图——当网络正在转向更安全的状态时,你却希望朝着相反的方向发展。

答案2

不要只是停止发送标头。在退出之前将标头设置为过期

Nginx 服务器块配置

add_header Public-Key-Pins 'pin-sha256="hdkehrh4jrhi7h37ei3iehkhw=";max-age=0;includeSubdomains';

顺便说一句,pin-sha256 是假的,复制粘贴我的代码没有任何好处。重要的是部分max-age=0;。这样,当你在 3、6、9 个月后删除标题时,就完成了。

我的一个前客户在未清除 HSTS 的情况下更换了主机,而他们的新主机没有为他们提供 SSL。他们的网站不受欢迎,他们以前客户的浏览器经常屏蔽非 https 网站(他们就搬到了非 https 网站)。

相关内容