bg-blog-articles

什么是 SSL 中的 CA 包?

你正在服务器上安装 SSL 证书,却突然卡住了。配置要求提供一个“CA 捆绑“文件,但你不知道它是什么,也不知道在哪里可以找到它。你并不孤单,在 SSL 安装过程中,很多人都会遇到这种情况。

什么是 CA 包

CA 捆绑程序并不复杂,只要你了解它们的作用。在本指南中,我们将详细介绍什么是 CA 捆绑包,为什么服务器需要它,以及如何在几分钟内创建或获取一个CA 捆绑包。最后,你将能自信地处理 CA 捆绑包,避免令人沮丧的 “证书不被信任 “错误。


目录

  1. 什么是 CA 包?
  2. 为什么 CA 捆绑对 SSL 安全至关重要?
  3. 如何获得 CA 捆绑包
  4. 如何创建 CA 包
  5. 验证您的 CA 捆绑包
  6. 在服务器上安装 CA 捆绑程序
  7. 常见的 CA 捆绑问题和解决方案
  8. CA 捆绑最佳实践

今天从 SSL Dragon 订购 SSL 证书,可节省 10% 的费用!

快速发行、强大加密、99.99% 的浏览器信任度、专业支持和 25 天退款保证。优惠券代码SAVE10

龙飞行的详细图像

什么是 CA 包?

CA 捆绑包是一个单一文件,包含来自证书颁发机构的中间证书和根证书。与服务器证书结合后,就完成了 SSL 证书信任链–浏览器用来验证网站合法性的证书序列。

可以这样想:你的服务器证书上写着 “I’m example.com”,但浏览器需要证明。CA 捆绑包通过显示从您的证书一直到浏览器已经信任的根证书的可信路径来提供证明。

