Iptables-Regeln verlangsamen die Anmeldung über SSH

Iptables-Regeln verlangsamen die Anmeldung über SSH

Ich versuche, einige grundlegende iptables-Regeln für meinen VDS zu erstellen:

iptables -A INPUT -p tcp --dport ssh -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 443 -j ACCEPT
iptables -P INPUT DROP

Ich möchte den gesamten eingehenden Datenverkehr mit Ausnahme von SSH und WEB blockieren. Aber nachdem ich die Regeln angewendet und das System neu gestartet habe, dauert die Anmeldung über SSH 30 Sekunden. Der Anmeldevorgang ist sehr langsam, funktioniert aber nach der Verbindung einwandfrei.

Welche Regeln sollte ich hinzufügen, um die Anmeldung über SSH schneller zu machen?

Antwort1

Aus iptables --help:

--numeric   -n      numeric output of addresses and ports

https://serverfault.com/questions/85602/iptables-l-pretty-slow-is-this-normal

Fügen Sie die -nOption ein, damit nicht versucht wird, DNS zur Namensauflösung für jede IP-Adresse, jedes Netzwerk und jeden Port zu verwenden. Dann geht es schnell.

https://help.ubuntu.com/community/IptablesHowTo

Zulassen etablierter Sitzungen

Wir können etablierten Sitzungen erlauben, Datenverkehr zu empfangen:

sudo iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT

Wenn die obige Zeile nicht funktioniert, befinden Sie sich möglicherweise auf einem kastrierten VPS, dessen Anbieter die Erweiterung nicht zur Verfügung gestellt hat. In diesem Fall kann als letzte Möglichkeit eine schlechtere Version verwendet werden:

sudo iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

rausgeschnitten, da help.ubuntu.com eine bessere und vollständigere Lösung bietetunten ignorieren

https://serverfault.com/questions/416537/warum-verlangsamt-ein-gültiger-satz-von-iptables-regeln-meinen-server-zum-crawlen

Regel zum Akzeptieren von Datenverkehr basierend auf vorhandenem Datenverkehr

iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

Antwort2

Ich habe das gleiche Problem gelöst, nachdem ich die folgenden beiden Befehle ausgeführt habe

# Allow Established and Related Incoming Connections
iptables -I INPUT 1 -m conntrack --ctstate ESTABLISH
ED,RELATED -j ACCEPT

# Allow Established Outgoing Connections
iptables -I OUTPUT 1 -m conntrack --ctstate ESTABLISHED -j ACCEPT

Diese beiden Befehle stammen vonIptables Essentials: Allgemeine Firewall-Regeln und -Befehle.

verwandte Informationen