certificate-untrusted

证书不受信任的定位与修复

现象

报 certificate verify failed、unable to get local issuer certificate、self-signed certificate 或 unable to get issuer certificate。证书可能没过期,但客户端不信任它。

快速定位

openssl s_client -connect <host>:443 -servername <host> -showcerts
openssl verify -CAfile ca.pem cert.pem
curl -v --cacert ca.pem https://<host>/
ls /etc/ssl/certs
update-ca-certificates --dry-run

常见根因

  1. 服务端只发了叶子证书,缺少中间证书。
  2. 签发 CA 不在客户端信任库,或信任库过旧。
  3. 使用了自签名证书,但客户端没有显式信任。
  4. 证书链顺序错误或包含错误证书。
  5. 企业代理/WAF 替换证书,客户端不信任代理 CA。
  6. SNI 未发送,返回了默认站点的证书。

修复

相关命令