【问题标题】:Certificate in Pending state in AWS Certificate ManagerAWS Certificate Manager 中处于待处理状态的证书
【发布时间】:2019-04-09 12:34:02
【问题描述】:

我们的项目部署在 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 小时,它仍处于待处理状态。我不能使用电子邮件验证方法,因为我不是该域的所有者。

【问题讨论】:

    标签: amazon-web-services dns amazon-elastic-beanstalk cname aws-certificate-manager


    【解决方案1】:

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

    _8046ecb910c52234234234234232ecae.example.com.example.com
    

    对于“主机名”,只需在创建记录时使用_8046ecb910c52234234234234232ecae

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

    【讨论】:

    • 我把.放在我的服务器地址后面。这有什么区别吗。?或者我应该删除服务器地址?
    • 正确答案高度依赖于 DNS 主机的 UI。你试过用dig查询你的记录吗?要么你得到正确的结果,要么得到错误的结果,要么没有得到任何结果,如何进行取决于你现在拥有什么。在不知道您使用的实际域的情况下,很难进行故障排除。
    • 对不起我的无知。如何为此使用dig
    【解决方案2】:

    很长一段时间以来,我在“等待验证”状态下遇到了类似的 AWS 证书问题。经过几次尝试,我终于让它进入“成功”状态。它可能因域名注册商而异,在我的例子中是 NameCheap。

    请参阅 AWS ACM 和 NameCheap 的屏幕截图,以按照对我有用的步骤进行操作:

    【讨论】:

      【解决方案3】:

      我也遇到了这个问题,等了一天,但仍在等待验证。我在这里遵循了答案,但仍然感到困惑并等待验证,因此我决定逐步分享在 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. 选择“域”选项卡 > NameServers - 选择 NameCheap Basic DNS
      2. 选择“高级 DNS”选项卡 > 主机记录
      3. 在类型下,选择“CNAME 记录”
      4. 在主机下,使用“记录名称”中的值。不要包含域名。
          _beocc4be975f27599f5d77f87af84321.
      
      1. 在值下,使用“记录值”中的值。复制所有内容。
          _6ae531c5dad6c5ceeefd65a73d532881.dumrqilasr.acm-validations.aws.
      
      1. 在 TTL 下,选择“自动”
      2. 点击 TTL 旁边的复选图标保存设置。

      在 AWS 中:

      1. 2-5 分钟后刷新 AWS Certificate Manager。亚马逊状态从 Pending Validation 变为 Issued 只需几分钟。

      【讨论】:

      • 应该只需要几分钟,但有时可能需要一两个小时。我只等了 70 分钟,我的证书就被批准了。
      【解决方案4】:

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

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

      【讨论】:

        【解决方案5】:

        我在Freenom 注册的域也有同样的未决问题,因为我忘记将name serversAWS Route 53 设置为Freenom

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

        *(ns 表示name server)

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

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

        可选地说,我们在GoDaddyNamecheapFreenow等域名提供商处注册了域名,那么我们需要将name serversAWS Route 53设置为GoDaddy、@ 987654338@、Freenow 等等。最后,我们的域将从AWS Certificate Manager 进行验证。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2014-06-21
          • 2018-03-31
          • 1970-01-01
          • 2021-07-14
          • 2017-08-24
          相关资源
          最近更新 更多