Servidor DNS Recursivo com IPV6 e DNSsec
Nesse artigo vamos aprender como verificar de forma rápida se o seu servidor de DNS recursivo esta respondendo corretamente a consultas IPv6 dentro da sua rede, se o DNSsec esta funcional e se esta aberto a consultas recursivas. Não vou aprofundar de como instalar e configurar o Unbound. Suponhamos que todos tenham o servidor DNS instalado e que a rede do provedor tenha IPv6 devidamente configurado entre seus servidores e clientes.
Como exemplo estou usando o Dedian 9 (stretch) e Unbound 1.6.0
01 – Configurando a interface de rede. Certifique se seu servidor esta com a interface de rede configurada corretamente com IPv6. Para um melhor entendimento de como habilitar IPv6 em Linux segue o link http://ipv6.br/post/habilitando-ipv6-no-linux/
02 – Habilitando IPv6 no unbound.conf. Configure o arquivo unbound.conf com interface para IPv6, redes permitidas a consultarem o seu servidor DNS via IPv6 e por ultimo a opção do-ipv6 (yes). Após salvar as devidas configurações execute o comando service unbound restart para validar. Lembrem a consulta deve responder apenas aos seus clientes e não responder a consultas de IPs fora da sua rede.
03 – Teste de conectividade IPv6. Vamos testar para validar via IPv6 o nosso acesso. Nesse exemplo usei o endereço do ipv6.br nada mais justo para essa finalidade. Você pode também testar de outra forma se estiver usando uma conexão por exemplo, Dual Stack (pilha dupla) para facilitar acesse esse https://ipv6-test.com/
Comando 1 - ping6 ipv6.br
Comando 2 - dig -6 AAA ipv6.br
Teste através do https://ipv6-test.com/
04 – Ativar DNSsec. Na maioria das instalações do Unbound a chave do DNSsec já vem instalada. Vou mostrar uma maneira simples de como verificar e baixar o root.key. Uma vez instalado e configurado o DNSsec estará funcionando para IPv4/IPv6.
Verificando se existe o arquivo root.key. No meu caso esta localizado em /var/lib/unbound/ acesse seu arquivo unbound.conf para verificar qual o caminho esta apontando a localização do root.key
# ls /var/link/unbound/
Baixando o root.key
# unbound-anchor -a /var/lib/undound/root.key
Dando permissão
# chown unbound.unbound /var/lib/unbound/root.key
Reveja o arquivo unbound.conf para identificar o caminho do auto-trust-anchor
auto-trust-anchor-file “/var/lib/unbound/root.key”
Execute um reload nas configurações do unbound
# service unbound reload
Para testar execute o comando dig com. SOA +dnssec você deverá obter um retorno com a flag AD. Para melhor entendimento acesse o link
https://www.nlnetlabs.nl/documentation/unbound/howto-anchor/
Testando o DNSsec através dos links http://dnssec.vs.uni-due.de/ e http://www.982.cz/en/t/run/
05 – Por ultimo realize um teste de consulta recursiva aberta para IPv6 nesse endereço https://warp.lacnic.net/dns-open-resolvers-con-ipv6#identificar . Se estiver tudo correto terá uma mensagem como na foto abaixo.
Esses testes são de grande importância antes de colocar em produção o seu servidor DNS. Torne seu acesso mais seguro.
Duh Batista