Estou tristemente restrito a uma versão muito antiga do bind (9.4.2)
Este é o pensamento. Se eu configurar bind com um named.conf e somente encaminhando, ele funciona perfeito.
acl clients {
any ;
};
options {
listen-on { 10.245.46.11; };
forward only ;
forwarders { 8.8.8.8 ; } ;
allow-query { clients ; };
max-cache-size 2097152 ;
empty-zones-enable no;
querylog yes;
directory "/usr/local/named/etc/zones";
dump-file "/usr/local/named/cache_dump.db";
statistics-file "/usr/local/named/named_stats.txt";
version "not currently available";
pid-file "/usr/local/named/var/run/named.pid";
};
Assim que adicionar uma zona raiz falsificada, ela funciona como pretendido.
zone "." IN {
type master;
file "all.zone";
notify no;
};
Em que all.zone contém apenas um único endereço A com encaminhamento de caractere curinga para que todas as consultas DNS sejam respondidas com esse endereço único.
O problema que estou enfrentando é que eu não quero permitir que determinados domínios sejam encaminhados para o DNS público. Exemplo abaixo
zone "cnn.com" {
type forward;
forwarders { 8.8.8.8; 8.8.4.4; };
};
/** Spoofed **/
zone "." IN {
type master;
file "all.zone";
notify no;
};
Toda consulta para * .cnn.com é respondida sem nada (em vez do endereço falsificado)
nslookup www.cnn.com 10.245.46.11
Server: 10.245.46.11
Address: 10.245.46.11#53
*** Can't find www.cnn.com: No answer
# dig @10.245.46.11 www.www.cnn.com
; <<>> DiG 9.2.4 <<>> @10.245.46.11 www.cnn.com
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 20722
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0
;; QUESTION SECTION:
;www.cnn.com. IN A
;; AUTHORITY SECTION:
. 3600 IN SOA ns.example.com. 357 86400 3600 86400 3600
;; Query time: 1 msec
;; SERVER: 10.245.46.11#53(10.245.46.11)
;; WHEN: Fri Feb 7 10:44:56 2014
;; MSG SIZE rcvd: 86
No entanto, se eu adicionar uma zona master a ela (junto com a zona de redirecionamento e a raiz falsificada), ela será solicitada para consultas bem.
zone "test.com" IN {
type master;
file "test.com.zone";
};
nslookup ns.test.com 10.245.46.11
Server: 10.245.46.11
Address: 10.245.46.11#53
Name: ns.test.com
Address: 190.208.65.193
Assim, qualquer um pode ter alguma idéia de por que, ao ter uma zona falsificada raiz, ela responde a consultas quando há uma zona mestre, mas não encaminha quando há uma zona encaminhada?
Obrigado antecipadamente!
Tags bind linux forwarding spoofing