www.wikidata.de-de.nina.az
iptables ist ein Userspace Programm zur Konfiguration der Tabellen tables die durch die Firewall im Linux Kernel bestehend aus einer Reihe von Netfilter Modulen bereitgestellt werden Diese Tabellen enthalten Ketten chains und Regeln rules Verschiedene Programme werden gegenwartig fur unterschiedliche Protokolle verwendet iptables beschrankt sich auf IPv4 fur IPv6 gibt es ip6tables fur ARP ist es arptables und mit ebtables gibt es eine Sonderkomponente fur Ethernet Frames iptablesBasisdatenEntwickler Netfilter Projekt TeamErscheinungsjahr 1998Aktuelle Version 1 8 10 1 10 Oktober 2023 Betriebssystem LinuxProgrammiersprache C 2 Kategorie FirewallLizenz GPL Freie Software deutschsprachig neinnetfilter orgDa iptables erweiterte Systemprivilegien benotigt muss es als root ausgefuhrt werden Auf den meisten Linux Systemen ist iptables als usr sbin iptables installiert Dokumentation ist in den Manpages mittels man span class w span iptables einsehbar sofern installiert Der Begriff iptables wird auch oft verwendet um ausschliesslich die Kernel Komponenten zu beschreiben x tables ist der Name des Kernelmoduls der den gemeinsamen Code aller vier Module v4 v6 arp und eb tragt und das API fur iptables Erweiterungen bereitstellt Folglich ist mit Xtables oft die gesamte Firewall Infrastruktur gemeint Inhaltsverzeichnis 1 Geschichte 2 Zusammenfassung der Funktion 3 Frontends 4 Siehe auch 5 Literatur 6 Weblinks 7 EinzelnachweiseGeschichte BearbeitenNetfilter und iptables wurden ursprunglich zusammen entwickelt sodass es Uberschneidungen in der fruheren Entwicklung gab Siehe dazu den Netfilter Artikel Linux besitzt ab Version 1 0 einen Paketfilter Dieser stammte zunachst von BSD ab und wurde in der Linux Version 2 0 unter dem Namen ipfwadm erweitert Rusty Russell uberarbeitete den Paketfilter nochmals und stellte ihn als ipchains zur Verfugung Er wurde in Linux 2 2 integriert Gegen 1999 wurde der Kernel und damit auch ipchains komplett uberarbeitet Aus ipchains ging iptables hervor das seit Kernel 2 4 zum Lieferumfang gehort iptables behalt die ursprungliche Grundidee von ipfwadm Listen von Regeln wovon jede angibt was in einem Paket uberpruft wird und was dann mit diesem Paket geschehen soll ipchains brachte das Konzept von Ketten chains ein und iptables erweiterte dies hin zu Tabellen tables Eine Tabelle ist fur NAT zustandig eine weitere zur Filterung Zusatzlich wurden die drei Punkte wo Pakete auf ihrer Reise gefiltert werden so geandert dass jedes Paket nur durch einen Filterpunkt gelangt Diese Aufteilung ermoglichte iptables wiederum Informationen zu verwenden die das Connection Tracking Subsystem erarbeitet hatte diese Information war zuvor an NAT gebunden Somit hat iptables mehr Moglichkeiten als ipchains da es zusatzlich den Zustand einer Verbindung uberwachen diese umleiten oder Datenpakete basierend auf dem Zustand stoppen und manipulieren kann statt dies nur mittels Quell oder Zieladresse zu tun Eine Firewall wie iptables die diese Voraussetzungen erfullt wird als stateful bezeichnet wahrend ipchains ausser in sehr begrenzten Ausnahmefallen doch nur stateless war Die aktuelle Version 1 8 5 ist am 3 Juni 2020 veroffentlicht worden 3 Der Nachfolger von iptables ist nftables das seit der Linux Kernelversion 3 13 verfugbar ist 4 5 6 Siehe auch Geschichte im Artikel NetfilterZusammenfassung der Funktion BearbeitenIptables ermoglicht dem Systemadministrator Tabellen zu laden die Ketten von Regeln fur die Behandlung von Paketen enthalten Jede Tabelle dient einem eigenen Zweck Pakete werden durch sequenzielles Abarbeiten von Regeln innerhalb einer Kette weitergereicht Eine Regel kann einen Sprung jump oder einen Aufruf goto in eine andere Kette erwirken und dies kann mehrfach verschachtelt werden Eine Ruckkehr return kehrt zur nachsten Regel nach dem Sprung zuruck Jedes Netzwerkpaket das den Computer erreicht oder diesen verlasst durchlauft mindestens eine Kette nbsp Graph zum Paketfluss Pakete beginnen in einem bestimmten Kasten und werden entsprechend den Umstanden z B Routing einen gewissen Pfad nehmen Der Ursprung des Pakets bestimmt in welcher Kette die Abarbeitung beginnt Es gibt funf vordefinierte Ketten die den funf Netfilter Hooks entsprechen auch wenn eine Tabelle nicht unbedingt alle Ketten haben muss Vordefinierte Ketten haben eine Policy z B DROP die greift wenn ein Paket das Ende der Kette erreicht hat also ohne auf eine Regel gepasst zu haben Es konnen weitere benutzerdefinierte Ketten angelegt werden jedoch haben diese keine Policy trifft ein Paket auf deren Ende geht die Abarbeitung in der Kette weiter die ursprunglich den Sprung ausgelost hat Leere Ketten sind zulassig PREROUTING Pakete landen in dieser Kette bevor eine Routing Entscheidung getroffen wird INPUT Paket wird lokal zugestellt N B Dies hat wenig mit Prozessen zu tun Lokale Zustellung wird durch die local Routingtabelle kontrolliert ip span class w span route span class w span show span class w span table span class w span span class nb local span FORWARD Alle Pakete die geroutet und nicht lokal zugestellt wurden passieren diese Kette OUTPUT Pakete die vom eigenen Computer erzeugt wurden tauchen hier auf POSTROUTING Routing Entscheidung wurde getroffen Pakete laufen hier nochmals durch kurz bevor sie an die Hardware abgegeben werden Jede Regel in einer Kette enthalt Spezifikationen matches auf welche Pakete sie zutrifft Regeln konnen ausserdem ein Ziel target fur Erweiterungen bzw Urteil verdict enthalten Mit dem Durchlaufen eines Paketes durch eine Kette werden Regeln nacheinander gepruft Falls eine Regel auf das Paket nicht zutrifft wird zur nachsten Regel ubergegangen Trifft sie hingegen zu wird die mit Ziel Urteil gelistete Aktion durchgefuhrt welche darin resultieren kann dass das Paket weiter durch die Kette lauft oder nicht Spezifikationen stellen den grossten Teil von Regelwerken dar da sie die Bedingungen enthalten auf die ein Paket getestet wird Diese Tests konnen fur jeden Layer im OSI Model durchgefuhrt werden zu nennen sind die mac source und p span class w span tcp span class w span dport Parameter Jedoch gibt es auch protokollunabhangige Optionen z B m time Ein Paket avanciert in einer Kette bis entweder eine Regel auf das Paket zutrifft und ein endgultiges Urteil fur das Paket gefallt wird z B mittels ACCEPT oder DROP oder bis eine Regel als Urteil RETURN enthalt wodurch es in der ubergeordneten Kette wieder weitergeht oder bis das Ende der Kette erreicht wird Frontends BearbeitenZur Erleichterung beim Aufsetzen von Regeln wird Software von vielen Herstellern angeboten Frontends in textbasierter oder grafischer Manier erlauben es Benutzern einfache Regelwerke mit wenigen Mausklicks anzulegen Skripte sind oftmals Shell Skripte aber auch andere Sprachen sind moglich die iptables oder das schnellere iptables restore mit einer Reihe von vordefinierten Regeln aufrufen Dabei konnen auch Vorlagen zum Einsatz kommen die mittels Konfigurationsdateien angelegt werden Linux Distributionen verwenden oft Vorlagen bieten dem Anwender aber auch die Moglichkeit eigene Regeln zu definieren Beispiele Firewall Builder ISPConfig Plesk UFW Uncomplicated Firewall WebminSolche Frontends Generatoren und Skripte sind oft durch ihre Vorlagen und Bauweise beschrankt Hinzu kommt dass die so generierten Regelwerke meist nicht fur den jeweiligen Einsatz der Firewall optimiert sind da eine automatische Optimierung im Frontend einen hohen Entwicklungsaufwand darstellen wurde Benutzern die ein gutes Verstandnis von iptables haben und ein optimiertes Regelwerk wunschen wird daher angeraten die Regeln selbst zu konstruieren Siehe auch BearbeitenIPFilter Paketfilter OSI Modell Liste der standardisierten Ports Fail2banLiteratur BearbeitenGregor N Purdy Linux iptables kurz amp gut O Reilly 2004 ISBN 3 89721 506 3 Gregor N Purdy Linux iptables Pocket Reference O Reilly Media 2004 englisch ISBN 0 596 00569 5 Ralf Spenneberg Linux Firewalls mit iptables amp Co mit CD ROM Addison Wesley Munchen 2006 ISBN 3 8273 2136 0 Weblinks Bearbeiten nbsp Wikibooks Linux Praxisbuch Linux Firewall mit IP Tables Lern und Lehrmaterialien Homepage des Netfilter Teams englisch frozentux net englisch Dokumentation unter SelflinuxEinzelnachweise Bearbeiten Phil Sutter iptables 1 8 10 release 10 Oktober 2023 englisch abgerufen am 10 Oktober 2023 The iptables Open Source Project on Open Hub Languages Page In Open Hub abgerufen am 3 September 2018 iptables iptables tree Abgerufen am 14 Juni 2020 englisch Die Neuerungen von Linux 3 13 c t Magazin am 20 Januar 2014 Die Neuerungen von Linux 4 10 c t Magazin am 17 Januar 2017 Linux 3 13 1 2 nftables the successor of iptables englisch Linux Kernel Newbies am 19 Januar 2014Normdaten Sachbegriff GND 4796978 7 lobid OGND AKS Abgerufen von https de wikipedia org w index php title Iptables amp oldid 239342087