Ich möchte, dass iptables nur eine Schnittstelle filtert, eth0, die dem WAN zugewandt ist. Wie geht das? Und ich möchte FTP- und SSH-Ports auf eth0 offen halten.
Bitte lesen Sie die Manpages zu iptables - oder falls ich Ihr Problem missverstanden habe, stellen Sie die Frage genauer.
Jari Jokinen
Antworten:
24
Sie möchten also für alle Schnittstellen außer einer den gesamten Datenverkehr akzeptieren und auf eth0 den gesamten eingehenden Datenverkehr mit Ausnahme von ftp und ssh löschen.
Erstens könnten wir eine Richtlinie festlegen, nach der der gesamte Datenverkehr standardmäßig akzeptiert wird.
WARNUNG!!! Führen Sie "iptables -P ..." vor "iptables -F" aus. Wenn Ihre aktuellen Regeln standardmäßig so eingestellt sind, dass der Datenverkehr unterbrochen wird, werden Sie durch Ausführen von -F gesperrt. Aus diesem Grund wird empfohlen, die Standardrichtlinie beizubehalten, um zuzulassen, und speziell eine Regel hinzuzufügen, um den gesamten anderen Datenverkehr zu löschen.
Coops
8
So etwas sollte den Job machen:
iptables -A INPUT -i eth1 -p all -j DROP
iptables -A INPUT -i eth0 -p all -j ACCEPT
Ziemlich genau (obwohl es vielleicht ein bisschen besser ist als "Drop EVERYTHING" auf der WAN-Oberfläche, was?) - Schreiben Sie Regeln, um die zu filternde Oberfläche und einfach ACCEPTalles auf den anderen Oberflächen zu filtern .
voretaq7
4
Die Möglichkeit , eine Schnittstelle in Ihrer iptables - Regel angeben ist -i, zum Beispiel: -i eth0.
Wenn Sie eine iptablesRegel erstellen, ist es sehr einfach , die Schnittstelle anzugeben. Die Option zum Angeben der LAN-Karte, auf der gearbeitet werden iptablessoll, lautet-i
Die folgenden Regeln können Ihnen ein gutes Beispiel geben
Die letzte Regel besteht darin, jedes andere Paket abzulehnen, das nicht mit den ersten beiden Regeln übereinstimmt. Alle Regeln in iptableswerden in der angegebenen Reihenfolge ausgeführt, sodass die Regel zum Zurückweisen von Paketen immer die letzte ist.
Antworten:
Sie möchten also für alle Schnittstellen außer einer den gesamten Datenverkehr akzeptieren und auf eth0 den gesamten eingehenden Datenverkehr mit Ausnahme von ftp und ssh löschen.
Erstens könnten wir eine Richtlinie festlegen, nach der der gesamte Datenverkehr standardmäßig akzeptiert wird.
Dann könnten wir Ihre Firewall-Regeln zurücksetzen.
Jetzt können wir sagen, dass wir eingehenden Datenverkehr auf eth0 zulassen möchten, der Teil einer Verbindung ist, die wir bereits zugelassen haben.
Außerdem möchten wir eingehende ssh-Verbindungen auf eth0 zulassen.
Aber alles andere, was auf eth0 ankommt, sollte fallengelassen werden.
Für etwas mehr Tiefe siehe diesen CentOS-Wiki-Eintrag .
FTP ist ein heikler als ssh , da es einen zufälligen Port verwenden kann, so sieht diese vorherige Frage .
quelle
So etwas sollte den Job machen:
quelle
ACCEPT
alles auf den anderen Oberflächen zu filtern .Die Möglichkeit , eine Schnittstelle in Ihrer iptables - Regel angeben ist
-i
, zum Beispiel:-i eth0
.quelle
Wenn Sie eine
iptables
Regel erstellen, ist es sehr einfach , die Schnittstelle anzugeben. Die Option zum Angeben der LAN-Karte, auf der gearbeitet werdeniptables
soll, lautet-i
Die folgenden Regeln können Ihnen ein gutes Beispiel geben
Die letzte Regel besteht darin, jedes andere Paket abzulehnen, das nicht mit den ersten beiden Regeln übereinstimmt. Alle Regeln in
iptables
werden in der angegebenen Reihenfolge ausgeführt, sodass die Regel zum Zurückweisen von Paketen immer die letzte ist.quelle