Der mit Abstand wichtigste Schutzmechanismus, der Desktop-Rechner und Serversysteme abschottet, ist die Firewall. Ganz gleich, ob Software oder Hardware – Sinn und Zweck einer Firewall ist es, den Zugriff auf ein Rechnersystem beziehungsweise ein ganzes Netzwerk zu beschränken.

In der Praxis hat sich gezeigt, dass es besser ist, die Firewall dahingehend zu konfigurieren, dass ausschließlich die vom Administrator genehmigten Zugriffe erlaubt sind. Alle anderen Zugriffe blockt die Firewall rigoros ab. Dieses Prinzip wird als "Default Deny" bezeichnet. Zwei verschiedene Funktionsweisen haben sich im Zusammenhang mit Firewalls durchgesetzt: Paketfilter- und Personal-Firewalls.

Der erstgenannte Firewalltyp filtert, wie es der Name schon sagt, die im Netzwerk übertragenen TCP/IP-Pakete. Dazu arbeitet die Paketfilter-Firewall typischerweise als Gateway und untersucht die weitergeleitete oder für sie selbst bestimmte Kommunikation nach bestimmten Regeln, dem so genannten Ruleset. Die Regeln (siehe Kasten "Grundlegende Firewall-Regeln") einer solchen Firewall sind typischerweise nach dem Default-Deny-Prinzip aufgebaut.

Personal-Firewalls sind das, was in der Windows-Welt als Desktop-Firewall bekannt ist. Der Anwender installiert ein Programm, dessen Konfigurationsmöglichkeiten sich – überspitzt ausgedrückt – in der Wahl der Sicherheitsstufe erschöpfen. Der wichtigste Unterschied zur Paketfilter-Firewall: Eine Personal-Firewall schützt einen einzelnen Rechner eines Netzwerks auf Applikationsebene.

Will eine Anwendung mit dem Internet oder dem Netzwerk Daten austauschen, weist die Software den Nutzer darauf hin und fragt, ob diese Kontaktaufnahme erlaubt werden soll. Dies zeigt, dass eine solche Firewall auf einer anderen OSI-Ebene arbeitet als die Paketfilter. Auch blocken viele Personal-Firewalls grundsätzlich alle eingehenden Verbindungen ohne Rückfrage, da eine Workstation in den seltensten Fällen als Server fungiert.

Grundlegende Firewall-Regeln

Wie bereits erwähnt, sind die Regeln einer Firewall nach dem Default-Deny-Prinzip – ähnlich dem folgenden Schema – aufgebaut:

State-Regel : Die so genannten stateful Firewalls können sich den Status bereits aufgebauter Verbindungen merken. Mit anderen Worten: Wurde ein Verbindungsaufbau bereits erlaubt, so kann die aufgebaute Verbindung (established connection) ohne weitere Beachtung durchgelassen werden. Oft wird eine solche Regel aber auch implizit angenommen und muss nicht extra definiert werden. Außerdem handelt es sich bei nahezu allen halbwegs modernen Paketfilter-Firewall-Systemen um stateful Firewalls.

Erlaubte Kommunikation : In den folgenden Regeln werden die freizuschaltenden Ports und Wege definiert, zum Beispiel: Erlaubt ist der komplette Traffic, der aus dem internen Netz kommt und auf Port 80 (http) gerichtet ist. Damit wird etwa den Mitarbeitern einer Firma das Surfen im Netz erlaubt. In der Praxis sinnvoll ist es, auch den E-Mail-Verkehr und FTP-Dienste freizuschalten. Wie das Konzept exakt aussieht, hängt natürlich von den individuellen Bedürfnissen des Firewall-Nutzers ab. Spätestens an dieser Stelle ist eine genaue Kenntnis der TCP/IP-Protokoll-Suite unerlässlich, da sich ansonsten keine sinnvollen Regeln definieren lassen.

Catch-all-Regel : In der letzten Regel wird jeglicher weiterer Traffic verboten.

Werden die Regeln nun von oben nach unten abgearbeitet, wird die Catch-all-Regel genau dann aktiv, wenn keine vorherige Regel zutreffend ist. Dieser Traffic ist also nicht explizit erlaubt und wird durch diese Regel »aufgefangen« und blockiert.

Firewall unter Linux: netfilter/iptables

Damit ein Betriebssystem eine Paketfilter-Firewall unterstützen kann, muss der Kernel über die entsprechenden Funktionen verfügen. Diese Schnittstellen sind unter Linux als netfilter bekannt. Das entsprechende Frontend für den Userspace ist iptables. Mit dem iptables-Tool werden im Userspace nach einem definierten Format die Firewallregeln festgelegt. Diese werden dann über das netfilter-Interface im Kernel aktiviert. Ein iptables-Aufruf setzt sich – vereinfacht ausgedrückt – aus folgenden Komponenten zusammen:

Tabelle : Zuerst muss angegeben werden, um was für eine Regel es sich handelt – eine Paketfilter- oder eine NAT-Regel.

Kette : Anschließend wird spezifiziert, auf welche Kette sich der folgende Regelausdruck bezieht und ob die folgende Regel einzufügen oder zu löschen ist.
Filterausdruck: Damit wird festgelegt, auf welche Pakete sich die Regel bezieht. Fehlt dieser Filterausdruck, geht die Firewall davon aus, dass alle Pakete der betreffenden Kette gefiltert werden sollen.

Ziel : Zuletzt ist anzugeben, was mit den Paketen, diese alle Kriterien erfüllen, geschehen soll.

Mehr Infos

Dieser Artikel stammt auszugsweise aus "Linux – Das distributionsunabhängige Handbuch", das bei Galileo Computing unter der ISBN 978-3-8362-1090-4 für 40 Euro erschienen ist. Auf 1117 Seiten führen die Autoren in die Linux-Grundlagen und die Arbeitsweise des Systems ein und geben wertvolle Praxistipps rund um das Thema Sicherheit. Weitere Infos erhalten Sie unter www.galileocomputing.de/1579 .

PC-WELT Marktplatz

72712