AWS Certificate Manager 中处于待定状态的证书

Certificate in Pending state in AWS Certificate Manager

我们的项目部署在 Elastic Beanstalk 上,我想 运行 在 HTTPs 上。我在 AWS Certificate Manager 上创建了我的证书并选择了 DNS 验证选项。我在我的 Godaddy DNS 记录中添加了提供的数据。下面是我的样本数据

Domain Name | Record Name | Record Type | Record Value 

example.com | _8046ecb910c52234234234234232ecae.example.com. | CNAME | _81b05686qweerttcxsaxasdadas5a566.tljzshvwok.acm-validations.aws. 

*.example.com | _8046ecb910c52234234234234232ecae.example.com. | CNAME |  _81b05686qweerttcxsaxasdadas5a566.tljzshvwok.acm-validations.aws.

AWS 为我提供了 example.com 和 *.example.com 的两条记录,但这两条记录是相同的。所以我在 Godaddy DNS 条目中添加了一条 CNAME 记录。我等了三天,我的证书仍然处于等待状态,最后过期了。我创建了一个新的,我已经等待了 24 小时,它仍然处于 pending 状态。我不是该域的所有者,因此无法使用电子邮件验证方法。

一个明显的常见错误是将整个主机名粘贴到一个不需要 FQDN 的框中,从而创建一个在 DNS 中实际上看起来像这样的记录(尽管您可能不会在屏幕上以这种方式观察到):

_8046ecb910c52234234234234232ecae.example.com.example.com

对于 "hostname," 只需在创建记录时使用 _8046ecb910c52234234234234232ecae

创建后,使用 dignslookup 验证它是否按预期解析。

我在 'Pending validation' 状态下的 AWS 证书有类似的问题已经有一段时间了。经过几次尝试,我终于让它进入 'Success' 状态。它可能因域名注册商而异,在我的例子中是 NameCheap。

请参考 AWS ACM 和 NameCheap 的屏幕截图,以遵循为我工作的步骤:

我也有这个问题,等了一天,但仍然等待验证。我遵循了这里的答案,但仍然感到困惑和等待验证,所以我决定逐步分享在 NameCheap 中对我有用的方法。

在 AWS 中:

  1. 导出DNS配置文件。它会有这样的东西。
    Domain Name,Record Name,Record Type,Record Value
    mysite.io,_beocc4be975f27599f5d77f87af84321.mysite.io.,CNAME,_6ae531c5dad6c5ceeefd65a73d532881.dumrqilasr.acm-validations.aws.

在 NameCheap 中:

  1. 选择 "Domain" 选项卡 > NameServers - 选择 NameCheap Basic DNS
  2. 选择 "Advanced DNS" 选项卡 > 主机记录
  3. 在类型下,选择 "CNAME record"
  4. 在主机下,使用 "Record Name" 中的值。不包括域名。
    _beocc4be975f27599f5d77f87af84321.
  1. 在值下,使用 "Record Value" 中的值。复制所有内容。
    _6ae531c5dad6c5ceeefd65a73d532881.dumrqilasr.acm-validations.aws.
  1. 在 TTL 下,选择 "Automatic"
  2. 点击 TTL 旁边的复选图标保存设置。

在 AWS 中:

  1. 2-5 分钟后刷新 AWS Certificate Manager。亚马逊状态从待验证更改为已发布应该只需要几分钟。

我在 Freenom 注册的域有相同的永远悬而未决的问题,因为我忘记将 name serversAWS Route 53 设置为 Freenom

来自 AWS Route 53 的名称服务器:

*(ns 表示 name server)

将上面的名称服务器设置为Freenom:

然后,它从待定中验证。但是,即使我将名称服务器设置为 Freenom,有时也需要很长时间才能验证。在这种情况下,我删除请求并在几个小时后再次发出新请求,然后,它被正确验证。

可选的说,我们在GoDaddyNamecheapFreenow等域名提供商处注册了域名,然后,我们需要设置name serversAWS Route 53GoDaddyNamecheapFreenow 等等。最后,我们的域将从 AWS Certificate Manager.

开始验证

我需要与@Kai 相同的解决方案 - 必须将 NS 记录添加到主域。但我的情况有点不同:

  • 我正在为我的域使用 AWS Route53
  • 根域 (example.com.au) 在不同的 AWS 账户中
  • 和我创建证书的帐户中的子域 (subdomain.example.com.au)
  • 因为它都在 AWS 中,所以我只需单击“在 Route 53 中创建记录”按钮即可自动添加验证记录...但证书无法解析
  • 问题:子域没有解析到根域
  • 我是怎么找到它的:dig +trace subdomain.example.com.au
    • 应该 return 来自 . 然后 au. 然后 com.au. 然后 example.com.au. 最后 subdomain.example.com.au.[=32 的一串响应=]
    • 没有return子域记录,这是子域和根域之间link不正确的线索。
  • 将子域中的 NS 记录添加为根域上的 CNAME 记录(类似于 Kai 的回答)导致验证几乎立即完成。