DNS 验证 - Amazon Certificate Manager
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

DNS 验证

域名系统 (DNS) 是连接到网络的资源的目录服务。DNS 提供商维护一个包含定义域的记录的数据库。如果选择 DNS 验证,ACM 会提供一条或多条别名记录,这些记录必须添加到此数据库。这些记录包含一个唯一的键值对,用于证明您对该域具有控制权。

例如,如果为 example.com 域请求证书并指定 www.example.com 为其他名称,则 ACM 为您创建两条别名记录。每条记录都是专为您的域和账户创建的,包含名称和值。值是指向Amazon域的别名,ACM 使用该域自动续订证书。别名记录只需添加到 DNS 数据库中一次。只要证书正在使用中,并且别名记录保持存在,ACM 就会自动续订证书。

重要

如果您使用 Amazon Route 53 管理您的公有 DNS 记录,请联系您的 DNS 提供商了解如何添加记录。如果您没有编辑域的 DNS 数据库的权限,则必须使用电子邮件验证

无需重复验证,只要别名记录仍然存在,您就可以为您的完全限定域名 (FQDN) 申请额外的 ACM 证书。也就是说,您可以创建具有相同域名的替换证书,或者是覆盖不同子域的证书。由于别名记录验证令牌适用于任何Amazon区域中,您可以在多个区域中重新创建相同的证书。您还可以替换已删除的证书。

您可以通过从证书关联的Amazon服务删除证书或通过删除别名记录来停止自动续订。如果您的 DNS 提供商不是 Route 53,请联系提供商了解如何删除记录。如果 Route 53 是您的提供商,请参阅 Route 53 开发人员指南中的删除资源记录集。有关托管证书续订的更多信息,请参阅ACM 证书的托管续订

注意

如果在 DNS 配置中链接到五个以上的别名记录,则别名记录解析将失败。如果您需要更长的链接,我们建议使用电子邮件验证

ACM 别名记录的工作原理

注意

本部分适用于不使用 Route 53 作为其 DNS 提供商的客户。

如果您不使用 Route 53 作为 DNS 提供商,则需要(通常通过网站)手动将 ACM 提供的别名记录输入到提供商的数据库中。别名记录用于多种目的,包括作为重新导向机制和供应商特定元数据的容器。对于 ACM,这些记录允许初始域所有权验证和持续的自动证书续订。

下表显示了六个域名的示例别名记录。每条记录的记录名称-记录值对用于验证域名所有权。

在表中,请注意,前两个记录名称-记录值对是相同的。这说明了对于 *.example.com 等通配符域,ACM 创建的随机字符串与为其基域 example.com 创建的随机字符串相同。否则,配对的记录名称记录值将会因每个域名而异。

别名记录示例
域名 记录名称 记录值 评论
*.example.com _x1.example.com. _x2.acm-validations.aws. 相同
example.com _x1.example.com. _x2.acm-validations.aws.
www.example.com _x3.www.example.com. _x4.acm-validations.aws. 唯一
host.example.com _x5.host.example.com. _x6.acm-validations.aws. 唯一
subdomain.example.com _x7.subdomain.example.com. _x8.acm-validations.aws. 唯一
host.subdomain.example.com _x9.host.subdomain.example.com. _x10.acm-validations.aws. 唯一

下划线 ( _ ) 之后的 x 值是由 ACM 生成的长随机字符串。例如,

_3639ac514e785e898d2646601fa951d5.example.com

代表生成的记录名称。关联的记录值可能是

_98d2646601fa951d53639ac514e785e8.acm-validation.aws.

用于同一记录。

注意

如果您的 DNS 提供商不支持带有前导下划线的别名记录值,请参阅排查 DNS 验证问题

当您请求证书并指定 DNS 验证时,ACM 会提供以下格式的别名记录信息:

域名 记录名称 记录类型 记录值
example.com _a79865eb4cd1a6ab990a45779b4e0b96.example.com. 别名记录

_424c7224e9b0146f9a8808af955727d0.hkmpvcwbzw.acm-validations.aws.

域名是与证书关联的 FQDN。记录名称唯一标识记录,用作键值对的键。记录值用作键值对的值。

必须在 DNS 提供商用于添加 DNS 记录的 Web 界面的相应字段中输入所有这三个值。提供商对于记录名称(或只是“名称”)字段的处理方式并不相同。在某些情况下,您需要提供上面所示的整个字符串。其他提供商会自动将域名附加到您输入的任何字符串,这意味着(在本示例中)您只应输入

