如何为“_acme-challenge”子域正确设置 DNS 区域委派?

如何为“_acme-challenge”子域正确设置 DNS 区域委派?

我们在为我们的一个子域设置 DNS 区域委派时遇到了困难。

我们有一条 DNS 记录”_acme-挑战“该记录会频繁更改,并且此 DNS 记录直接在我们的服务器上定义,该服务器仅充当此记录的辅助名称服务器。

我们需要将此记录委托给我们的辅助名称服务器,而不必在我们的主 DNS 区域中手动更改它。

请注意,我们的辅助名称服务器与域“ example.com”相同。

我们的域名在 OVH 注册:示例.com

我们的主要 DNS 服务器位于 OVH:

  • ns15.ovh.net
  • dns15.ovh.net

我们的example.com内容托管在具有以下 IP 的网络服务器上(不在 OVH 上): 212.123.456.789

我们对此 DNS 区域没有任何问题:我们的域名和电子邮件均正常运行。

我们的主要 DNS 区域在 OVH 中定义如下(为简洁起见,已缩短):

$TTL 3600
@   IN SOA dns15.ovh.net. tech.ovh.net. (2019111705 86400 3600 3600000 300)
                       IN NS     ns15.ovh.net.
                       IN NS     dns15.ovh.net.
                       IN A      212.123.456.789
ftp                    IN CNAME  example.com.
mail                   IN A      212.123.456.789
www                    IN CNAME  example.com.

我们的第二个 DNS 服务器有这些始终存在的记录:

example.com.            NS      ns1.example.com.
ns1.example.com.        A       212.123.456.789
example.com.            NS      ns2.example.com.
ns2.example.com.        A       212.123.456.789

我们的第二个 DNS 服务器将定期更新其区域中的以下记录:

_acme-challenge.example.com     TXT     HereIsTheTextContent

我们尝试将以下记录添加到 OVH 的主 DNS 区域,以便将该记录委托给辅助名称服务器,但没有成功:_acme-challenge.example.com根本没有 ping 通。

ns1                    IN A      212.123.456.789
ns2                    IN A      212.123.456.789
_acme-challenge        IN NS     ns1.example.com.
_acme-challenge        IN NS     ns2.example.com.

我们猜测某些记录丢失了,但是在哪里呢?

  • 我们是否忘记向我们的主 DNS 区域添加一些记录?(在 OVH 定义)
  • 我们是否忘记向 SECONDARY DNS 区域添加一些记录?(在我们服务器上托管的“example.com”上定义)

如果你能指出错误并给我们提供一些线索来解决问题,我会很高兴的:-)

谢谢

答案1

感谢您的评论!这里是一些答案和解决方案。

总结:我的问题中发布的初始 DNS 配置功能齐全。我们错误地认为它不起作用,因为我们忘记了 TXT 记录无法 ping !(我们真丢脸)

详细解释和答案:

  • @Ryan Bolger :我们称之为“主 DNS 服务器”:ns15.ovh.netAND dns15.ovh.net。它们由 OVH 上托管的机器管理。
  • @Ryan Bolger :我们称之为“辅助 DNS 服务器”:ns1.example.comAND ns2.example.com。它们由我们自己的基础设施上托管的机器管理。正确的术语似乎是“子委托 DNS 区域“。
  • @Ryan Bolger:这些主名称服务器和辅助名称服务器具有不同的名称,因为它们不是由同一台机器管理的。
  • @Ryan Bolger:我们没有选择在没有任何人工干预的情况下使用 AXFR/IFXR 区域传输,因为我们对正确设置它们的知识还不够。
  • @Harry Johnston :是的,我们试图实现的是为子域设置一个主名称服务器。这个服务器被称为“辅助 DNS 服务器”。抱歉造成混淆和措辞不当!
  • @Harry Johnston :不,我们以前没有使用过这个“辅助 DNS 服务器”。我们只使用它来保存和提供_acme-challenge记录
  • @Harry Johnston :抱歉,我们说记录_acme-challenge“根本无法 ping 通”:您说得对,我们犯了一个错误,忘记了 TXT 记录无法 ping 通!(再次让我们感到羞耻)

总结一下有关当前情况的所有信息:

=> _acme-challengeTXT 记录在我们的“辅助 DNS 服务器”(又称我们的子委托 DNS 区域)上定义(事实上,正如 @Harry Johnston 所指出的,它充当主名称服务器)。有关此技术的更多信息,请参阅使用“一次性”验证域本文部分: https://www.eff.org/deeplinks/2018/02/technical-deep-dive-securing-automation-acme-dns-challenge-validation

=> 我们的“主 DNS 服务器”托管在 OVH,具有以下区域:

$TTL 3600
@   IN SOA dns15.ovh.net. tech.ovh.net. (2019111705 86400 3600 3600000 300)
                       IN NS        ns15.ovh.net.
                       IN NS        dns15.ovh.net.
                       IN A         212.123.456.789
ftp                    IN CNAME     example.com.
mail                   IN A         212.123.456.789
www                    IN CNAME     example.com.
ns1                    IN A         212.123.456.789
ns2                    IN A         212.123.456.789
_acme-challenge        IN NS        ns1.example.com.
_acme-challenge        IN NS        ns2.example.com.

=> 我们的“辅助 DNS 服务器”托管在我们自己的基础设施上,具有以下区域,并具有定期更改的_acme-challengeTXT 记录:

HOST                                Record Type         Value
example.com.                        NS                  ns1.example.com.
ns1.example.com.                    A                   212.123.456.789
example.com.                        NS                  ns2.example.com.
ns2.example.com.                    A                   212.123.456.789
_acme-challenge.example.com.        TXT                 k9ieQiTudAC7XydqdG7UIOtJn0PPC4brDK7e_zOC-7m

结论是它正在发挥作用:

  • TXT记录_acme-challenge已从我们的“辅助 DNS 服务器”正确检索,这意味着_acme-challenge子域的区域委派可以运行。

我们没有看到此配置中的任何错误:你们能确认吗?

相关内容