Mudanças entre as edições de "DNS Autoritativo"

De Gigafull
Ir para navegação Ir para pesquisar
(Limpou toda a página)
Etiqueta: anulando
 
Linha 1: Linha 1:
<big>'''Requisitos'''</big><br>
 
SO: Ubuntu Server 22.04.2 LTS<br>
 
Memória: 4Gb<br>
 
Disco: 40Gb<br>
 
CPU: 2vCPU<br>
 
  
<big>'''Firewall Entrada'''</big><br>
 
TCP 22 - Confiáveis<br>
 
TCP/UDP 53 - Somente hosts clientes de consultas
 
 
<big>'''Pacotes Essenciais'''</big><br>
 
apt-get install net-tools -y
 
apt-get install vim -y
 
apt-get install nmap -y
 
 
<big>'''Instalação bind9'''</big><br>
 
apt-get install bind9 dnsutils -y
 
 
<big>'''Configurar consultas localmente'''</big><br>
 
echo "nameserver 127.0.0.1" > /etc/resolv.conf
 
echo "nameserver ::1" >> /etc/resolv.conf
 
 
<big>'''Testes de funcionamento'''</big><br>
 
dig @localhost google.com.br
 
dig @127.0.0.1 google.com.br
 
dig @::1 google.com.br +short
 
host google.com.br
 
 
<big>'''Localizando erros de consulta'''</big><br>
 
dig @localhost google.com.br +trace
 
 
<big>'''Configurando Recursivo (Master)'''</big><br>
 
vim /etc/bind/named.conf.options
 
 
// ACL "autorizados" essa colocamos os IPs que são autorizados a fazer consultas recursivas neste servidor.
 
// Neste caso vou incluir os IPs que foram nos delegados bem como de localhost e todos IPs privados.
 
