Assumindo que a lista negra do DNS não é uma maneira de impedir que alguém chegue a um site se realmente quiser, mas é útil para lidar com softwares mal-intencionados e casual tentativas de chegar a um mau site ...
Zonas de política de resposta (RPZ)
O RPZ permite criar um arquivo de zona que define as regras de reconfiguração de respostas. Estes foram implementados na versão 9.8.1.
Digamos que você queira bloquear badrecord.example.com.
, que tem um endereço IP de 198.51.100.1
. O IP real não importa aqui, mas fornece um para ajudar a reforçar o que acontece.
options {
# Snip.
response-policy { zone "mypolicy"; };
};
zone "mypolicy" {
type master;
file "mypolicy.zone";
allow-query { none; };
};
O arquivo de zona seria parecido com:
$TTL 1H
@ SOA LOCALHOST. doesnt.really.matter.example.org. (1 1h 15m 30d 2h)
; NS required for zone syntax reasons, but ignored
NS LOCALHOST.
; CNAME bad reply to a DNS record that isn't in this file
badrecord.example.com. CNAME mywalledgarden.example.edu.
; replace bad reply with fixed IP address
badrecord2.example.com. A 203.0.113.1
; rewrite the top of a bad domain, as well as all records immediately
; beneath the apex. (i.e. not further than one level deep)
example.net. A 203.0.113.1
*.example.net. A 203.0.113.1
Observações:
- "mypolicy" é uma zona DNS real. Você pode usar as transferências de zona para distribuí-lo pelo ambiente e controlar os dados de um único servidor.
- Os usuários não podem consultar diretamente a zona devido à regra
allow-query
. - Essas regras não bloqueiam consultas , mas qualquer resposta a uma consulta que normalmente conteria os dados incorretos será reescrita. Um efeito colateral disso é que uma solicitação de um registro inexistente retornará
NXDOMAIN
corretamente. Você só modificará a resposta se for possível para um cliente obter uma resposta contendo dados inválidos. - As regras usuais para correspondência de caractere curinga de DNS se aplicam.
Estas não são as únicas reescritas que você pode realizar. Para obter a sintaxe e os aplicativos em potencial, recomendo que você consulte o BIND ARM.
Você pode encontrar alguns guias na Internet que sugerem coisas como a criação de uma zona raiz ( .
) ou a criação de uma zona para cada domínio que você precisa bloquear. Não faça isso. É uma maneira mais antiga e desleixada de fazer coisas que os administradores de DNS recorreram por falta de opções melhores. Se o RPZ é uma opção e cobre suas necessidades, use-o. Se você não for autoritativo para o domínio, não se configure para ser autoritário.