前不久手贱,试了试HPKP,结果不知为突然出问题了。然后Firefox就彻底拒绝了我的网站。
HPKP,即The Public Key Pinning Extension for HTTP,是将证书的发行者的验证信息添加到一个HTTP头信息。用户代理在访问时,不光验证证书的有效性,还验证证书的发行者,从而避免中间人攻击。
出问题的原因很简单,证书的发行者不知为啥和原来有所不同(我用的是上一篇介绍的Let’s Encrypt,证书是自动颁发的),而HPKP又没有修改,所以Firefox就拒绝了。
但是不想折腾了,于是就删除了HPKP头信息,结果由于之前设置的过期时间太长,造成Firefox还是拒绝。很明显是Firefox缓存了相关信息。放狗找了一下,找到了一篇文章(见引用来源)。
只要把Firefox用户档案下面的SiteSecurityServiceState.txt
删除就行了。
Linux是在用户的家目录下面,也就是~/.mozilla/firefox/xxxxxxxx.default/SiteSecurityServiceState.txt
,其中xxxxxxxx
是一串随机字符。
而Windows就在%APPDATA%\Mozilla\Firefox\Profiles\xxxxxxxx.default\SiteSecurityServiceState.txt
,%APPDATA%
是一个系统变量,代表C:\Users\[username]\AppData\Roaming
这个目录([username]
是你的用户名)。
删除之前关闭Firefox,删除后再打开就正常了。
打赏微信支付宝
没有评论