Login
Newsletter
Werbung

Mo, 4. Dezember 2000, 00:00

Firewall - Teil 2

Ipchains

Ipchains ist die Benutzerschnittstelle zum Paketfilter der Firewall. Es ist in jeder aktuellen Linuxdistribution enthalten.22

Ipchains löst im neuen 2.2er Kernel das Tool ipfwadm ab, welches in Kerneln < 2.2 die Schnittstelle bildete. Bei ipchains handelt es sich um eine komplette Neuimplementierung des Linux Ipv4 Firewall-Codes und somit auch um eine Neuimplementierung von ipfwadm.

Es gibt zahlreiche Wrapperprogramme, die alte ipfwadm-Regeln in neuen ipchains-Code umsetzen.23

Es sei noch angemerkt, daß im in der Entwicklung befindlichen Kernel 2.4 eine weitere neue Schnittstelle Einzug finden wird: netfilter/iptables.24 Der neue Kernel wird voraussichtlich im dritten Quartal 2000 veröffentlicht.

Verbesserungen im Kernel 2.225

Der Kernel hat beim Versionswechsel von 2.0 zu 2.2 einige Änderungen erfahren. Der Paketfilter- und Routing Code wurden neu geschrieben. Dadurch hat sich die Liste der Linux-Fähigkeiten erweitert.

Die für eine Firewall wichtigen Verbesserungen des Kernels 2.2 gegenüber 2.0 im Einzelnen:

  • Routing an Hand der Quelladresse

Diese neue Funktion kann beispielsweise dazu genutzt werden, einzelne Clientgruppen über verschiedene Provider ins Internet gehen zu lassen. Beispielsweise werden alle Clients mit der Adresse 192.168.1.x durch einen ISDN-Router mit dem Internet verbunden, während Clients mit der Quelladresse 192.168.2.x die Verbindung über ein Modem aufbauen.

  • Port Forwarding

Auf einem bestimmten Port eingehende Pakete werden an einen beliebigen Rechner und Port weitergeleitet. Damit lassen sich z.B. transparente Proxies realisieren: Alle aus dem lokalen Netz auf Port 80 ankommenden Pakete gehen an Port 3128 der Firewall, auf dem ein Proxyserver, z.B. Squid, installiert ist.26

  • Transparente Proxies

Ein Vorteil eines transparenten Proxies ist, daß er für die Benutzer nicht »sichtbar« ist. Sie müssen deshalb auch keine Einstellungen im Browser vornehmen.

  • Unterstützung von Wide Area Networks (WAN), X.25

Unterstützung weiterer Netzwerktypen

  • Unterstützung von QoS27

Prioritätenvergabe an IP-Pakete

  • Unterstützung von IPv6

Unterstützung des zukünftigen Internet Protokolls (Version 6)

  • Erweitertes MASQ für komplexere Protokolle
  • Verbessertes Accounting

Die Zähler der IP-Filter sind jetzt 64 Bit breit.

  • Verbesserte Performance im Netz

Grundlegende Funktionsweise einer Paketfilter-Firewall

Das Grundprinzip einer Paketfilter-Firewall ist die Überprüfung des gesamten IP-Datenverkehrs. Grundlage einer Paketfilter-Firewall sind accept- und deny-Regeln. Diese Regeln stellen ausdrücklich fest, welche Pakete auf einem bestimmten Netzwerkinterface erlaubt sind und welche nicht.

Die Regeln greifen auf die Informationen im Header des Pakets zurück, um zu entscheiden, ob das Paket ans Ziel weitergeleitet (accept), einfach verworfen (deny) oder abgelehnt und eine Fehlermeldung an den sendenden Computer zurückgeschickt wird (reject).

Folgende Informationen stehen einer Paketfilter-Firewall zur Verfügung:28

  • Quelladresse
  • Quellport
  • Zieladresse
  • Zielport
  • Protokoll
  • Netzwerkinterface
  • ICMP-Nachrichtentyp
  • TCP-Flags
  • Ob das Paket eingehend (incoming) oder ausgehend (outgoing) ist

Die Firewall regelt den ein- und ausgehenden Datenverkehr und zusätzlich auch noch den Verkehr zwischen den verschiedenen Netzwerkschnittstellen des Firewallrechners. Die Regeln für eingehende Daten können sich komplett von denen für ausgehende Daten unterscheiden.

Die Gesamtheit aller Regeln einer Regelliste wird chain (engl. für Kette) genannt. Die einzelnen Regeln entsprechen den Gliedern der Kette. Jedes Paket wird der Reihenfolge nach mit jeder Regel verglichen, bis eine Übereinstimmung gefunden wird oder die chain zu Ende ist.

Default Policy29

Jede chain hat eine default policy. Wenn ein Paket mit keiner der Regeln in der chain übereinstimmt oder die chain zu Ende ist, tritt die default policy in Kraft. Es gibt zwei grundlegende Vorgehensweisen beim Aufstellen einer default policy:

  • Alles abzulehnen und einzelne Regeln für Dienste aufzustellen, die angenommen werden sollen (deny everything by default)
  • Alles zu akzeptieren und einzelne Regeln für Pakete aufzustellen, die abgelehnt werden sollen (accept everything by default)

Die erstere ist die empfehlenswertere Methode. Sie garantiert eine sichere Firewall, da jeder Dienst, der nicht ausdrücklich erlaubt ist, abgelehnt wird. Allerdings ist diese Methode mit viel Arbeitsaufwand verbunden, da jeder Dienst, der benutzt werden will, auch aktiviert werden muß. Dies verlangt einiges an Hintergrundwissen über die einzelnen Dienste und deren Protokolle. Eine deny everything by default Firewall ist somit schwerer zu realisieren.

Eine accept everything by default Firewall ist sehr viel leichter aufzusetzen, da sämtliche Dienste erlaubt sind, solange sie nicht ausdrücklich durch Regeln verboten sind. Verdächtige oder gefährliche Dienste müssen also gesperrt werden. Die Gefahr besteht darin, daß gefährliche Dienste nicht oder zu spät als solche erkannt werden, und dadurch große Sicherheitslücken in der Firewall bestehen. Mit dieser Methode ist es sehr viel schwerer, eine sichere Firewall zu betreiben.

Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten
Werbung