了解如何添加和编辑自定义 SSL 证书以及删除私钥文件上的密码。
概述
自定义 SSL 证书提供了以下几项优势:
- 不会供多个客户域共享。
- 客户可以从 Cloudflare 的网络提供有效的现有原始 SSL 证书。
在 Cloudflare 中激活后,Business 和 Enterprise 计划中的域可以使用自定义 SSL 证书。每个 Business 域只允许一个自定义 SSL 证书。 默认情况下,每个 Enterprise 域允许 Enterprise 客户使用一个自定义 SSL 证书,但可以向其 Cloudflare 账户团队请求其他自定义 SSL 证书。
Cloudflare 允许上传多种 SSL 证书类型:
- 统一通信证书(UCC)
- 扩展验证(EV)
- 组织验证(OV)
在将自定义 SSL 证书上传到 Cloudflare 之前,确保私钥文件未受密码保护。
先决条件
将自定义 SSL 证书上传到 Cloudflare 之前,有两个先决条件:
删除密钥文件密码
如果上传的密钥文件受密码保护,则 Cloudflare SSL/TLS 应用会生成以下错误:
密钥受密码保护。请删除密码并重新提交。
要删除密钥文件密码,解决方案取决于所使用的操作系统。例如,如果 mydomain.com.key 是私钥文件,则可以通过以下方法之一删除密码保护:
1.打开命令控制台。
2.导航到包含 mydomain.com.key 文件的目录。
3.复制原始密钥:
cp mydomain.com.key temp.key
4.运行以下命令:
openssl rsa -in temp.key -out mydomain.com.key
5.在控制台窗口中出现提示时,输入原始密钥密码。
6.将 mydomain.com.key 文件的内容上传到 Cloudflare。
1.浏览到 http://indy.fulgan.com/SSL/。
2.下载适用于 x86 或 x86_64 操作系统的最新版本的 OpenSSL。
3.打开 .zip 文件并解压缩。
4.单击 openssl.exe。
5.在出现的命令窗口中,运行:
rsa -in C:\Path\To\mydomain.com.key -out key.pem
6.在 openssl.exe 命令窗口提示时输入原始密钥密码。
7.将 key.pem(而不是 mydomain.com.key)文件的内容上传到 Cloudflare。
将私钥和证书转换为 PEM 格式
确保私钥和证书转换为标准的 PEM 格式(如 PFX)。Cloudflare 接受以下格式:
- PEM 编码密钥和证书包含在纯文本文件中,通常以 pem 文件扩展名结尾,其中包含未加密的证书和/或私钥。
- PKCS#7 文件通常以 .p7b 或 .p7c 文件扩展名结尾,并以“signedData”格式编码(不受支持 data、envelopedData、signedAndEnvelopedData、digestedData 和 encryptedData)。
- PKCS#12 文件通常以 pfx 或 .p12结尾,并使用空密码加密。
有关转换示例,请参阅使用 OpenSSL 转换的文档。 忽略此先决条件会导致 SSL 证书上传时出错: 无法解析密钥。
上传自定义 SSL 证书
执行以下步骤以上传自定义 SSL 证书:
1.登录 Cloudflare 仪表板。
2.单击相应的 Cloudflare 账户,然后选择相应的域。
3.单击 SSL/TLS 应用。
4.单击边缘证书部分中的上传自定义 SSL 证书。随即将显示上传自定义 SSL 证书和密钥窗口。
5.打开 SSL 证书文件。
6.将 SSL 证书文件内容复制并粘贴到 SSL 证书文本区域。
7.选择适当的捆绑方法(请参阅下面的说明)。
8.打开 SSL 证书私钥文件。
9.将私钥文件内容复制并粘贴到私钥文本区域。
10.选择 Geo Key Manager(请参阅下面的说明)。
更新自定义 SSL 证书的说明与最初上传证书的过程非常相似。
选择捆绑方法
捆绑方法将确定 SSL 证书如何与中间证书捆绑在一起以完成证书链。捆绑方法允许客户选择其首选的 SSL 证书链:
- 兼容可实现与旧版浏览器和客户端的最大兼容性。
- 现代通过使用更新和更少的中间证书来忽略某些旧版浏览器,从而优化证书链以提高效率。
- 用户定义允许客户提供自己的证书链。
选择 Geo Key Manager 私钥限制
Geo Key Manager 限制哪些 Cloudflare 数据中心存储 SSL 私钥。 保存私钥的数据中心区域与访问者的 HTTPS 请求的位置之间的地理距离可能导致初始请求的延迟。 访问 Cloudflare 博客文章 Geo Key Manager 简介以了解更多信息。
启用旧版客户端支持
旧版客户端支持可打开或关闭服务器名称指示 (SNI) 支持。 具体选项为:
- 新版:仅 SNI
- 旧版:支持非 SNI
新版为默认设置,是 Cloudflare 推荐的设置。 如果特定客户端需要非 SNI 支持,请使用旧版。 目前,Cloudflare API 将所有自定义 SSL 证书视为