SSL证书服务端显示有效但浏览器提示无效的问题排查求助
SSL证书浏览器显示过期但服务端certbot查询有效问题解决思路
- 校验Apache虚拟主机配置的证书路径是否正确
执行apache2ctl -S查看ektaz.com对应的虚拟主机配置文件路径,打开配置文件核对SSLCertificateFile、SSLCertificateKeyFile、SSLCertificateChainFile三个参数指向的路径,是否和certbot certificates输出的证书路径完全一致。需注意是否存在多套虚拟主机配置冲突、旧配置未删除的情况。 - 验证实际证书文件的有效期
执行openssl命令直接读取证书文件的过期时间,替换路径为你实际的证书路径:openssl x509 -in /etc/letsencrypt/live/ektaz.com/fullchain.pem -noout -dates
若输出的notAfter时间和certbot查询结果不一致,说明letsencrypt的软链接可能损坏,或者renew流程未正确生成新证书文件。 - 排查中间层证书缓存问题
确认域名是否接入了CDN、WAF、负载均衡等反向代理服务,若存在中间层,证书需同时部署在中间层节点,仅更新源站证书不会生效,需到对应服务控制台更新证书或开启自动续期。 - 确认443端口监听的服务是否正确
执行ss -tulnp | grep :443查看443端口的监听进程,确认是Apache进程,避免出现Nginx等其他服务占用443端口,导致重启Apache不生效的问题。 - 本地直连验证服务端返回的证书
在服务器本地执行curl命令跳过外部DNS解析,直接访问本地服务校验证书:curl -vI https://ektaz.com --resolve ektaz.com:443:127.0.0.1
若返回的证书有效期正确,说明问题出在外部网络,比如本地DNS缓存、hosts配置错误指向旧服务器;若返回的仍是旧证书,可确定问题在服务端配置。 - 检查certbot续期钩子配置
查看/etc/letsencrypt/renewal/ektaz.com.conf中的续期钩子参数,确认是否配置了Apache重载命令systemctl reload apache2,避免后续续期后仍未自动加载新证书。
内容的提问来源于stack exchange,提问作者lll
相关产品推荐
相关产品推荐

