面板的 8443 端口打开一直提示证书不受信任,主站 443 的证书监控一切正常,那张面板证书过期一周都没人发现。碰到这种情况,我一般先确认改动有没有真的生效。

原因不复杂,巡检脚本只连了域名加 443,面板用的是独立证书和另一个端口,同一台机器上两张证书各自到期,检查项里直接漏掉了一个端口。

「证书端口检查遗漏」相关的日志我一般连着看前后五分钟,单看一条报错经常判断不出是哪一步失败。报错里带路径的,先去看那个路径在不在、权限对不对。

openssl s_client -connect example.com:8443 </dev/null \
 | openssl x509 -noout -subject -dates
ss -lntp | grep -E ':(443|8443)'

同一份配置存在多处的,先确认改的是被加载的那一份。

具体做法是,先把这台机器所有对外的端口列出来,每个端口标上用的证书路径;巡检里对每个端口单独跑一次握手检查,不要合并成一条命令;告警文案带上端口号,免得只知道有证书过期却找不到哪张。

最后用这个标准收尾,8443 换上新证书后握手不再告警,巡检结果里两个端口都能看到剩余天数。

作者 9823189