Wie konfiguriere ich IPTables unter Linux? [Schritt-für-Schritt-Anleitung 2021]

Wie konfiguriere ich IPTables unter Linux? [Schritt-für-Schritt-Anleitung 2021]

IPTables ist der Name eines Firewall-Systems, das unter Linux über die Befehlszeile ausgeführt wird.Das Programm wird hauptsächlich verwendet alsUbuntuDas Standard-Dienstprogramm auf.Administratoren verwenden häufig IPTables-Firewalls, um das Eindringen von Datenverkehr in ihre Netzwerke zuzulassen oder zu verhindern.

Wenn Sie neu bei IPTables sind, müssen Sie es zunächst mit dem folgenden Befehl aktualisieren oder installieren:

$ sudo apt-get installiere iptables

Obwohl Benutzer, die mit der Befehlszeilenschnittstelle nicht vertraut sind, feststellen, dass IPTables eine Lernkurve hat, ist das Dienstprogramm selbst sehr einfach und leicht zu verwenden.Es gibt eine Reihe von Kernbefehlen, die als Grundlage für die Verkehrssteuerung verwendet werden können.Allerdings müssen Sie beim Ändern der IPTables-Regeln sehr vorsichtig sein.Wenn Sie den falschen Befehl eingeben, werden Sie möglicherweise vollständig von IPTables ausgeschlossen, bis Sie das Problem auf dem physischen Computer gelöst haben.

In diesem Artikel stellen wir Ihnen eine grundlegende Anleitung zu IPTables zur Verfügung und führen Sie in die Grundlagen ein.Bevor wir uns mit dem Kern von IPTables befassen, müssen Sie sicherstellen, dass Sie eineUbuntu ausführen 16.04VPAund einMit SSH-Client的 Lokale Maschine.Wenn Sie diese bereits haben, ist es Zeit zu beginnen.

IPTables-Tutorial: Kette

Eines der in IPTables zu beherrschenden Grundkonzepte ist das Konzept der Ketten.Die Kette ist im Wesentlichen eine Regel.Die Filtertabelle hat drei Ketten, die Sie bei IPTables finden;Importieren,Vorwärts 和Ausgang.

    • SPEISUNG  – Die INPUT-Kette ist die Regel, die eingehende Datenpakete steuert.Hier können Sie neue Verbindungen sperren oder zulassen.Sie können dies basierend auf Port, Protokoll und Quell-IP-Adresse tun.
  • FORWARD  – Die FORWARD-Kette filtert eingehende Pakete, die an verschiedene Terminalstandorte weitergeleitet werden.Es ist unwahrscheinlich, dass Sie diese Kette verwenden, es sei denn, Sie suchen nach Routing oder suchen gezielt nach einer Weiterleitung.
  • AUSGABE  – Die OUTPUT-Kette dient der Verwaltung ausgehender Datenpakete und Verbindungen.Beachten Sie, dass beim Pingen eines externen Hosts die Eingabekette verwendet wird, um die Daten an Sie zurückzugeben.

Standardverhalten der Kette

Möglicherweise möchten Sie am Anfang direkt mit der Konfiguration bestimmter Regeln fortfahren, müssen jedoch einen Schritt zurückgehen, um das Standardverhalten zu definieren.Um das Standardverhalten der Kette zu bestimmen, müssen Sie den folgenden Befehl ausführen:

$ sudo iptables -L Befehl

Dies wird Folgendes anzeigen:

user@ubuntu:~$ sudo iptables -L -v 
Kette INPUT (Richtlinie AKZEPTIEREN) 
Kette VORWÄRTS (Richtlinie AKZEPTIEREN) 
Kette AUSGANG (Richtlinie AKZEPTIEREN) 
user@ubuntu:~$

Diese Informationen sagen Ihnen genau den Zweck der Kettenkonfiguration.Im Beispiel wurden die Eingabe-, Weiterleitungs- und Ausgabeketten so konfiguriert, dass sie Datenverkehr akzeptieren.Diese Einstellungen sind ein guter Ausgangspunkt, da sie keine gewünschten Verbindungen verhindern.

verwandte Frage  Linux vs. Windows [Konflikt mit radikalen Betriebssystemen]

Wenn Sie jedoch feststellen, dass Ihre Richtlinie keine Verbindungen akzeptiert, können Sie jeden der folgenden Befehle eingeben, um alle Verbindungen zu akzeptieren:

