使用AWS re:Post即您表示您同意 AWS re:Post 使用条款

为什么 ACM 颁发的证书的 CNAME 记录未解析,而且 DNS 验证状态仍为“Pending validation”(待验证)?

2 分钟阅读
0

我使用 DNS 验证为我的域申请了新的 AWS Certificate Manager (ACM) 证书。但是,CNAME 记录未解析,状态仍为“Pending validation”(待验证)。

简短描述

由于以下原因,DNS 验证证书请求可能处于 Pending validation(待验证)状态:

  • 您未将 CNAME 记录添加到正确的 DNS 配置中。
  • CNAME 记录包含其他字符或缺少字符。
  • 您已将 CNAME 记录添加到正确的 DNS 配置中,但是 DNS 提供商自动将裸域添加到其 DNS 记录的末尾。
  • 同一个域名存在一条 CNAME 记录和一条 TXT 记录。

**注意:**ACM 会定期检查 DNS 记录。您无法手动检查 DNS 记录。

有关详细信息,请参阅 AWS Certificate Manager DNS 验证

解决方法

**注意:**在计算机终端中运行 Linux 和 macOS 命令。或者,在 PowerShell 或 cmd 中运行 Windows 命令。

您未将 CNAME 记录添加到正确的 DNS 配置中

要检查您是否将 CNAME 记录添加到正确的 DNS 配置中,请运行以下命令:

**注意:**将 example-cname.example.com 替换为您的 ACM CNAME 记录。

Linux 和 macOS:

dig +short _example-cname.example.com

Windows:

nslookup -type=cname _example-cname.example.com

如果您已将 CNAME 记录添加到正确的 DNS 配置中并且该记录已传播,则命令输出将包含 CNAME 记录的值。

**注意:**某些 DNS 提供商可能需要 24-48 小时才能传播 DNS 记录。

如果前面的命令未返回输出,请将 CNAME 记录添加到正确的 DNS 配置中。要确定必须向其中添加 CNAME 记录的 DNS 配置,请运行以下命令:

Linux 和 macOS:

dig NS example.com

Windows:

nslookup -type=ns example.com

该命令的输出提供了包含在正确 DNS 配置的 NS 记录中的名称服务器。确认您添加 CNAME 记录的 DNS 配置中包含具有这些名称服务器的 NS 记录。

有关如何向您的 Amazon Route 53 托管区添加 CNAME 记录的信息,请参阅使用 Amazon Route 53 控制台创建记录

**注意:**当 CNAME 记录位于 Route 53 私有托管区中时,您无法验证域所有权。CNAME 记录必须位于公共托管区中。

CNAME 记录包含其他字符或缺少字符

如果 CNAME 记录包含其他字符,请将其删除。如果名称或值中缺少字符,请添加它们。

您已将 CNAME 记录添加到正确的 DNS 配置中,但是 DNS 提供商自动将裸域添加到其 DNS 记录的末尾

某些 DNS 提供商可能会自动将裸域添加到所有 DNS 记录的名称字段的末尾。传播的 CNAME 记录类似于以下内容:

_example-cname.example.com.example.com

由于 CNAME 记录名称与 ACM 提供的记录名称不匹配,因此验证不成功。ACM 证书一直处于 Pending validation(待验证)状态,直到在请求 72 小时后失效。

要确定您的 DNS 提供商是否自动将裸域添加到 CNAME 记录的末尾,请运行以下命令:

Linux 和 macOS:

dig +short _example-cname.example.com.example.com

Windows:

nslookup -type=cname _example-cname.example.com.example.com

如果输出返回 CNAME 记录的值,则您的 DNS 提供商添加了裸域。

要解决此问题,请编辑您的 CNAME 记录,以从您为名称字段输入的文本中删除裸域。

在您的 DNS 提供商添加裸域后,只剩下一个裸域。

同一个域名存在一条 CNAME 记录和一条 TXT 记录

要检查同一个域名的 CNAME 记录和 TXT 记录是否存在,请运行以下命令:

Linux 和 macOS:

dig +short CNAME cname_record_name
dig TXT cname_record_name

Windows:

nslookup -type=CNAME cname_record_name
nslookup -type=TXT cname_record_name

比较命令输出中的 CNAME 记录和 TXT 记录类型。如果它们相同,则错误的记录使证书处于 Pending validation(待验证)状态。要解决此问题,请删除 TXT 记录。

有关详细信息,请参阅 DNS 验证问题故障排除

相关信息

托管证书续订故障排除

在我对域名使用 ACM 托管式续订流程后,为什么我的 ACM 证书续订状态仍为“Pending validation”(待验证)?

设置 DNS 验证

AWS 官方
AWS 官方已更新 2 个月前