我使用 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 验证