大多数 SSL 证书都需要 CA 捆绑包(PKCS#7 格式的证书是主要例外,因为它已经包含了捆绑包)。没有它,浏览器就无法验证证书的真实性,从而导致安全警告,使访问者望而却步。

CA 捆绑组件

典型的 CA 捆绑包包含两种类型的证书:

  1. 中间证书.这些证书由证书颁发机构颁发,用于弥合服务器证书与根证书之间的差距。像 Sectigo 和 DigiCert 这样的大型 CA 通常使用多个中间证书来分配证书签名工作量和管理不同类型的证书。
  2. 根证书.这些是信任链中的顶级证书。浏览器和操作系统都预装了来自可信 CA 的根证书。当浏览器看到它认可的根证书时,它就知道整个证书链都是有效的。

文件本身的扩展名通常是.pem.crt.ca-bundle。在文件中,你会看到 PEM 格式的证书–从 —–BEGIN CERTIFICATE—– 开始到 —–END CERTIFICATE—– 结束的文本块。

证书信任链

以下是SSL 证书链的实际运作方式:

  1. 服务器证书(您网站的证书)–包含您的域名和公钥
  2. 中间证书(来自 CA 包) – 由根 CA 签名,为您的证书签名
  3. 根证书(来自 CA Bundle)- 预受浏览器和操作系统信任
证书信任链

当有人通过 HTTPS 访问您的网站时,他们的浏览器会执行SSL 握手。在此过程中,浏览器会验证链中的每个环节,从服务器证书开始,一直到受信任的根证书。这就是PKI(公钥基础设施)的作用。

如果这个链条中缺少任何一个环节–通常是因为没有安装 CA 捆绑程序,浏览器就无法完成验证。 结果呢? 安全警告,如“您的连接非专用 “或 “证书不可信”。


为什么 CA 捆绑对 SSL 安全至关重要?

CA 捆绑程序除了显示挂锁图标外,还具有几项重要功能。

浏览器兼容性
不同的浏览器和操作系统维护不同的证书信任存储。您的 CA 捆绑程序可确保桌面浏览器、移动设备、电子邮件客户端和 API 工具之间的兼容性。这对于可能没有最新中间证书的旧版本浏览器尤为重要。

防范安全威胁
正确配置的 CA 捆绑程序可在多个层面验证证书的真实性,有助于防止中间人攻击。证书链使伪造几乎不可能,因为每张证书都由其上的证书加密签名。

满足合规要求
许多行业都要求正确配置 SSL/TLS:

  • PCI DSS要求安全传输持卡人数据
  • GDPR要求对个人数据采取适当的安全措施
  • HIPAA要求确保医疗保健信息的通信安全

缺少或配置不正确的 CA 捆绑程序会使你不符合要求,即使你的证书本身是有效的。


如何获得 CA 捆绑包

您不必每次都从头开始创建 CA 捆绑程序。以下是获取 CA 捆绑包的主要方法:

1.从你的证书颁发机构
当你从 Sectigo、DigiCert 或 GeoTrust 等提供商处购买 SSL 证书时,他们通常会在提供服务器证书的同时提供 CA 捆绑包。对于 SSL Dragon 客户,你可以在证书签发后立即在证书控制面板中找到 CA 捆绑包。

2.从 CA 官方存储库下载
大多数主要证书颁发机构都有公共存储库,你可以在那里下载根证书和中间证书。Sectigo、DigiCert、Let’s Encrypt 和其他 CA 在其支持网站上公布了它们的证书链。

3.从证书存储中提取
操作系统维护证书信任存储,您可以访问:

  • 视窗使用 certmgr.msc 访问证书管理器
  • Linux/macOS:/etc/ssl/certs/目录

如何创建 CA 捆绑包(分步指南)

有时你需要手动创建 CA 捆绑包–也许你只收到了单个证书文件。下面介绍如何正确创建。

先决条件

在开始之前,请确保您已

  • 您的中间证书文件
  • 您的根证书文件
  • 文本编辑器(记事本++、nano、vim,甚至是基本的记事本)

方法 1:使用文本编辑器

这种方法适用于任何平台,不需要专业技术知识。

第 1 步:找到证书文件

查找 CA 提供的证书文件。您要找的是中间证书和根证书,而不是服务器证书。这些文件的扩展名通常为.crt.pem.cer

第 2 步:打开每个证书

在文本编辑器中打开中间证书。你会看到如下内容

-----BEGIN CERTIFICATE-----
MIIGEzCCA/ugAwIBAgIQfVtRJrR2uhHbdBYLvFMNpzANBgkqhkiG9w0BAQwFADCB
[many lines of encoded data]
-----END CERTIFICATE-----

重要部分是 —–BEGIN CERTIFICATE—– 页眉和 —–END CERTIFICATE—– 页脚。确保这两个部分都存在且完整。

第 3 步:创建捆绑文件

在文本编辑器中新建一个空白文件。将其命名为yourdomain.ca-bundleca-bundle.crt。扩展名并不重要,可以使用 .pem、.crt 或 .ca-bundle。

第 4 步:按正确顺序复制证书

这是关键的一步。顺序必须是

  1. 第一:中间证书(直接签署服务器证书的证书)
  2. 第二:任何其他中间证书(如果您有多个证书)
  3. 最后:根证书

完整复制每份证书,包括开始行和结束行。证书之间不要添加额外的空格或空行。

下面是正确的 CA 捆绑程序的样子:

-----BEGIN CERTIFICATE-----
[Intermediate Certificate 1]
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
[Root Certificate]
-----END CERTIFICATE-----

步骤 5:保存文件

以 UTF-8 编码保存文件。仔细检查每张证书是否以 —–BEGIN CERTIFICATE—– 开始,以 —–END CERTIFICATE—– 结束,没有多余的空格。

方法 2:使用命令行

如果你能熟练使用命令行,就能在几秒钟内创建 CA 捆绑程序。

Linux/macOS

cat intermediate.crt root.crt > ca-bundle.crt

Windows 命令提示符

copy /b intermediate.crt + root.crt ca-bundle.crt

这些命令按顺序连接证书文件。确保按正确顺序列出:先中间证书,后根证书。

应避免的常见错误

  • 错误的证书顺序– 最常见的错误是将根证书放在前面
  • 额外的空白 – 不要在证书之间添加空行
  • 缺少页眉– 复制整个证书块,包括 BEGIN/END 行
  • 包括服务器证书– CA 捆绑包应只包含中间证书和根证书

今天从 SSL Dragon 订购 SSL 证书,可节省 10% 的费用!

快速发行、强大加密、99.99% 的浏览器信任度、专业支持和 25 天退款保证。优惠券代码SAVE10

龙飞行的详细图像

验证您的 CA 捆绑包

在生产服务器上安装 CA 捆绑程序之前,请验证其正确性。

使用 OpenSSL

OpenSSL是处理 SSL 证书的标准工具:

openssl verify -CAfile ca-bundle.crt your-server-certificate.crt

如果一切正常,你就会看到:

your-server-certificate.crt: OK

如果出现问题,OpenSSL 会告诉你问题出在哪里,例如证书丢失或排序不正确。

使用在线 SSL 检查工具

SSL Dragon 提供免费的 SSL 检查工具,可验证你的证书链。安装证书后,该工具将

  • 显示完整的证书链
  • 识别任何丢失的中间证书
  • 检查证书到期日期
  • 测试不同浏览器的兼容性

在服务器上安装 CA 捆绑程序

安装过程因平台而异。下面是简要概述:

阿帕奇使用SSLCertificateChainFile指令:

SSLCertificateChainFile /path/to/ca-bundle.crt

Nginx。指定可信证书:

ssl_trusted_certificate /path/to/ca-bundle.crt;

cPanel/WHM。使用网络界面将 CA 捆绑包粘贴到 “证书机构捆绑包 “字段。

IIS(Windows 服务器)。使用证书管理器将中间证书导入 “中间认证机构”,将根证书导入 “受信任的根认证机构”。

有关服务器环境的详细安装指南,请查看SSL Dragon 的安装文档


常见的 CA 捆绑问题和解决方案

问题 1:”证书链不完整 “错误

症状SSL 测试工具报告中间证书丢失,或某些浏览器显示警告。

解决方案:从 CA 网站下载完整的证书捆绑包。检查是否包含了所有中间证书,而不是只有一个。检查顺序是否正确。

问题 2:证书顺序错误

症状浏览器出现证书验证错误或间歇性 SSL 警告。

解决方法重新排列证书,将签署服务器证书的证书放在前面,根证书放在最后。保存并重新上传到服务器。

问题 3:PKCS#7 格式混乱

症状:您收到了 .p7b 文件,但不确定是否需要 CA 捆绑程序。

解决方案:PKCS#7 (.p7b) 文件已包含 CA 捆绑程序。您不需要单独创建一个。如果你的服务器需要PEM 格式,请转换它:

openssl pkcs7 -print_certs -in certificate.p7b -out certificate-with-chain.pem

问题 4:中间证书过期

症状:之前正常运行的网站突然出现 SSL 错误。

解决方案:从证书颁发机构下载最新的 CA 捆绑程序。主要 CA 会在旧的中间件过期前发布更新的中间件。用新的捆绑包替换旧的捆绑包。


CA 捆绑最佳实践

  • 保留备份– 将服务器证书、私钥和 CA 捆绑程序存储在安全的位置。如果移动服务器或重新安装,您将需要这些文件。
  • 仅使用官方来源– 始终从证书颁发机构的官方网站获取 CA 捆绑程序。第三方存储库可能已过期或已损坏。
  • 监控过期日期根证书和中间证书也会过期。设置提醒,检查 CA 更新。
  • 生产前测试– 首先在暂存环境中测试新配置。使用 SSL 测试工具验证一切正常后再推送到生产环境。
  • 记录你的设置– 记下你正在使用的证书、它们的安装位置和更新日期。将来您会非常感激。

加州套餐常见问题

可以自动生成 CA 捆绑包吗?
不 与自己生成的CSR 不同,CA 捆绑包必须来自证书颁发机构。您可以通过组合它们提供的证书手动创建一个。

CA 捆绑程序和证书链有什么区别?
CA 捆绑包仅包含中间证书和根证书。完整的证书链包括服务器证书和 CA 捆绑包。

是否所有证书都需要 CA 捆绑程序?
大多数 SSL/TLS 证书都需要一个中间件。主要的例外是 PKCS#7 格式的证书(.p7b 文件),它在文件本身中包含了中间件。

一个 CA 颁发的所有证书的 CA 捆绑程序是否相同?
一般来说是的。来自同一 CA 的同类证书(DV、OV 或 EV)通常使用相同的中间证书。


从 SSL Dragon 获得 SSL 证书和无忧 CA 捆绑包

设置 SSL 证书并不复杂。 SSL Dragon提供顺利安装所需的一切,包括预配置 CA 捆绑包、详细的安装指南和专家支持。

SSL Dragon 客户为何能避免令人头痛的 CA 捆绑问题:

完整的安装包– 服务器证书、私钥和 CA 捆绑在一起
预先验证的捆绑包– 所有证书在交付前均经过测试
24/7 专家支持– 真正了解 SSL 的人
快速签发– 域验证证书最快只需 5 分钟
普遍兼容性– 99.99%浏览器识别率
25 天退款保证– 无风险试用

浏览 SSL 证书

立即订购 SSL 证书, 可节省 10% 的费用!

快速发行, 强大加密, 99.99% 的浏览器信任度, 专业支持和 25 天退款保证. 优惠券代码 SAVE10

龙飞行的详细图像
撰写人

经验丰富的内容撰稿人, 擅长 SSL 证书. 将复杂的网络安全主题转化为清晰, 引人入胜的内容. 通过有影响力的叙述, 为提高数字安全作出贡献.