Die Anfängerhandbuch zu Iptables (Linux Firewall) Befehle

Die Anfängerhandbuch zu Iptables (Linux Firewall) Befehle

Wenn Sie Computer für die Zeit verwenden, müssen Sie mit dem Wort vertraut sein “Firewall”. Wir wissen, dass die Dinge von der Oberfläche komplex erscheinen, aber durch dieses Tutorial werden wir die Grundlage von erklären Iptierbar und die Verwendung grundlegender Befehle, damit Sie, selbst wenn Sie ein Networking -Student sind oder in Netzwerke eintauchen möchten, von diesem Leitfaden profitieren können.

Was ist iptables?

Die Art und Weise, wie das Firewall Arbeiten sind recht einfach. Es schafft eine Barriere zwischen vertrauenswürdigen und nicht vertrauenswürdigen Netzwerken, sodass Ihr System vor böswilligen Paketen sicher sein kann.

Aber wie wir entscheiden, was sicher ist und was nicht? Standardmäßig erhalten Sie ein gewisses Privileg, Regeln für Ihre Firewall einzurichten, aber eine detailliertere Überwachung eingehender und ausgehender Pakete, Iptables sind das, was Sie am meisten benötigen.

Iptables Kann für das persönliche Computing verwendet werden oder auch auf das gesamte Netzwerk angewendet werden. Verwendung Iptables, Wir werden eine Reihe von Regeln definieren, nach denen wir eingehende oder ausgehende Netzwerkpakete überwachen, erlauben oder blockieren können.

Anstatt sich nur auf den gesamten theoretischen Teil zu konzentrieren, werden wir nur diskutieren, was in der praktischen Welt zählt. Beginnen wir also damit, die Kernkonzepte von zu verstehen Iptables.

Das Konzept von iptables verstehen

Während des Diskussion Iptables, Wir müssen 3 Begriffe verstehen: Tische, Ketten, Und Regeln. Da dies die wichtigen Teile sind, werden wir jeden von ihnen diskutieren.

Beginnen wir also mit Tische.

Tabellen in iptables

Es gibt 5 Arten von Tische in iptables und jeder hat unterschiedliche Regeln angewendet. Beginnen wir also mit der häufigsten Tabelle “Filer”.

  1. Filtertabelle - Dies ist die Standard- und Haupttabelle während der Verwendung Iptables. Dies bedeutet, wenn Sie während der Anwendung von Regeln keine bestimmte Tabelle erwähnen, werden sie auf die Filtertabelle angewendet. Wie der Name schon sagt, besteht die Rolle der Filtertabelle darin, zu entscheiden, ob die Pakete ihr Ziel erreichen oder ihre Anfrage verweigern dürfen.
  2. NAT (Netzwerkadressenübersetzung) - Wie der Name schon sagt, ermöglicht diese Tabelle Benutzer, die Übersetzung von Netzwerkadressen zu bestimmen. Die Rolle dieser Tabelle besteht darin, festzustellen, ob die Quelle und das Ziel der Paketadresse geändert werden sollen und wie Sie ändern sollen.
  3. Mangle Table - Mit dieser Tabelle können wir die IP -Header von Paketen ändern. Zum Beispiel können Sie sich anpassen Ttl entweder Verlängerung oder Verknüpfung von Netzwerkhopfen, die das Paket aufrechterhalten kann. In ähnlicher Weise können auch andere IP -Header nach Ihren Vorlieben geändert werden.
  4. Roher Tisch - Die Hauptverwendung dieser Tabelle besteht darin, Verbindungen zu verfolgen, da sie einen Mechanismus zum Markieren von Paketen zum Anzeigen von Paketen als Teil einer laufenden Sitzung bietet.
  5. Sicherheitstabelle - Verwenden der Sicherheitstabelle können Benutzer intern anwenden Selinux Sicherheitskontextmarken in Netzwerkpaketen.

