为什么无法将第三方公有 SSL/TLS 证书导入 AWS Certificate Manager (ACM)?

1 分钟阅读
0

当我尝试将第三方 SSL/TLS 证书导入 AWS Certificate Manager (ACM) 时,收到了一条错误消息。为什么无法将我的证书导入 ACM?

简短描述

我尝试将第三方 SSL/TLS 证书导入 ACM,但收到了一条类似于以下内容之一的错误消息:

  • 您已经达到证书的数量上限。删除未使用的证书,或联系 AWS Support 申请提高限制。
  • 证书字段包含多个证书。您只能在此字段中指定一个证书。
  • 无法验证证书链。证书链必须以直接签名证书开始,后面是按顺序排列的任何中间证书。无效证书链中索引为 0。
  • 无法使用证书链验证证书。
  • 密钥算法不支持私有密钥的长度。
  • 提供的证书正文/链不是有效的 PEM 格式、内部故障或无法解析证书。请确保证书为 PEM 格式。
  • 不支持私有密钥。
  • 证书不是有效的自签名证书。

解决方法

按照与错误消息匹配的说明操作。

注意:

“您已经达到证书的数量上限。删除未使用的证书,或联系 AWS Support 申请提高限制。”

默认情况下,您最多可以将 1000 个证书导入 ACM,但是新的 AWS 账户一开始允许导入的证书数量较少。如果超出此限制,请求增加 ACM 配额

如果您收到此错误消息,但未超过为您账户设置的 1000 个证书限制,则有可能您超过了一年内可以导入的证书数量限制。默认情况下,每年可以导入的数量为账户限制值的两倍。例如,如果您的账户限制为 100 个证书,则每年最多可以导入 200 个证书。这包括在过去 365 天内导入和删除的证书。如果您达到此限制,请联系 AWS Support,请求提高限制。有关更多信息,请参阅 ACM 用户指南中的“配额”。

“证书字段包含多个证书。您只能在此字段中指定一个证书。”

如果您要导入证书,请不要对证书正文字段上载完整的证书链。如果您收到证书捆绑包,该捆绑包可能包含服务器证书和来自证书颁发机构 (CA) 的证书链。请将在生成证书签名请求 (CSR) 时创建的每个文件(证书、具有中间证书和根证书的证书链以及私有密钥)从捆绑包中分离出来。然后,将文件更改为 PEM 格式,并将它们分别上传到 ACM。要将证书捆绑包转换为 PEM 格式,请参阅问题排查

“无法验证证书链。证书链必须以直接签名证书开始,后面是按顺序排列的任何中间证书。无效证书链中索引为 0。”

在将证书导入 ACM 时,不要将该证书包含在证书链中。证书链必须只能包含中间证书和根证书。证书链必须有序,以中间证书开头,以根证书结尾。

“无法使用证书链验证证书。”

如果 ACM 无法将证书与提供的证书链匹配,请验证该证书链是否与您的证书相关联。您可能需要联系您的证书提供者以寻求进一步帮助。

“密钥算法不支持私有密钥长度 <key_length>”

当您创建 X.509 证书或证书请求时,将指定必须用于创建私有-公有密钥对的算法和密钥位大小。请确保您的证书密钥满足导入证书的先决条件。如果您的密钥确实满足密钥大小或算法的要求,请让您的证书提供者重新颁发具有受支持密钥大小和算法的证书。

“提供的证书正文/链不是有效的 PEM 格式”,“内部故障”或“无法解析证书。请确保证书为 PEM 格式。”

如果证书正文、私有密钥或证书链不是 PEM 格式,则必须转换文件。如果证书文件不包含适当的证书正文,则必须转换该文件。要将证书或证书链从 DER 转换为 PEM 格式,请参阅问题排查

“不支持私有密钥。”

如果使用 AWS CLI 将证书导入 ACM,请将证书文件的内容(证书正文、私有密钥和证书链)作为字符串传递。您必须通过在文件名前面附加 file:// 来指定证书、证书链和私有密钥。有关更多信息,请参阅 import-certificate

**注意:**请务必将文件路径 file://key.pem 用于密钥,并将 file://certificate.pem 用于证书。如果不包含文件路径,可能会收到以下错误消息:"The private key is not supported" 或 "The certificate is not valid"。

“提供的证书不是有效的自签名证书。请提供有效的自签名证书或证书链。”

您尝试导入的证书不是自签名证书。对于自签名证书,您必须同时提供证书及其私有密钥。如果证书由 CA 签名,您必须提供证书链、私有密钥和证书。


相关信息

将证书导入到 AWS Certificate Manager 中

证书和密钥的导入格式

导入证书

排查证书导入问题

相关视频

AWS 官方
AWS 官方已更新 2 年前