参考资料

  1. 如何检查 SSL 证书是否过期
  2. 哪些行业特别需要SSL证书
  3. ssl配置设置详细说明以及案例
  4. 实现HTTPS自动跳转的详细说明
  5. 申请SSL证书的步骤
  6. Apache服务器SSL配置
  7. SSL证书的安装与配置方法
  8. 企业应如何根据需求选择SSL证书

证书不受信任问题详解

详细介绍

证书不受信任通常发生在客户端无法验证服务器证书的有效性时,可能原因包括:

  • 自签名证书

  • 证书由不受信任的CA签发

  • 证书链不完整

  • 证书已过期

  • 主机名不匹配

适用操作系统

此问题可能出现在所有现代操作系统中,包括:

  • Windows (7/8/10/11, Server 2008-2022)

  • Linux (Ubuntu, CentOS, RHEL, Debian等)

  • macOS

  • Android

  • iOS

证书有效性检查

有效证书应满足:

  1. 由受信任的CA签发

  2. 在有效期内

  3. 包含正确的主机名

  4. 具有完整的证书链

  5. 使用安全的签名算法(SHA-256或更高)

配置示例

Linux信任自签名证书

sudo cp your_cert.pem /usr/local/share/ca-certificates/
sudo update-ca-certificates

Windows信任证书

  1. 双击证书文件

  2. 选择"安装证书"

  3. 选择"本地计算机"

  4. 选择"将所有证书放入以下存储"

  5. 浏览选择"受信任的根证书颁发机构"

Java信任证书

keytool -import -alias servercert -file server.crt -keystore cacerts

调试与验证

OpenSSL验证

openssl s_client -connect example.com:443 -showcerts

检查证书链

openssl verify -CAfile ca-bundle.crt your_cert.pem

检查证书详情

openssl x509 -in certificate.crt -text -noout

注意事项

  1. 生产环境应避免使用自签名证书

  2. 定期检查证书有效期并设置提醒

  3. 确保证书私钥安全

  4. 使用证书透明度(CT)日志监控

  5. 考虑使用Let's Encrypt等免费CA

  6. 禁用不安全的协议(SSLv3, TLS 1.0/1.1)

  7. 确保证书包含所有必要的SAN(Subject Alternative Names)