cat /etc/named.conf
[...] acl "trusted" { IPS HERE }; options { allow-recursion { trusted; }; allow-notify { trusted; }; allow-transfer { trusted; }; allow-query { trusted; }; directory "/var/named"; dump-file "/var/named/named_cache_dump.db"; statistics-file "/var/named/named_stats.log"; empty-zones-enable no; }; [...]
我看到以下内容,并想知道我需要哪些IP白名单? 我添加根名称服务器?
我想知道如何保护自己免受DNS攻击,如非法传输/recursion/中毒。
你真的需要两个ACL来正确处理。 一个用于对等名称服务器,另一个用于客户端。
acl "nameservers" { # A list of all the name servers that this server has transfers or receices zones from # should basically be all the masters/slave name servers, for all defines zones }; acl "internalclients" { # all your internal networks/client machines that can use this name server for resolution. 127.0.0.0/8; 10.0.0.0/8; 172.16.0.0/12; 192.168.0.0/16; }; options { allow-notify { nameservers; }; allow-transfer { nameservers; }; allow-recursion { internalclients; }; allow-query { internalclients; }; }; zone "example.org" { allow-query {any;}; allow-transfer { nameservers; }; };
为了达到最佳的中毒防护水平,您不应该使用您用于客户端parsing的相同DNS服务器的区域服务。 但是如果你信任你的内部客户,那么我相信这样的设置是足够的。