Wikipedia · einfach zusammengefasst · Stand
Paketfilter
Ein Paketfilter, auch Netzwerkfilter genannt, ist eine Anwendung oder Software, die den ein- und ausgehenden Datenverkehr in einem Rechnernetz filtert.
Inhalt4 Abschnitte
Aufgabe und Bedeutung
Ein Paketfilter, auch Netzwerkfilter, ist eine Anwendung oder Software, die den ein- und ausgehenden Datenverkehr eines Rechnernetzes filtert. Er dient in der Regel dazu, ein Netz vor Angreifern zu schützen, und kann Teil einer Firewall sein. Dabei ist nicht nur der Schutz vor Zugriffen von außen wichtig: Das Filtern ungewollt ausgehender Pakete kann auch erschweren, dass ein eigener Rechner unbemerkt Viren im Internet verbreitet.
Paketfilter setzen das Konzept einer Firewall um. Sie kontrollieren also, welche Datenpakete ein Zugangsschutzsystem passieren dürfen und welche abgeblockt werden.
Prüfung und Filterregeln
Ein sendender Host verpackt Daten in Datenpakete und versendet sie im Netz. Jedes Paket, das einen Paketfilter passieren will, wird untersucht. Der Filter wertet Angaben aus, die im Paket enthalten sind, insbesondere Absender- und Empfänger-Adresse. Anhand von Filterregeln entscheidet er dann über die Behandlung des Pakets.
Ein unzulässiges Paket kann verworfen werden; dafür werden die Bezeichnungen DENY oder DROP verwendet. Der Filter kann den Absender auch mit einer ICMP-Nachricht darüber informieren, dass der Zugriff unzulässig war; dies heißt REJECT. Zulässige Pakete können weitergeleitet werden, bezeichnet als FORWARD oder PERMIT, oder durchgelassen werden, bezeichnet als ALLOW oder PASS.
Ein Paketfilter heißt stateful, wenn er für ein ausgehendes Paket automatisch eine Regel erzeugt. Diese akzeptiert innerhalb eines bestimmten Zeitfensters im Minutenbereich die Antwort auf das Paket. Bleibt die Antwort aus oder wird die Zeit überschritten, verfällt die Regel. Solche Filter können prinzipiell auch mit Protokollen umgehen, die auf zwei Ports arbeiten, beispielsweise FTP.
Einsatz an Routern und Grenzen
Auf Routern werden Paketfilter für Ingress-Filter eingesetzt. Sie verhindern, dass Pakete mit ungültigen Absender- oder Ziel-Adressen aus einem Netz gesendet oder in ein Netz gesendet werden. Ist an einer Router-Schnittstelle beispielsweise nur das Netz 10.1.1.0/24 angeschlossen, sollte der Router ein Paket mit der Absender-Adresse 172.16.1.42 aus diesem Netz verwerfen. Ursache kann ein Konfigurationsfehler sein; möglich ist aber auch, dass ein Angreifer seine Absender-Adresse fälschen will. Ebenso lassen sich Multicast- und Broadcast-Absender-Adressen filtern. Als Alternative zu Paketfiltern wird hierfür Unicast Reverse Path Forwarding genannt.
Eine Regel kann etwa lauten: „Verwirf alle Pakete, die von der IP-Adresse 1.2.3.4 kommen.“ Da Angreifer jedoch beliebige IP-Adressen nutzen können, ist es praktischer, nur Pakete bestimmter IP-Adressen durchzulassen. Auch dies ist nicht wirklich sicher, weil eine Absenderadresse technisch ohne größere Probleme gefälscht werden kann. Sichere Kommunikation, etwa zwischen Firmennetzen, ist nur möglich, wenn Protokolle die Authentifikation und Autorisierung der beteiligten Benutzer oder Systeme vornehmen.
Ports und verfügbare Paketfilter
IP-Adressen lassen sich im Beispiel mit Hausnummern vergleichen: Unter einer IP-Adresse kann direkt mit einem Rechner kommuniziert werden. Die verschiedenen Dienste eines Rechners arbeiten auf nummerierten „Etagen“, den Ports. Dazu zählen HTTP, FTP und SSH. Ein Paketfilter kann einzelne Ports für Besucher aus dem Internet sperren und dadurch Verbindungen abweisen. Durch eine passende Firewall-Konfiguration kann ein Rechnernetz so vor Angriffen oder Zugriffen geschützt werden.
Genannte Implementierungen sind IPFilter für Solaris, FreeBSD und weitere Systeme, ipfw von FreeBSD und Mac OS X, ipfwadm für Linux 2.0 und ipchains für Linux 2.2, beide obsolet, ip(6)tables für Linux ab 2.4, nftables für Linux ab 3.13 sowie pf. pf ist ein Paketfilter aller BSD-Derivate, vornehmlich OpenBSD, inzwischen aber auch FreeBSD und NetBSD.