仅转发 BIND 服务器

仅转发 BIND 服务器

我有一个特殊情况,我为我的用户提供 subdomain.mycompany.com 的托管服务。子域名可以托管在我地理分布的任何服务器上,这些服务器都配置了自己的名称服务器。

为了正确解析 IP 地址,我创建了一个仅“转发”的名称服务器,它基本上充当了所有其他名称服务器的网关。有道理吗?

这是我的配置

options {
    allow-query { any; };
    dnssec-enable yes;
    dnssec-validation yes;

    auth-nxdomain no;    
    listen-on-v6 { any; };
    recursion yes;
    forwarders {
            nameserver-loc1.ip;
            nameserver-loc2.ip;
            nameserver-loc3.ip;
            nameserver-loc4.ip;
    };

    forward only;
}

我的问题是 - 我是否走对了方向(因为我是 BIND 服务器的新手)以及如何保护此配置以提高安全态势。

答案1

如果我正确理解了您的设置,听起来它似乎不会起作用。

首先,BIND 中的转发是递归的一种变体。也就是说,只有当RD传入查询中设置了 (Recursion Desired) 位时,才会执行转发。如果有人拥有您的名称服务器(操作系统存根解析器确实设置了),但当某个域已委托给您的服务器并且某些递归器查询您的服务器时,
则会发生转发。resolv.confRDRD

其次,NXDOMAIN是有效响应,不会触发重试,因此如果使用的第一个转发器回答了NXDOMAIN此问题,则对客户端的响应将是这样。但是,
实际错误(例如SERVFAIL或缺少响应)也会导致它尝试下一个服务器。

至于安全性,据我所知,考虑到这似乎是一个根本不起作用的设置,这基本上不是一个问题。
但是,虽然您的设置允许从任何地方进行递归,这通常是灾难性的,但它设置为仅转发并列出您自己的可能仅具有权威性的名称服务器(如果它们确实允许递归,则坚持“灾难性糟糕”),您实际上可以获得答案的名称集是有限的,我想最终结果并不比普通的权威服务器更成问题。

相关内容