排错指南

无法连接:证书检测连不上服务器时的排查顺序

检测连不上服务器,没能拿到证书。

这条结论不是关于证书的。TLS 握手压根没开始,所以证书是好是坏、有没有过期,这次检测都无从知道。

先按 DNS → 端口 → 防火墙 → TLS 的顺序排,错误码会直接告诉你卡在哪一层。

错误码对应哪一层

错误码含义先查什么
ENOTFOUND域名解析不出 IPDNS 记录是否存在、是否刚改过还没生效
ECONNREFUSEDIP 通,443 端口没人监听服务是否在跑、是否只监听了 80
ETIMEDOUT包发出去没有回应防火墙、安全组、云厂商的入方向规则
ECONNRESET连上了又被断开反向代理配置、SNI 不匹配、被中间设备拦截
EPROTOTLS 层协商失败协议版本、加密套件是否被限制得太严

逐层确认

1. 域名解析到哪里
dig +short example.com
2. 443 端口通不通
nc -vz example.com 443
3. TLS 能不能握手
openssl s_client -connect example.com:443 -servername example.com </dev/null

第 2 步通、第 3 步不通,才说明问题真的在 TLS 层。前两步不通的话,证书配置改多少次都没用。

只对我们连不上的情况

  • 只监听内网:服务绑定在 127.0.0.1 或内网网卡上,公网访问不到。
  • 安全组只放行了特定来源:检测服务器的 IP 不在白名单里,而你自己的机器在。
  • WAF / 防爬:自动化请求被识别并丢弃,浏览器访问却正常。
  • 只在特定线路可达:境内外解析不同,或者部署在只对内开放的环境。

这几种情况下,站点对真实访客可能完全正常。监控要能持续工作,就需要让检测来源能够访问到这个端点。

常见问题

检测一下你自己的域名

免登录,一次真实的 TLS 握手,直接给出结论:还有多少天到期、证书链是否完整、是否包含这个域名。

需要一张新证书?本站提供基于 Let's Encrypt 的免费签发,支持泛域名。

了解免费证书

其他排错指南

Last updated on