Iptables Allgemein: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
Zeile 8: Zeile 8:
 
*Iptables ist eine Stateful Firewall im Gegensatz zu Ihrem Vorgänger ipchains  
 
*Iptables ist eine Stateful Firewall im Gegensatz zu Ihrem Vorgänger ipchains  
 
*Iptables beinhaltet das englische Wort tables, was für Tabellen steht.
 
*Iptables beinhaltet das englische Wort tables, was für Tabellen steht.
*Genauso kann man es sich auch vorstellen, denn in seinen  3 Tabellen sammeln sich die Ketten in denen Regeln.
+
*Genauso kann man es sich auch vorstellen, denn in seinen  3 Tabellen sammeln sich die Ketten und dort die Regeln.
*Dort werden sie kontrolliert, manipuliert oder extrahiert von Paketen angegeben werden.
+
*Dort werden sie kontrolliert, manipuliert oder extrahiert.
  
 
=Tabellen=
 
=Tabellen=

Version vom 31. August 2022, 13:13 Uhr


Die Verwendung von Firewalls mit iptables

  • Der Linux-Kernel enthält fortgeschrittene Tools für Packet-Filtering
  • Der Prozess für die Kontrolle von Netzwerkpaketen bei ihrem Versuch einzudringen
  • Durch, in oder aus dem System.
  • Iptables ist eine Stateful Firewall im Gegensatz zu Ihrem Vorgänger ipchains
  • Iptables beinhaltet das englische Wort tables, was für Tabellen steht.
  • Genauso kann man es sich auch vorstellen, denn in seinen 3 Tabellen sammeln sich die Ketten und dort die Regeln.
  • Dort werden sie kontrolliert, manipuliert oder extrahiert.

Tabellen

  • Wie Pakete verarbeitet werden wird schon in den Tabellen vorgegeben.
  • iptables besitzt standardmäßig drei Tabellen: mangle, nat und filter.
  • mangle ermöglicht es dem Kernel, Daten im Paket-Header zu verändern.
  • nat wird benutzt um interne und externe IP-Adressen zu übersetzen. Es werden IP und/oder den Port des Ziels oder Quelle geändert.
  • filter prüft alle für die Firewall ankommenden Pakete und entscheidet ob sie durchgelassen oder geblockt werden.

Jede dieser Tabellen besitzt nun mehrere Ketten

  • mangle (Paketmanipulationen): enthält alle Ketten
  • nat (Network Adress Translation): enthält die Ketten PREROUTING, OUTPUT und POSTROUTING
  • filter (Paketfilter): enthält die Ketten FORWARD, INPUT und OUTPUT

Ketten

Die Ketten sind eine Sammlung von Regeln. D.h. das jede Kette mehrere Regeln besitzen kann um ein Paket durchzulassen oder zu blockieren. Es sind fünf Typen von Standardketten vorhanden. Manche dieser Ketten werden von allen Paketen und einige nur, je nachdem welches Ziel sie haben, durchlaufen. Man könnte auch sagen die Ketten unterscheiden wo welche Regeln angewendet werden. Die Regeln einer Kette werden nacheinander abgearbeitet und wenn eine zutrifft, ist die Bearbeitung in dieser Kette beendet (es gibt Ausnahmen):

  • PREROUTING: alle Pakete kommen hier durch bevor eine Routing-Entscheidung getroffen wird
  • FORWARD: für alle Pakete, die von der einen zu einer anderen Netzwerkschnittstelle weitergeleitet werden - also keine Pakete die an einen lokalen Dienst gerichtet sind
  • INPUT: für Pakete die über eine Schnittstelle hereinkommen und einen Dienst auf dem Rechner ansprechen
  • OUTPUT: für die über eine Schnittstelle herausgehenden Pakete, die von einem lokalen Dienst kommen
  • POSTROUTING: alle Pakete kommen am Ende der Verarbeitung hier durch

Regeln

Mit einer Regel wird entschieden was mit einem Paket passieren soll. Jede besitzt bestimmte Parameter nach denen sie überprüft ob die Informationen eines Paketes auf sie zutreffen. Wenn die Parameter zutreffend sind, wird das Paket meist an ein neues Ziel verwiesen oder es wird eine Methode angewandt. Für die Bearbeitung der Pakete gibt es mehrere Ziele und Methoden. Häufig benutzte sind:

  • ACCEPT: das Paket kann passieren
  • REJECT: das Paket wird zurückgewiesen und ein Fehlerpaket wird gesendet
  • LOG: schreibt einen Eintrag in die syslog
  • DROP: das Paket wird ignoriert und keine Antwort gesendet
  • REDIRECT: die Ziel-Adresse des Paketes wird hiermit so verändert, dass es zum lokalen Rechner gesendet wird
  • MASQUERADE: die Quell-Adresse des Paketes wird durch die IP-Adresse der Schnittstelle ersetzt, auf dem es den Rechner verlässt
  • SNAT
  • DNAT

Funktion

  • Somit funktioniert iptables wie eine Art Sammlung von Schablonen die nacheinander auf ein Paket abgebildet werden und bei einem Treffer eine bestimmte Aktion auf das Paket ausführen.
  • Falls keine der Schablonen passen sollte wird eine Standard Aktion ausgeführt die für alle Pakete gilt die nicht auf eine Schablone passen.

Konzept-Bild

Iptables-konzept.jpeg