$ sudo iptables —Richtlinie INPUT ACCEPT
$ sudo iptables —Richtlinie AUSGABE AKZEPTIEREN
$ sudo iptables —Richtlinie FORWARD ACCEPT

Sobald Ihre Standardeinstellungen alle Verbindungen akzeptieren, können Sie den Zugriff auf IPTables steuern, indem Sie IP-Adressen und Portnummern blockieren.Auf diese Weise können Sie festlegen, welche Verbindungen blockiert werden sollen, anstatt standardmäßig alle Verbindungen zu blockieren.

Wenn Sie es mit besonders sensiblen Informationen zu tun haben, können Sie die Standardeinstellungen so konfigurieren, dass alle Verbindungen automatisch blockiert werden.Auf diese Weise können Sie mit IPTables die einzelnen IP-Adressen auswählen, die Sie zulassen möchten.Dazu müssen Sie den folgenden Befehl eingeben:

$ sudo iptables —Richtlinie INPUT DROP
$ sudo iptables —Richtlinie OUTPUT DROP
$ sudo iptables —Richtlinie FORWARD DROP

Für die meisten Benutzer ist es am besten, alle Verbindungen zu akzeptieren, aber wenn Sie auf einem Hochsicherheitsserver arbeiten, sollten Sie sich daran erinnern.

Konfigurieren Sie eine einzelne Verbindung

Nachdem Sie das Standardverhalten der Kette konfiguriert haben, können Sie eine einzelne Verbindung konfigurieren.Hier konfigurieren Sie die sogenannte verbindungsspezifische Reaktion.Dies teilt IPTables im Wesentlichen mit, wie es zu interagieren ist, wenn eine Verbindung zu einer IP-Adresse oder einem Port hergestellt wird.Diese Antworten sind wie folgt;Akzeptiere,Gib auf,Sich weigern.

Wie Sie in der Abbildung oben sehen können, hat der Benutzer Kettenregeln definiert, um Verbindungen je nach Anforderung zuzulassen, zu trennen oder zu verweigern.Im Folgenden wird beschrieben, was jede Antwort enthält:

  • Akzeptieren – Diese Konfiguration lässt nur Verbindungen zu.
  • DROP  – Drop blockiert die Verbindung, ohne in irgendeiner Weise mit der Quelle zu interagieren.
  • ABLEHNEN  – Dadurch wird der Verbindungsversuch blockiert, aber auch eine Fehlermeldung gesendet.Dies dient normalerweise dazu, die Quelle zu benachrichtigen, dass der Verbindungsversuch von der Firewall blockiert wurde.

So erlauben oder blockieren Sie Verbindungen

Abhängig von Ihren Einstellungen gibt es viele verschiedene Möglichkeiten, Verbindungen zu blockieren oder zuzulassen.Das folgende Beispiel verwendet eine versteckte Blockierungsmethode, d. h. mitDrop Trennen Sie die Verbindung ohne Interaktion. iptables-A Ermöglicht es uns, den Regeln, die durch die Standardketteneinstellungen festgelegt wurden, zusätzliche Warnungen hinzuzufügen.Unten sehen Sie, wie Sie diesen Befehl verwenden, um die Verbindung zu blockieren:

Blockieren Sie eine einzelne IP-Adresse:

$ sudo iptables -A INPUT -S 10.10.10.10 -j DROP

Im obigen Beispiel können Sie 10.10.10.10 durch die IP-Adresse ersetzen, die Sie blockieren möchten.

verwandte Frage  35 Linux-Tastaturkürzel [das solltest du 2021 kennen]

Blockieren Sie eine Reihe von IP-Adressen:

$ sudo iptables -A INPUT -s 10.10.10.10.0/24 -j DROP    

Oder

$ sudo iptables -A INPUT -s 10.10.10.0/255.255.255/.0 -j DROP

Blockieren Sie einen einzelnen Port:

$ sudo iptables -A INPUT -p tcp --dport ssh -s 10.10.10.10 -j DROP 

Bitte beachten Sie, dass'ssh durch ein beliebiges Protokoll oder jede Portnummer ersetzt werden kann.Beachten Sie auch, dass das -p tcp-Segment des Codes verwendet wird, um anzugeben, ob das zu blockierende Protokoll UDP oder TCP ist.

Wenn das Protokoll UDP verwendet, würden Sie eingeben-p udpAnstatt von-p TCP.Sie können auch alle Verbindungen von IP-Adressen blockieren, indem Sie den folgenden Befehl eingeben:

$ sudo iptables -A INPUT -p tcp --dport ssh -jDROP

