← 全部文章

技术与生活 / 一篇记录

HTTPS 握手成功,还不算证书检查完成

证书受信任和域名匹配需要同时成立,有效期也应在检查范围内。

连接能够加密,与证书链可信、主机名匹配、有效期正确,是几项不同要求。反向代理还可能按 SNI 为不同域名选择不同证书。

从一个例子看起

域名 example.com 仅用于说明,核查自己的网站时请替换目标地址。

openssl s_client -connect example.com:443 -servername example.com </dev/null

检查证书链、域名和有效期,而不只看握手是否完成。

排查时再往前走一步

从公网携带正确主机名检查一次,再与磁盘证书比较。证书链缺失或客户端时间错误,都可能导致某些设备失败而另一些设备正常。

自动化探测还应使用客户端的主机名验证能力,而不是自行比较一个显示字段。不同工具版本的默认验证选项有差异,因此检查脚本需要明确失败条件并用无效样本验证。

该命令的默认验证行为因版本不同,不能只凭退出码断言证书可信。

参考:HTTP 文档。

搜索文章

输入关键词,找回一篇记录。