Von Was sind die Iptables-Regeln, um NTP zuzulassen? :
iptables -A INPUT -p udp --dport 123 -j ACCEPT
iptables -A OUTPUT -p udp --sport 123 -j ACCEPT
Auch von der NTP-Website :
... ntpd erfordert vollständigen bidirektionalen Zugriff auf den privilegierten UDP-Port 123. ...
Meine Frage ist, warum? Für jemanden, der nicht mit NTP vertraut ist, scheint dies eine potenzielle Sicherheitslücke zu sein, insbesondere wenn ich einen Client von mir auffordere, diesen Port in seiner Firewall zu öffnen, damit meine Server ihre Zeit synchronisieren können. Hat jemand eine anständige Rechtfertigung, die ich meinem Kunden geben kann, um ihn davon zu überzeugen, dass ich diesen Zugriff in der Firewall benötige? Hilfe wird geschätzt! :)
Antworten:
Sie müssen die NTP-Ports für eingehenden Datenverkehr nur zulassen, wenn Sie als Server fungieren, damit Clients mit Ihnen synchronisieren können.
Andernfalls bestimmt das Vorhandensein eines NTP-Status automatisch, ob das eingehende NTP-Paket von einem vorhandenen, von uns initiierten Firewall-Status blockiert oder zugelassen wird.
iptables -A OUTPUT -p udp --sport 123 --dport 123 -j ACCEPT
iptables -A INPUT -m state --state ESTABLISHED, RELATED -j ACCEPT
Bitte lassen Sie mich wissen, ob die Iptables-Regeln korrekt sind. Ich habe keine Erfahrung mit Iptables. Mein NTP-Client bleibt auf meinem pfSense-Router mit nur einer ausgehenden Zulassungsregel synchronisiert, da pfSense eine Stateful-Firewall ist.
quelle
NTP erfordert einen bidirektionalen Zugriff auf Port 123, da der NTP-RFC Folgendes in Bezug auf den Quellport des Clients angibt:
Da der Quellport des Clients 123 ist, sendet der Server die Antwort beim Zurücksenden an Port 123. Um diese Antwort empfangen zu können, muss der Client natürlich eingehende Antworten auf Port 123 zulassen. Normalerweise werden Antworten zurückgesendet auf einigen kurzlebigen Port Range.
Wie Ben Cook bereits erwähnt hat, ist dies nur erforderlich, wenn es sich um eine zustandslose Firewall handelt, da bei einer statusbehafteten Firewall die Antwort ohne explizite Regel zurückgegeben werden kann.
quelle
Ich denke, dass die beste Lösung ist, Port 123 für die Eingabe zu aktivieren, nur für die IP-Adressen, von denen erwartet wird, dass sie Ihrem Server das NTP-Signal geben.
In der NTP-Konfigurationsdatei /etc/ntp.conf befinden sich die Adressen mehrerer NTP-Server, auf die Ihr Server verweisen sollte. Sie können den Befehl lookup verwenden, um die entsprechende IP-Adresse für jede Adresse zu ermitteln.
host -t a 0.debian.pool.ntp.org
Anschließend können Sie die Regel zur Server-Firewall hinzufügen:
iptables -I INPUT -p udp -s 94.177.187.22 -j ACCEPT
... und so weiter.
Dies kann verhindern, dass böswillige Personen Ihren Server beschädigen.
Ich denke, es nützt nichts, die Ausgabe einzuschränken.
quelle
Die Kommunikation zwischen ntp-Servern erfolgt über den Quell- und Zielport 123. Es ist am bequemsten, dies zumindest den Hosts zu erlauben, auf denen Sie einen ntp-Dienst ausführen.
Möglicherweise möchten Sie nur einen externen Host dem Internet aussetzen, um Zeit von externen Quellen zu erhalten. Ein interner NTP-Dienst, der mit diesem synchronisiert wird, kann die Quelle für alle Geräte sein. Wenn diese Hosts dem Zweck dienen, ist die mögliche Gefährdung begrenzt: Sie akzeptieren nur NTP-Verkehr und speichern keine anderen Daten.
Verwenden Sie alternativ überhaupt kein externes IP-Netzwerk. Verwenden Sie beispielsweise eine Funkquelle wie GPS für die Zeit.
http://www.diablotin.com/librairie/networking/firewall/ch08_13.htm http://support.ntp.org/bin/view/Support/TroubleshotinNTP
quelle