Zwei-Wege-Kommunikation: Verbindungsstatus IPTables-Tutorial

Die meisten Protokolle, denen Sie begegnen, erfordern eine Zweiwegekommunikation für die Übertragung.Das heißt, die Übertragung besteht aus Eingang und Ausgang.Was in Ihr System einfließt, ist genauso wichtig wie das, was ausgeht.Der Verbindungsstatus ermöglicht Ihnen das Mischen und Anpassen zwischen bidirektionalen Verbindungen und unidirektionalen Verbindungen.Im folgenden Beispiel blockiert das SSH-Protokoll SSH-Verbindungen von IP-Adressen, lässt jedoch Verbindungen zu IP-Adressen zu:

$ sudo iptables -A INPUT -p tcp --dport ssh -s 10.10.10.10 -m state --state NEU, ESTABLISHED -j ACCEPT 

$ sudo iptables -A AUSGABE -p tcp —sport 22 -d 10.10.10.10.-m Zustand —Zustand ESTABLISHED -J ACCEPT

Nachdem Sie den Befehl zum Ändern des Verbindungsstatus eingegeben haben, müssen Sie die Änderungen speichern.Wenn Sie dies nicht tun, geht Ihre Konfiguration verloren, wenn Sie das Dienstprogramm schließen.Je nach verwendetem Verteilungssystem können Sie viele verschiedene Befehle verwenden:

verwandte Frage  Wie führt man Windows-Anwendungen unter Linux aus? [Verwende Wein 6.1]

Ubuntu:

$ sudo /sbin/iptables-save

Red Hat/CentOS –

$ sudo /sbin/service iptables speichern

Oder

$ sudo /etc/init.d/iptables speichern

Denken Sie daran, diese Befehle zu verwenden, da dies die lästige Konfiguration bei jedem Laden des Dienstprogramms vermeidet.

Regel löschen

Ebenso wichtig wie die Möglichkeit, Regeln zu speichern, ist die Möglichkeit, diese zu löschen.Wenn Sie einen Fehler gemacht haben oder einfach nur die alten Regeln eliminieren möchten, können Sie die Option verwenden – D 命令.Dieser Befehl muss in Verbindung mit der eingegebenen Regelnummer verwendet werden.Diese Zahl teilt IPTables mit, welche Regel gelöscht werden soll.Wenn Sie beispielsweise Folgendes eingeben:

$ sudo iptables -D EINGABE 10

Anschließend wird die von Ihnen konfigurierte 10. Regel gelöscht.

Wenn Sie das Haus aufräumen und eine Reihe von Regeln löschen möchten, können Sie-F-Befehl.Sie können dies tun, indem Sie Folgendes eingeben:

$ sudo iptables-F

Dadurch wird der gesamte Regelsatz gelöscht und Ihre IPTable aktualisiert.

IPTables: Regeln der Lernkette!

Damit ist unser IPTables-Tutorial abgeschlossen.Wie Sie sehen können, ist IPTables eine Möglichkeit zum Blockieren und ZulassenLinuxRelease-VersionMultifunktionswerkzeug im Flow.Die effektive Verwendung dieses Dienstprogramms umfasst das effektive Festlegen der Standardkonfiguration und das Erstellen anderer Regeln darauf.Die Standardkonfiguration ermöglicht es Ihnen, die allgemeine Verkehrsabsicht zu skizzieren, um Verkehr zuzulassen oder zu verweigern;Mit diesen Regeln können Sie Ihre Methode basierend auf IP-Adresse, Port und Protokoll erstellen.

Wir haben nur an der Oberfläche des Potenzials von IPTables gekratzt. Sie können viele verschiedene Befehle verwenden, um zu entscheiden, wie Sie den Datenverkehr auf dem Server erleben.Wir empfehlen jedoch, dass Sie sich mit den Grundlagen vertraut machen, bevor Sie andere Befehle verwenden.Bevor Sie sich beispielsweise auf etwas Professionelleres festlegen, müssen Sie die grundlegenden Kettenregeln verstehen.

Sobald Sie sich an die Funktionsweise von IPTables gewöhnt haben, können Sie weitere Regeln integrieren, um Ihre Erfahrung anzupassen.Auf diese Weise können Sie die Arten von Verbindungen, die Sie zulassen, mit höherer Genauigkeit als je zuvor angeben.

Oh Hallo ????Schön, dich kennenzulernen.

Abonniere unseren Newsletter, sehr regelmäßig sendenTolle TechnikZu deinem Beitrag.

Geben Sie Anmerkung