In der named.conf meines DNS-Servers sehe ich
rate-limit {
responses-per-second 5;
window 5;
};
Was bedeutet das eigentlich? Und kann es Probleme mit DNS-Clients verursachen? Ist das eine zu enge Konfiguration?
In der named.conf meines DNS-Servers sehe ich
rate-limit {
responses-per-second 5;
window 5;
};
Was bedeutet das eigentlich? Und kann es Probleme mit DNS-Clients verursachen? Ist das eine zu enge Konfiguration?
Antworten:
Es begrenzt die Anzahl identischer Antworten, die ein einzelner DNS-Client in einer Sekunde erhalten kann. Die window 5
Option ermöglicht einen Burst von 5 * 5 Antworten.
"Identische Antworten" und "einzelner DNS-Client" sind hier nicht offensichtliche Begriffe. Weitere Informationen finden Sie hier: http://web.archive.org/web/20140209100744/http://ss.vix.su/~ vjs / rl-arm.html .
Im Allgemeinen ist es eine gute Sache, die Rate zu begrenzen - kann Ihnen im Falle eines DOS-Angriffs eines Tages helfen. Die Standardeinstellungen sollten in den meisten Fällen in Ordnung sein.
window
wird nur zur Steuerung der Zeitspanne verwendet, in der "identische Antworten", die an jeden "einzelnen DNS-Client" gesendet werden, verfolgt werden. Im BIND 9 Administrator-Referenzhandbuch heißt es: Das Konto [des Kunden RRL] kann nicht positiver als das Limit pro Sekunde oder negativer als das window
Mal pro Sekunde werden. Diese Nachricht von Vernon Schryver erklärt das Verhalten des Algorithmus genauer.
Sie sollten das Administratorreferenzhandbuch für BIND 9.9 lesen .
Grundsätzlich responses-per-second
ist die Anzahl identischer Antworten, die pro Sekunde an ein einzelnes Ziel gesendet werden können. Die Definitionen sind schwierig.
Ein einzelnes Ziel ist ein Block von Netzwerkadressen mit der Größe, die in ipv4-prefix-length
oder ipv6-prefix-length
nach Bedarf konfiguriert wurde . Also, wenn der ipv4-prefix-length
24 ist, und beide 192.0.2.1
und 192.0.2.2
sind Abfragen des DNS - Server, werden sie diese Quote teilen und können nur so viele Abfragen zwischen den beiden von ihnen senden.
Identische Antworten sind Antworten auf Anfragen nach einem bestimmten RR-Typ für einen bestimmten vorhandenen Namen oder für einen nicht vorhandenen Namen. Die folgenden Abfragen sind alle unterschiedlich:
IN A example.net.
IN A www.example.net.
IN AAAA example.net.
IN A nonexistent.domain.example.net.
Alle folgenden Abfragen sind jedoch identisch (vorausgesetzt nonexistent.domain.example.net.
usw. werden ihren Namen gerecht):
IN A nonexistent.domain.example.net.
IN A nonexistent.domain2.example.net.
IN SOA other.nonexistent.domain.example.net.
window
macht die Sache noch etwas komplizierter. Dies ist die Anzahl der Sekunden, für die das Kontingent überwiesen werden kann. Multiplizieren window
und responses-per-second
geben das Maximum an, um das ein Kontingent positiv sein kann, oder grundlegender die Burst-Kapazität.
Um ein umfassendes Beispiel zu geben:
Sie sind der nicht wiederkehrende, maßgebliche Nameserver für example.net.
. Stellen Sie sich vor, in den letzten 10 Sekunden wurde überhaupt kein DNS-Verkehr gesehen, und die Konfiguration in der Frage gilt global. Die folgenden Ereignisse treten nacheinander auf:
IN NS example.net.
. 25 werden zugelassen und die restlichen 75 werden ignoriert.IN A nonexistent.example.net.
. 25 werden zugelassen und die restlichen 75 werden ignoriert.IN MX nonexistent-domain.example.net.
Es wird ignoriert, da das Limit für nicht vorhandene Domänen erreicht wurde.IN A example.net.
. Es ist erlaubt.IN NS example.net.
. 25 von ihnen erhalten Antworten und die restlichen 25 werden ignoriert. Das Kontingent für 198.51.100.0/24 gilt nicht für diese Hosts, sie teilen sich jedoch das Kontingent für 192.0.2.0/24.IN NS example.net.
. 5 von ihnen erhalten Antworten und die restlichen 20 werden ignoriert, da das Kontingent nur durch 5 Abfragen pro Sekunde aufgefüllt wird.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 können genauso gut funktionieren. Hält den Datenverkehr vollständig vom Dienst fern, wenn ein Angriff gefunden wird.
Ich denke nicht, dass es eine gute Idee ist, das Limit zu bewerten. Fragen Sie sich: Beschränken Sie auch die Antworten des Webservers? Warum sind DNS-Antworten Ihrer Meinung nach weniger wichtig als Webserver-Antworten?
Und selbst wenn Sie das Ratenlimit festlegen, klingen diese 5 Anforderungen / Sek. Sehr niedrig.