Für die meisten Anwendungsfälle sind die letzten 2 Typen (ROH Und Sicherheit) der Tabelle haben nicht viel zu tun und nur die ersten drei Optionen werden als Haupttabellen gezählt.

Lassen Sie uns nun darüber sprechen Ketten.

Ketten in iptables

Sie verhalten sich an Punkten auf der Route des Netzwerks, wo wir Regeln anwenden können. In iptables wir 5 Arten von Ketten und wir werden jeden von ihnen besprechen. Denken Sie daran, dass nicht jede Art von Kette für jede Tabellenart verfügbar ist.

  1. Vorablauf - Diese Kette wird auf jedes eingehende Paket angewendet, sobald sie in den Netzwerkstapel eingegeben wurde, und diese Kette wird noch vor einer Routing -Entscheidung verarbeitet, die zum endgültigen Ziel des Pakets getroffen wurde.
  2. Eingangskette - Es ist der Punkt, an dem ein Paket in den Netzwerkstapel eintritt.
  3. Vorwärtskette - Es ist der Punkt, an dem das Paket über Ihr System weitergeleitet wurde.
  4. Ausgangskette - Die Ausgangskette wird auf das Paket angewendet, wenn sie durch Ihr System stammt und ausgeht.
  5. Nach der Routing - Dies ist das genaue Gegenteil der Vorauslaufkette und wird auf weitergeleitete oder ausgehende Pakete angewendet, sobald die Routing-Entscheidung getroffen wurde.

Das einzige, was noch zu besprechen ist, ist Regeln, Und es ist das einfachste von den 3, die wir hier besprochen haben. Lassen Sie uns also vervollständigen, was im theoretischen Teil übrig bleibt.

Regeln in iptables

Regeln sind nichts als die SET- oder Einzelbefehle, mit denen Benutzer den Netzwerkverkehr manipulieren. Sobald jede Kette in Aktion tritt, wird das Paket gegen definierte Regeln überprüft.

Wenn eine Regel die Bedingung nicht erfüllt, wird sie zum nächsten übersprungen. Wenn sie die Bedingung erfüllt, wird die nächste Regel durch den Wert des Ziels angegeben.

Jede Regel hat zwei Komponenten: die passende Komponente und das Zielkomponente.

  1. Passende Komponente - Sie sind unterschiedliche Bedingungen, um Regeln zu definieren, die mit Protokoll, IP -Adresse, Portadresse, Schnittstellen und Headern übereinstimmen können.
  2. Zielkomponente - Dies ist eine Aktion, die ausgelöst wird, sobald die Bedingungen erfüllt sind.

Dies war der Erklärungsteil, und jetzt werden wir uns mit grundlegenden Befehlen beziehen, die mit Iptables unter Linux.

Installieren Sie Iptables Firewall unter Linux

In modernen Linux -Verteilungen wie Pop!_OS, Iptables Kommt vorinstalliert, aber wenn Ihrem System das Iptables-Paket fehlt, können Sie es einfach durch bestimmte Anweisungen installieren:

Verwenden Sie den folgenden DNF.

$ sudo dnf install iptables services 

Wichtig: Wenn Sie Firewalld verwenden, müssen Sie es deaktivieren, bevor Sie mit der Installation fortfahren. Um die Firewall vollständig zu stoppen, müssen Sie die folgenden Befehle verwenden:

$ sudo systemctl stop Firewalld $ sudo systemctl deaktivieren Firewall $ sudo systemctl mask Firewall 

Verwenden Sie den folgenden APT.

$ sudo apt installieren iptables 

Sobald Sie installiert sind Iptables, Sie können die Firewall durch bestimmte Befehle aktivieren:

$ sudo systemctl aktiviert iptables $ sudo systemCtl start iptables 

Den Zustand der Überwachung des Iptierbar Der Service können Sie den angegebenen Befehl verwenden:

$ sudo systemctl Status iptables 
Überprüfen Sie den Status des Iptables

Lernen Sie den Befehl grundlegender Iptables unter Linux