acl autorizados {
 
        127.0.0.1;
 
        ::1;
 
        192.168.0.0/16;
 
        172.16.0.0/12;
 
        100.64.0.0/10;
 
        10.0.0.0/8;
 
        45.80.48.0/22;
 
        2804:f123::/32;
 
        df00::/8;
 
        2001:db8::/32;
 
        fe80::/64;
 
       
 
};
 
 
options {
 
    // O diretório de trabalho do servidor
 
    // Quaisquer caminho não informado será tomado como padrão este diretório
 
    directory "/var/cache/bind";
 
 
    //Suporte a DNSSEC
 
    dnssec-validation auto;
 
 
    // Conforme RFC1035
 
    // https://www.ietf.org/rfc/rfc1035.txt
 
    // Se o servidor deve responder negativamente (NXDOMAIN) para consultas de domínios que não existem.
 
    auth-nxdomain no;
 
 
    // Respondendo para IPv4 e IPv6
 
    // Porta 53 estará aberta para ambos v4 e v6 (pode ser informar apenas os IPs que ficarão ouvindo)
 
    // ex listen-on { 127.0.0.1; 45.80.48.2; };
 
    // ex listen-on-v6 { ::1; 2804:f123:bebe:cafe::2; };
 
    // ou any para todos os IPs das interfaces (recomendado, pricipalmente em anycast)
 
    listen-on { any; };
 
    listen-on-v6 { any; };
 
 
    // Serve como uma ferramenta de mitigação para o problema de ataques de amplificação de DNS
 
    // No momento, a implementação de RRL (Response Rate Limiting)é recomendada apenas para servidores autoritativos
 
    // Se seu servidor será apenas autoritativo descomente as linhas a baixo. (https://kb.isc.org/docs/aa-00994)
 
    //rate-limit {
 
    //    responses-per-second 15;
 
    //    window 5;
 
    //};
 
 
    // Informações adicionais em suas respostas DNS
 
    // Melhora o desempenho do servidor, reduzindo os volumes de dados de saída.
 
    // O padrão BIND é (no) não.
 
    minimal-responses yes;
 
 
    // Reduzir o tráfego da rede e aumentar o desempenho, o servidor armazena respostas negativas.
 
    // é usado para definir um tempo máximo de retenção para essas respostas no servidor. (segundos)
 
    // Determina por quanto tempo o servidor irá acreditar nas informações armazenadas em cache de
 
    // respostas negativas (NXDOMAIN) antes de buscar novamente informações.
 
    max-ncache-ttl 300;
 
 
    // Desativar recursão. Por padrão já é yes.
 
    // recursion no;
 
 
    // Especifica quais hosts estão autorizados a fazer consultas
 
    // recursivas através deste servidor.
 
    // Aqui que você vai informar os IPs da sua rede que você irá permitir consultar os DNS.
 
    allow-recursion { autorizados; };
 
 
    // Endereço estão autorizados a emitir consultas ao cache local,
 
    // sem acesso ao cache local as consultas recursivas são inúteis.
 
    allow-query-cache { autorizados; };
 
 
    // Especifica quais hosts estão autorizados a “fazer perguntas” ao seu DNS.
 
    // Se for apenas recursivo pode informa a ACL “autorizados”
 
    // allow-query { autorizados; };
 
    allow-query { any; };
 
 
    // Especifica quais hosts estão autorizados a receber transferências de zona a partir do servidor.
 
    // Seu servidor Secundário, no nosso ex vou deixar então o ips dos dois servidores v4 e v6.
 
    allow-transfer {
 
        45.80.48.3;
 
        2804:f123:bebe:cafe::3;
 
    };
 
    also-notify {
 
        45.80.48.3;
 
        2804:f123:bebe:cafe::3;
 
    };
 
 
    // Esta opção faz com que o servidor slave ao fazer a transferência de zonas
 
    // mastes deste servidor no formato binário (raw) do arquivo ou texto (text)
 
    // text será legível por humanos, já raw formato é mais eficiente em termos de desempenho.
 
    // masterfile-format raw;
 
    masterfile-format text;
 
 
    // Para evitar que vase a versao do Bind, definimos um nome
 
    // Reza a lenda que deixar RR DNS Server seu servidor nunca sofrerá ataques.
 
    version "RR DNS Server – Do good";
 
 
    // Define a quant. máxima de memória a ser usada para o cache do servidor (bytes ou porcentagem)
 
    // Por padrão no debian 10/bind9 ele reserva 90% da memoria física. Então não se apavore com log ex.:
 
    // Servidor com 2GB: none:106: 'max-cache-size 90%' - setting to 1795MB (out of 1994MB)
 
    // Recomendo não alterar
 
    // max-cache-size 512M;
 
    // max-cache-size 50%;
 
 
    // Isso define o tempo mínimo para o qual o servidor armazena
 
    // em cache as respostas positivas, em segundos.
 
    // Ex o tiktok.com manda tempo de ttl de 20 segundos,
 
    // e você quer ignorar esse valor 20 e setar que o minimo seja 90.
 
    // que é o máximo permitido.
 
    min-cache-ttl 90;
 
 
    // Não recomendado alterar para menos que 24h.
 
    // Define o tempo máximo durante o qual o servidor armazena (informado pelo dono do domínio)
 
    // em cache as respostas positivas, em segundos. O max-cache-ttl padrão é 604800 (uma semana)
 
    // max-cache-ttl 86400; // 24h
 
 
};
 
 
<big>'''Checando as configurações do arquivo'''</big><br>
 
named-checkconf /etc/bind/named.conf.options
 
 
<big>'''Mostra todas configurações'''</big><br>
 
named-checkconf -p
 
 
<big>'''Reiniciar o bind9'''</big><br>
 
systemctl restart bind9
 
systemctl status bind9
 
systemctl enable bind9
 
 
<big>'''Configurando Recursivo (Slave)'''</big><br>
 
vim /etc/bind/named.conf.options
 
 
acl autorizados {
 
        127.0.0.1/32;
 
        ::1/128;
 
        192.168.0.0/16;
 
        172.16.0.0/12;
 
        100.64.0.0/10;
 
        10.0.0.0/8;
 
        45.80.48.0/22;
 
        2804:f123::/32;
 
        df00::/8;
 
        2001:db8::/32;
 
        fe80::/64;
 
};
 
 
options {
 
    directory "/var/cache/bind";
 
    dnssec-validation auto;
 
    auth-nxdomain no;
 
    listen-on { any; };
 
    listen-on-v6 { any; };
 
    minimal-responses yes;
 
    max-ncache-ttl 300;
 
    allow-recursion { autorizados; };
 
    allow-query-cache { autorizados; };
 
    //allow-query { autorizados; }; //Se apenas for recursivo
 
    allow-query { any; };
 
    allow-transfer { none; };
 
    masterfile-format text;
 
    version "RR DNS Server";
 
};
 

Edição atual tal como às 16h56min de 1 de março de 2023