« 上一篇下一篇 »

Let'sEnc家的https证书提示过期的另一种原因

经历了20201年9月Let's家的根CA过期问题后,大家犹如惊弓之鸟,总觉得它家的CA签发不稳定,有可能造成浏览器提示CA过期。大家纷纷更换门门庭,其实,还有另一种可能,就是你网站上Let's家的CA证书及时更新了,但是你的程序没有重新装载它! ^_^


Let'sEncrpyt的certbot更新时,要停止Nginx,然后下载新证书,例如 fullchian3.pem 等等,并生成对应的ln -s 软连接到 fullchian.pem;再启动 Nginx。一般此时,443端口是由Nginx运行的,它会根据nginx/conf.d/xxxxx.conf里的ssl配置,来reload新的证书的内容,从而不会有任何问题。


而如果是其他程序运行443端口的时候,例如,443是由A程序运行的:这个进程它一直在运行,不知道证书有变化,所以一直使用的是旧证书的内容,则浏览器看 https://域名/ 时呈现出来的信息,确实就是过期的CA证书(因为A程序没有使用fullchian3.pem,而是继续在用fullchian2.pem之类),不信任该网站。


解决方法很简单:

在crontab里执行certbot renew的脚本里,重启Nginx的时候 也重启一下占用443端口的那个程序以装载新的CA证书!