Sobald wir mit der Installation fertig sind, können wir mit der Syntax von fortfahren Iptables Auf diese Weise können Sie die Standardeinstellungen optimieren und nach Ihren Anforderungen konfigurieren.

Die grundlegende Syntax von Iptables ist wie folgt:

# iptables -t Typ der Tabelle -options Kettenpunkte Bedingung oder Matching -Komponente action 

Lassen Sie uns die Erklärung des obigen Befehls verstehen:

Tisch

Der erste Teil ist -T wo wir aus 5 verfügbaren Tabellenoptionen auswählen können und wenn Sie die entfernen -T Teil vom Befehl, es wird verwendet Filter Tabelle wie der Standardtabellentyp.

Kettenoptionen

Der zweite Teil ist für die Kette. Hier können Sie aus verschiedenen Kettenpunktoptionen wählen, und diese Optionen finden Sie unten:

  • -A - Fügt der Kette am Ende der Kette eine neue Regel hinzu.
  • -C - Überprüft, ob dies die Anforderung der Kette erfüllt.
  • -D - Ermöglicht Benutzern, eine vorhandene Regel aus der Kette zu löschen.
  • -F - Dadurch wird jede vom Benutzer definierte Regel entfernt.
  • -ICH - Ermöglicht Benutzern, eine neue Regel an der angegebenen Position hinzuzufügen.
  • -N - Schafft eine völlig neue Kette.
  • -v - Bei Verwendung mit der Listenoption bringt detaillierte Informationen mit.
  • -X - Kette löscht.

Passende Komponente

Übereinstimmende Optionen sind die Bedingung für die Überprüfung der Anforderung der Kette. Sie können aus verschiedenen Optionen auswählen, und einige von ihnen sind unten angegeben:

Protokolle -p Quell -IP -S Ziel IP -d in Schnittstelle -i Out -Schnittstelle -o 

Für TCP, Sie sind wie folgt:

-Sport -dport - -TCP -Flags 

Aktionskomponente

Wenn wir jetzt den Aktionsteil berücksichtigen, hängen die verfügbaren Optionen von der Art der Tabelle ab, wie z. B Nat, und die Mangle -Tabelle hat im Vergleich zu anderen mehr Optionen. Durch die Verwendung von Aktionen können Sie auch eine bestimmte Tabelle oder Kette ansprechen.

Die am häufigsten verwendete Aktion ist Springen (-j) Dies gibt uns mehrere Optionen wie:

  • AKZEPTIEREN - Es wird verwendet, um Pakete zu akzeptieren und das Durchqueren zu beenden.
  • TROPFEN - Es wird verwendet, um Pakete zu fallen und zu beenden.
  • ABLEHNEN - Dies ist dem Drop ziemlich ähnlich, aber es sendet abgelehnte Pakete an die Quelle.
  • ZURÜCKKEHREN - Dadurch wird das Durchqueren des Pakets in der Unterkette nicht mehr durchlaufen und das spezifische Paket ohne Wirkung an die überlegene Kette sendet.

Sobald wir mit Syntax fertig sind, zeigen wir Ihnen, wie Sie verwenden können Iptables einschließlich grundlegender Konfiguration.

Auflisten aktueller Satz von iptables Regeln

Wenn Sie überprüfen möchten, was durch Ihre geht Firewall Standardmäßig ist die Auflistung eines aktuellen Satzes von Regeln ein perfekter Weg. Verwenden Sie den angegebenen Befehl, um angewandte Regeln aufzulisten:

$ sudo iptables -l 
Auflisten von iptables Regeln

Ermöglichen/verweigern Sie den Netzwerkverkehr in bestimmten Ports

In diesem Abschnitt zeigen wir Ihnen, wie Sie den Netzwerkverkehr für bestimmte Ports zulassen oder verweigern können oder verweigern können. Wir werden Ihnen einige bekannte Ports zeigen, wie wir so hilfsbereit sein möchten, wie wir können.
Wenn Sie zulassen möchten Https Netzwerkverkehr müssen Port Nr. zulassen 443 Durch die Verwendung des angegebenen Befehls:

$ sudo iptables -a Eingabe -p tcp - -dort 443 -J Akzeptieren 

Ebenso können Sie auch deaktivieren Http Webverkehr nach dem angegebenen Befehl:

$ sudo iptables -a Eingabe -p tcp - -dort 80 -J Ablehnung 

Erläuterung gebrauchter Befehlsoptionen:

  • -P wird zum Überprüfen des angegebenen Protokolls und in unserem Fall TCP verwendet.
  • --dort wird zur Angabe des Zielports verwendet.
  • -J wird für Maßnahmen verwendet (Akzeptieren oder fallen).

Steuerverkehr mit IP -Adresse steuern

Ja, Sie können den Netzwerkverkehr auch von einer IP -Adresse steuern. Nicht nur ein oder zwei, sondern auch den Bereich der IP -Adressen und wir werden Ihnen zeigen, wie.

Verwenden Sie die angegebene Befehlsstruktur, um eine bestimmte IP -Adresse zu ermöglichen:

$ sudo iptables -a Eingabe -s 69.63.176.13 -j akzeptieren 

In ähnlicher Weise müssen Sie die angegebene Befehlsstruktur verwenden, um Pakete aus einer bestimmten IP zu löschen:

$ sudo iptables -a Eingabe -S 192.168.0.27 -J Drop 

Wenn Sie möchten, können Sie auch den Bereich der IP -Adressen steuern, indem Sie die angegebene Befehlsstruktur verwenden:

$ sudo iptables -Ein Eingabe -m -Bereich -Src -Reiche 192.168.0.1-192.168.0.255 -J Ablehnung 

Benutzerdefinierte Regel löschen

Manchmal machen wir möglicherweise Fehler, während wir Regeln erstellen, und der beste Weg, diese Fehler zu überwinden, besteht darin, sie zu löschen. Das Löschen definierter Regeln ist der einfachste Prozess in diesem Leitfaden und um sie zu löschen. Erstens müssen wir sie auflisten.

Verwenden Sie den angegebenen Befehl, um definierte Regeln mit Zahlen aufzulisten:

$ sudo iptables -l -Line -Zahlen 
Listen Sie iptables Regeln auf

Um Regeln zu löschen, müssen wir die angegebene Befehlsstruktur befolgen:

$ sudo iptables -d   

Nehmen wir an, ich möchte die 10. Regel aus löschen EINGANG Also werde ich den angegebenen Befehl verwenden:

$ sudo iptables -d input 10 

Um zu überprüfen, ob wir die Regel erfolgreich beseitigt haben, müssen wir Regeln nach dem angegebenen Befehl auflisten:

$ sudo iptables -l -line -numbers 
Bestätigen Sie Iptables -Regeln

Wie Sie sehen können, haben wir die 10. Regel erfolgreich entfernt.

Speichern definierte Iptables -Regeln

Sie fragen sich vielleicht, warum wir Regeln speichern müssen, wenn sie nach der Bewerbung gut arbeiten? Das Problem ist, wenn Ihr System neu startet, werden alle definierten Regeln, die nicht gespeichert werden.

Regeln sparen in Rhel-basierte Distributionen:

$ sudo /sbin /service iptables sparen 

Regeln sparen in Debian Derivate:

$ sudo /sbin /iptables-save 

Um mehr über Iptable Firewall -Regeln zu erfahren, lesen Sie unseren detaillierten Leitfaden unter:

  • 25 Nützliche iptierbare Firewall -Regeln, die jeder Linux -Administrator wissen sollte

In diesem Leitfaden haben wir versucht, die Dinge einfach zu machen, damit jeder davon profitieren kann. Dies war ein grundlegender Erklärungsleitfaden zu Iptables Und wenn Sie Fragen haben, können Sie in den Kommentaren gerne fragen.