跳转到内容
搜索文档

DNSSEC 选项

最后更新 查看 MarkdownAgent 设置

DNS 安全扩展(DNSSEC) ↗通过为 DNS 记录添加加密签名来提高安全性。当您使用多个提供商且 Cloudflare 作为辅助时,有几种选项可为 Cloudflare 提供的记录启用 DNSSEC。

  • 多签名者 DNSSEC:Cloudflare 和您的主 DNS 提供商都知道彼此的签名密钥,并根据 RFC 8901 ↗ 各自对 DNS 记录进行实时签名。
  • 实时签名:如果您的域名未委派给主提供商的 nameserver,且 Cloudflare 辅助 nameserver 是唯一对 DNS 查询进行权威应答的 nameserver(隐藏主设置),您可以选择此选项,允许 Cloudflare 对您的 DNS 记录进行实时签名。
  • 预签名:您的主 DNS 提供商对记录进行签名并传出签名。Cloudflare 原样提供这些记录和签名,不进行任何签名。默认情况下,Cloudflare 使用 NSEC 记录 ↗而不是 NSEC3——如有需要请参阅 NSEC3 支持。此外,预签名 DNSSEC 不支持 Secondary DNS Overrides 或 Load Balancing。

设置多签名者 DNSSEC

请参阅设置多签名者 DNSSEC 并按照说明操作,同时注意关于 Cloudflare 作为辅助的说明。


设置实时签名 DNSSEC

如果您使用 Cloudflare 辅助 nameserver 作为唯一对 DNS 查询进行权威应答的 nameserver(隐藏主设置),您可以启用实时签名 DNSSEC,让 Cloudflare 为您的 zone 签署记录。

在此设置中,主 DNS 提供商上的 DNSSEC 无需启用。

  1. 在 Cloudflare 仪表板中,前往 DNS Settings(DNS 设置) 页面。

    Go to Settings ↗
  2. 在 DNSSEC with Secondary DNS(辅助 DNS 的 DNSSEC) 下选择 Live signing(实时签名)。然后您将获得在 registrar 处创建 DS 记录所需的多个值。

  3. 在注册商处添加 DS 记录。若注册商未列出 Algorithm 13(Cloudflare 首选的加密算法),它也可能称为 ECDSA Curve P-256 with SHA-256。

    各提供商 DNSSEC 说明

    以下并非完整列表,但这些链接可能有帮助:

  1. 使用 Edit DNSSEC Status 端点,并为您的 zone 将 status 设为 active。

Required API token permissions

At least one of the following token permissions is required:
  • DNS Write
Edit DNSSEC Statusbash
curl "https://api.cloudflare.com/client/v4/zones/$ZONE_ID/dnssec" \
	--request PATCH \
	--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
	--json '{
		"status": "active"
	}'
  1. 使用 DNSSEC Details 端点 获取在 registrar 处创建 DS 记录所需的值。

  2. 在注册商处添加 DS 记录。若注册商未列出 Algorithm 13(Cloudflare 首选的加密算法),它也可能称为 ECDSA Curve P-256 with SHA-256。

    各提供商 DNSSEC 说明

    以下并非完整列表,但这些链接可能有帮助:


设置预签名 DNSSEC

前提条件

  • Cloudflare 中的辅助 zone 已存在,并且从主 DNS 提供商的 zone 传输正常工作。
  • 您已考虑主 DNS 提供商使用 NSEC 还是 NSEC3,并在需要时启用了 NSEC3 支持。
  • 您的主 DNS 提供商会传出与 DNSSEC 相关的记录,例如 RRSIG、DNSKEY 和 NSEC。

步骤

  1. 在主 DNS 提供商处启用 DNSSEC。
  2. 使用仪表板或 API,为 Cloudflare 上的 zone 启用 DNSSEC。
  1. 在 Cloudflare 仪表板中,前往 DNS Settings(DNS 设置) 页面。

    Go to Settings ↗
  2. 在 DNSSEC with Secondary DNS(辅助 DNS 的 DNSSEC) 下选择 Pre-signed(预签名)。

使用 Edit DNSSEC Status 端点,并将 dnssec_presigned 值设为 true。

Required API token permissions

At least one of the following token permissions is required:
  • DNS Write
Edit DNSSEC Statusbash
curl "https://api.cloudflare.com/client/v4/zones/$ZONE_ID/dnssec" \
	--request PATCH \
	--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
	--json '{
		"dnssec_presigned": true
	}'
  1. 确保在 registrar 处添加了 Cloudflare nameserver。您可以在仪表板的 DNS Records(DNS 记录) ↗ 页面上查看 Cloudflare nameserver。

  2. 确保在 registrar 处添加了 DS 记录。DS 记录从主 DNS 提供商(zone 的签名者)获取,用于向 DNS 解析器指示您的 zone 已启用 DNSSEC。

这篇文档对您有帮助吗?