Apache证书目录中的`x_budle-g2-g1.crt`是什么?

What's the `x_budle-g2-g1.crt` in Apache certificate directory?

我申请了Goddady的Apache证书,目录下有:

我查了一下,x.crt的内容和x.pem一样(只有一个CERTIFICATE),x_bundle-g2-g1.crt里面有3个CERTIFICATE它。

为什么x.crtx.pem需要相同的内容?
x_bundle-g2-g1.crt的作用是什么,这里有3个CERTIFICATE,是指x_bundleg2g1吗?

我猜 X.pem 是您的服务器证书,由 GoDaddy 安全证书颁发机构 - G2 颁发

然后 x_bundle-g2-g1.crt 是直到根 GoDaddy 证书的信任链。

使用 openssl 命令检查 x_bundle-g2-g1.crt 的内容:

openssl crl2pkcs7 -nocrl -certfile x_bundle-g2-g1.crt | openssl pkcs7 -print_certs -text -noout | grep -E 'Subject:|Issuer:'

这个 hack 是打印 PEM 文件中的所有证书

我希望输出是这样的:

        Issuer: C=US, ST=Arizona, L=Scottsdale, O=GoDaddy.com, Inc., CN=Go Daddy Root Certificate Authority - G2
        Subject: C=US, ST=Arizona, L=Scottsdale, O=GoDaddy.com, Inc., OU=http://certs.godaddy.com/repository/, CN=Go Daddy Secure Certificate Authority - G2
        Issuer: C=US, O=The Go Daddy Group, Inc., OU=Go Daddy Class 2 Certification Authority
        Subject: C=US, ST=Arizona, L=Scottsdale, O=GoDaddy.com, Inc., CN=Go Daddy Root Certificate Authority - G2
        Issuer: C=US, O=The Go Daddy Group, Inc., OU=Go Daddy Class 2 Certification Authority
        Subject: C=US, O=The Go Daddy Group, Inc., OU=Go Daddy Class 2 Certification Authority

  1. Go Daddy Secure Certificate Authority - G2Go Daddy Root Certificate Authority - G2
  2. 签名
  3. Go Daddy Root Certificate Authority - G2
  4. 自签名Go Daddy Class 2 Certification Authority

检查您的网络服务器向客户端提供了哪些证书: openssl s_client -showcerts -servername YOUR_SERVER -connect YOUR_SERVER:443 </dev/null

我敢打赌它提供了完整的链 -

  • 您的服务器证书来自 X.pem
  • Go Daddy 安全证书颁发机构 - G2
  • Go Daddy 根证书颁发机构 - G2

这是针对缺少中间 GoDaddy 证书的终端系统(例如 brosers)的预防措施。