Vincular limite de taxa de DNS e valores para respostas por segundo e janela

7

No meu servidor DNS, named.conf, vejo

    rate-limit {
            responses-per-second 5;
            window 5;
    };

O que isso realmente significa? E isso pode causar problemas nos clientes DNS? Esta configuração é muito pequena?

    
por Red Cricket 21.03.2013 / 21:42

4 respostas

6

Ele limita o número de respostas idênticas que um único cliente DNS pode obter em um segundo. A opção window 5 permite uma explosão de 5 * 5 respostas.

"Respostas idênticas" e "cliente DNS único" são termos pouco óbvios aqui, leia isto para mais informações: link .

Geralmente é uma boa ideia limitar o limite - pode ajudá-lo em caso de ataque do DOS algum dia. Os padrões devem ser OK para a maioria dos casos.

    
por 12.05.2013 / 08:59
10

Você deve ler o manual de referência do administrador para o BIND 9.9 .

Basicamente, responses-per-second é o número de respostas idênticas que podem ser enviadas para um único destino, por segundo. As definições são complicadas.

Um único destino é um bloco de endereços de rede, do tamanho configurado em ipv4-prefix-length ou ipv6-prefix-length , conforme aplicável. Portanto, se o ipv4-prefix-length for 24, e ambos 192.0.2.1 e 192.0.2.2 estiverem consultando o servidor DNS, eles compartilharão essa cota e só poderão enviar tantas consultas entre os dois.

Respostas idênticas são respostas a consultas para um determinado RRtype para um nome existente específico ou para um nome inexistente. As seguintes consultas são todas distintas:

IN A example.net.
IN A www.example.net.
IN AAAA example.net.
IN A nonexistent.domain.example.net.

No entanto, todas as consultas a seguir são idênticas (supondo que nonexistent.domain.example.net. etc. corresponda aos seus nomes):

IN A nonexistent.domain.example.net.
IN A nonexistent.domain2.example.net.
IN SOA other.nonexistent.domain.example.net.

window complica as coisas um pouco mais ainda. É o número de segundos para o qual a cota pode ser depositada. Multiplicar window e responses-per-second fornece o máximo pelo qual qualquer cota pode ser positiva ou, em termos mais básicos, a capacidade de ruptura.

Para dar um exemplo geral:

Você é o servidor de nomes autoritativo e não-recorrente para example.net. . Imagine que nenhum tráfego de DNS tenha sido visto nos últimos 10 segundos, e a configuração na questão se aplica globalmente. Os seguintes eventos acontecem sequencialmente:

  1. O host 198.51.100.1 envia 100 consultas para IN NS example.net. . 25 serão permitidos, e os 75 restantes serão ignorados.
  2. O host 198.51.100.1 envia 100 consultas para IN A nonexistent.example.net. . 25 serão permitidos, e os 75 restantes serão ignorados.
  3. O host 198.51.100.1 envia uma consulta para IN MX nonexistent-domain.example.net. Ela será ignorada, pois o limite para domínios inexistentes foi atingido.
  4. O host 198.51.100.1 envia 1 consulta para IN A example.net. . É permitido.
  5. Os hosts 192.0.2.1 a 192.0.2.50 enviam, cada um, uma única consulta para IN NS example.net. . 25 deles recebem respostas e os 25 restantes são ignorados; a cota de 198.51.100.0/24 não se aplica a esses hosts, mas eles compartilham a cota de 192.0.2.0/24.
  6. Um segundo passa
  7. Os hosts 192.0.2.26 a 192.0.2.50 repetem a consulta IN NS example.net. . 5 deles obtêm respostas e os 20 restantes são ignorados, pois a cota só é reabastecida em 5 consultas por segundo.
por 30.03.2014 / 06:09
3
iptables -A INPUT -p udp --dport 53 -m recent --set --name dnslimit
iptables -A INPUT -p udp --dport 53 -m recent --update --seconds 60 --hitcount 11 --name dnslimit -j DROP 

IPtables podem funcionar tão bem. Mantém o tráfego fora do serviço completamente se um ataque for encontrado.

    
por 22.03.2013 / 07:20
0

Eu não acho que seja uma boa ideia avaliar o limite, pergunte-se: você classifica as respostas do servidor web como limitadas? Por que você acha que as respostas do DNS são menos importantes do que as respostas do servidor web?
E mesmo que você limite o limite, esse 5 req / seg soa muito baixo.

    
por 12.05.2013 / 15:19