SSL 证书检查
检查任意域名的 SSL/TLS 证书详情和到期时间。
连接目标主机的 443 端口,读取它的 TLS 证书:覆盖的主机名(SAN)、有效期、颁发机构、签名算法、中间证书链。
从我们的服务器跑,绕开本机信任库——看到的是外部客户端实际看到的内容,
和一台干净的 CI 机器或新手机看到的视角相同。
查询中…
怎么看结果
- Subject / SANs——证书覆盖的主机名。现代浏览器已完全忽略旧的 Common Name,只认 Subject Alternative Names。
- 通配符——
*.example.com只匹配一级:匹配www.example.com,但不匹配 apexexample.com本身,也不匹配staging.api.example.com。 - Not before / Not after——有效期。Let's Encrypt 90 天,商业 CA 一般 397 天。不自动续期的就是定时炸弹。
- Issuer——签发叶子证书的 CA。完整证书链最终要到一个公开信任的根。
- 签名算法——应是 SHA-256 或更强。SHA-1 已废弃,浏览器拒绝。
常见场景
- 新证书装上后验证——确认 SAN 覆盖用户实际访问的每一个主机名。
- 排查"你的连接不是私密的"——先看有效期,再看证书链。少装中间证书是"Chrome 能开 iOS 打不开"最经典的原因。
- 续期前合理性检查——确认续期脚本真的换了证书,不是只滚了时间戳。
- 第三方 API 审计——集成前先看对方接口实际提供的证书是什么。
容易踩的坑
- 证书有效不代表浏览器会显示"完全安全"——那是混合内容(HTTPS 页面里加载了 HTTP 的图片/脚本/样式)的事。
- "我机器上能跑"经常是本机信任库缓存了中间证书。一定要从干净环境验证。
- 完整排查清单:SSL 证书排查清单。