En mi servidor DNS llamado .conf veo
rate-limit {
responses-per-second 5;
window 5;
};
¿Qué significa esto realmente? ¿Y puede causar problemas de clientes DNS? ¿Es esta una configuración demasiado ajustada?
En mi servidor DNS llamado .conf veo
rate-limit {
responses-per-second 5;
window 5;
};
¿Qué significa esto realmente? ¿Y puede causar problemas de clientes DNS? ¿Es esta una configuración demasiado ajustada?
Respuestas:
Limita el número de respuestas idénticas que un solo cliente DNS puede obtener en un segundo. La window 5
opción permite una explosión de 5 * 5 respuestas.
"Respuestas idénticas" y "cliente DNS único" son términos poco obvios aquí, lea esto para obtener más información: http://web.archive.org/web/20140209100744/http://ss.vix.su/~ vjs / rl-arm.html .
En general, es bueno limitar la velocidad: puede ayudarlo en caso de un ataque de DOS algún día. Los valores predeterminados deberían estar bien para la mayoría de los casos.
window
solo se usa para controlar el intervalo de tiempo dentro del cual se realiza el seguimiento de "respuestas idénticas" enviadas a cada "cliente DNS único". El Manual de referencia del administrador de BIND 9 establece: La cuenta [RRL del cliente] no puede volverse más positiva que el límite por segundo o más negativa que window
el límite por segundo. Este mensaje de Vernon Schryver explica el comportamiento del algoritmo con más detalle.
Debe leer el manual de referencia del administrador para BIND 9.9 .
Básicamente, responses-per-second
es el número de respuestas idénticas que se pueden enviar a un solo destino, por segundo. Las definiciones son complicadas.
Un único destino es un bloque de direcciones de red, del tamaño configurado en ipv4-prefix-length
o ipv6-prefix-length
según corresponda. Por lo tanto, si el ipv4-prefix-length
es 24, y ambos 192.0.2.1
y 192.0.2.2
se consulta el servidor DNS, ellos comparten esta cuota y sólo pueden enviar tantas consultas entre los dos de ellos.
Las respuestas idénticas son respuestas a consultas para un tipo RR particular para un nombre existente particular, o para un nombre inexistente. Las siguientes consultas son todas distintas:
IN A example.net.
IN A www.example.net.
IN AAAA example.net.
IN A nonexistent.domain.example.net.
Sin embargo, todas las siguientes consultas son idénticas (suponiendo, nonexistent.domain.example.net.
etc. que cumplan con sus nombres)
IN A nonexistent.domain.example.net.
IN A nonexistent.domain2.example.net.
IN SOA other.nonexistent.domain.example.net.
window
complica las cosas un poco más aún. Es el número de segundos durante los cuales se puede depositar la cuota. Multiplica window
y responses-per-second
da el máximo por el cual cualquier cuota puede ser positiva, o en términos más básicos, la capacidad de estallido.
Para dar un ejemplo general:
Usted es el servidor de nombres autorizado y no recurrente para example.net.
. Imagine que no se vio tráfico de DNS en los últimos 10 segundos, y la configuración en la pregunta se aplica globalmente. Los siguientes eventos ocurren secuencialmente:
IN NS example.net.
. 25 serán permitidos, y los 75 restantes serán ignorados.IN A nonexistent.example.net.
. 25 serán permitidos, y los 75 restantes serán ignorados.IN MX nonexistent-domain.example.net.
Se ignorará ya que se ha alcanzado el límite para dominios inexistentes.IN A example.net.
. Está permitido.IN NS example.net.
. 25 de ellos reciben respuestas y los 25 restantes se ignoran; la cuota para 198.51.100.0/24 no se aplica a estos hosts, pero comparten la cuota para 192.0.2.0/24.IN NS example.net.
. 5 de ellos reciben respuestas y los 20 restantes se ignoran, ya que la cuota solo se completa con 5 consultas por segundo.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 puede funcionar igual de bien. Mantiene el tráfico fuera del servicio por completo si se encuentra un ataque.
No creo que sea una buena idea calificar el límite, pregúntese: ¿clasifica también el límite de las respuestas del servidor web? ¿Por qué crees que las respuestas DNS son menos importantes que las respuestas del servidor web?
E incluso si califica el límite, esos 5 requisitos / segundo suenan muy bajos.