_a79865eb4cd1a6ab990a45779b4e0b96

到名称字段中。如果您猜错了这一点,并输入包含域名的记录名称(例如 .example.com),您的最终结果可能如下所示:

_a79865eb4cd1a6ab990a45779b4e0b96.example.com.example.com

在这种情况下,验证将失败。因此,您应该尝试提前确定您的提供商期望的输入类型。

设置 DNS 验证

在控制台上设置 DNS 验证

  1. 登录Amazon管理控制台并从以下位置打开 ACM 控制台:https://console.aws.amazon.com/acm/home。如果显示介绍页面,请选择 Get Started(开始使用)。否则,请选择 Request a certificate

  2. Request a certificate 页面上,键入您的域名。有关键入域名的更多信息,请参阅请求公有证书

  3. 要向 ACM 证书添加更多域名,请在您刚刚键入的名称下方打开的文本框中键入其他名称。

  4. 选择 Next (下一步)

  5. 选择 DNS validation(DNS 验证)Next(下一步)

  6. Add tags(添加标签)页面上,您可以选择为证书添加元数据标签。完成后选择 Review(审核)

  7. Review(审核)页面上,确认域名和验证方法正确无误,然后选择 Confirm and request(确认和请求)

  8. Validation(验证)页面上,完成下列两个过程之一:

    1. (可选)使用 Route 53 进行验证。

      Validation(验证)页面上,单击域名旁边的向下箭头。如果满足以下条件,则会显示活动的 Create record in Route 53(在 Route 53 中创建记录)按钮:

      • 您使用 Route 53 作为 DNS 提供商。

      • 您有权写入由 Route 53 托管的区域。

      • 您的 FQDN 尚未经过验证。

      注意

      如果您在使用 Route 53 但 Create record in Route 53(在 Route 53 中创建记录)按钮缺失或已禁用,请参阅 ACM 控制台不显示“Create record in Route 53”(在 Route 53 中创建记录)按钮

      选择 Create record in Route 53(在 Route 53 中创建记录)按钮,然后选择 Create(创建)Validation(验证)页面底部现在应该显示 Success(成功)状态通知。

      选择 Continue(继续)查看 Certificates(证书)列表页,您的新证书可能仍会显示 Pending validation(等待验证)最多 30 分钟。

      提示

      您无法以编程方式请求 ACM 在 Route 53 中自动创建您的记录。但是,您可以向 Route 53 发出一个 Amazon CLI 或 API 调用以在 Route 53 DNS 数据库中创建记录。有关 Route 53 记录集的更多信息,请参阅使用资源记录集

    2. (可选)如果您没有使用 Route 53 作为 DNS 提供商,则必须从 Validation(验证)页面检索别名记录信息,并将其添加到您的 DNS 数据库中。您可以通过两种方式之一来执行此操作:

      • Domain(域)部分中,展开您的域信息并记下别名记录信息。此信息需要手动添加到您的 DNS 数据库。

      • 或者,选择 Validation(验证)页面底部的 Export DNS configuration to a file(将 DNS 配置导出到文件)。文件中的信息需要手动添加到 DNS 数据库中。

      重要

      要避免验证问题,请查看 ACM 别名记录的工作原理 然后将信息添加到 DNS 提供商的数据库。如果遇到问题,请参阅 排查 DNS 验证问题

      在 DNS 提供商的配置页面上添加别名记录之后,返回 ACM 控制台(如果仍处于打开状态),然后选择 Continue(继续)。如果您已关闭控制台,则可以稍后返回控制台以检查证书请求的状态。

      Certificates(证书)页面显示一个表格视图,其中包含您的所有证书。在 DNS 提供商传播您的记录更新后,ACM 最多需要几个小时来验证域名并颁发证书。在此期间,ACM 显示验证状态为 Pending validation(等待验证)。验证域名后,ACM 将验证状态更改为 Success(成功)。Amazon颁发证书后,ACM 将证书状态更改为 Issued(已颁发)

    注意

    如果 ACM 无法在生成别名记录值后的 72 小时内验证域名,ACM 会将证书状态更改为 Validation timed out(验证超时)。导致此结果的最可能原因是您未使用 ACM 生成的值成功更新 DNS 配置。要解决此问题,您必须在查看别名记录说明后请求新的证书。