Alternativen zum OpenWrt-Paketfilter
Will ich mich nach Alternativen für den Paketfilter von OpenWrt umsehen, muss ich mir als erstes über den Einsatzzweck und meine Anforderungen klar werden.
Ist der Paketfilter nur ein kleiner Teil des Gesamtsystems und fiel die Wahl aus anderen Gründen auf OpenWrt, dann muss dessen Paketfilter reichen.
Bei erhöhten Sicherheitsanforderungen weiche ich für die Filterung des Datenverkehrs im Netz vielleicht auf andere Systeme aus und verwende, wenn nötig, andere Hardware.
Ein weiterer Aspekt ist das zur Verfügung stehende Budget. In diesem Punkt ist es allerdings schwierig, eine sinnvolle Alternative zu OpenWrt zu finden, da dieses nahezu kostenlos zu bekommen ist und auf sehr billiger Hardware laufen kann.
Ganz anders kann es bei den Vorkenntnissen aussehen. Wer sich mit dem Paketfilter pf von BSD sehr gut auskennt, muss sich vielleicht erst mit den Eigenheiten der Netfilter-Firewall von Linux vertraut machen und würde vielleicht ein BSD-System vorziehen.
Weitere Punkte sind die Lernbereitschaft desjenigen, der den Paketfilter betreuen soll und die Lernanforderungen des Systems. Gibt es ausreichend Dokumentation und vielleicht Schulungsmöglichkeiten? Wie verläuft die Lernkurve beim Einsatz des Systems? Gibt es Konfigurationsbeispiele für die wichtigsten Einsatzfälle?
Nicht zu unterschätzen ist der Support für den Paketfilter. Habe ich mehrere Systemadministratoren, die die Technologie beherrschen, kann ich diesen Punkt enspannter sehen, als wenn ich das System allein betreue und nicht so sattelfest bin. Abhängig vom Budget, den Anforderungen und den verfügbaren Vorkenntnissen wähle ich bezahlten oder Community-Support. Letzterer funktioniert aber nur dann wirklich auf Dauer, wenn ich bereit bin, etwas von meinen Kenntnissen zurückzugeben.
Wenn ich mir im Klaren über meine Kriterien zur Auswahl einer Alternative bin, kann ich versuchen, die Spreu vom Weizen zu trennen.
Ich kann die Alternativen unterteilen zwischen proprietären und freien beziehungsweise quelloffenen Systemen. Bei proprietären Systemen muss ich immer Geld ausgeben, kann in den meisten Fällen dafür mit einem ordentlichen Support rechnen. Es bleibt allerdings immer ein Rest von Unsicherheit, was das System genau macht. Quelloffene Systeme bieten demgegenüber prinzipiell die Möglichkeit, das System bis in die letzte Ecke zu verstehen. Dafür muss ich eigene Arbeit investieren und viel lernen. Ich kann aber auch für quelloffene Systeme und den zugehörigen Support bezahlen.
Eine weitere Unterteilung betrifft das eingesetzte Betriebssystem, welches die Arbeitsweise des Paketfilters bestimmt. Die wichtigsten sind hier:
- Linux mit Netfilter
- BSD-basierte Systeme mit pf
- proprietäre Systeme, die oft auf einem der beiden aufbauen
Auf das Betriebssystem setzt die Konfigurationssoftware auf, mit der der Paketfilter erst nutzbar wird. Hier gibt es:
- Konfiguration über die Kommandozeile beziehungsweise Textdateien,
- Webbasierte Konfiguration,
- Konfiguration direkt am Gerät über eingebaute Schalter und Anzeigen.
- Konfiguration mit speziellen Programmen,
- Zentrale Konfiguration für mehrere Geräte,
Die Konfiguration über die Kommandozeile und über Textdateien erfordert die genaue Kenntnis der erforderlichen Syntax und hat zu Beginn eine steile Lernkurve. Auf die Dauer wird diese Lernkurve jedoch kompensiert durch die Möglichkeit, die Konfiguration in beliebigen Versionsverwaltungssystemen zu pflegen und darüber Änderungen zu verfolgen. Außerdem ist es einfach möglich, die Konfiguration automatisch zu erzeugen sowie aus der Konfiguration automatisch die Dokumentation zu generieren.
Bei der Konfiguration über ein Webinterface ist die Lernkurve am Anfang flach und kleine Änderungen der Konfiguration sind schnell gemacht. Dafür sind komplexe Konfigurationen nur mühsam und fehlerträchtig zu pflegen. Versionskontrolle ist ohne weiteren Aufwand nicht möglich. Automatisierung über das Webinterface ist zwar möglich, aber aufwendig und fragil gegenüber Änderungen am Webinterface.
Neben der CLI-/Text-basierten und der Webkonfiguration gibt es die zentrale Konfiguration mehrerer Paketfilter. Diese bietet die Möglichkeit, mehrere Firewalls in einem Netz aufeinander abzustimmen. Einige proprietäre Systeme bieten von sich aus diese Möglichkeit. Bei Firewalls mit CLI-/Text-Interface lässt sie sich nachrüsten oder selbst programmieren. Bei einem Webinterface würde ich auf Grund der Fragilität davon abraten.
Die Konfiguration mit speziellen Programmen, die auf dem Arbeitsplatzrechner laufen und von dort aus die Firewall konfigurieren ist oft bei proprietären Systemen zu finden. Dabei bin ich an das Betriebssytem gebunden, auf dem das Programm läuft.
Als letzte Form der Konfiguration kann ich direkt am Gerät arbeiten. Damit ist oft nur eine minimale Grundkonfiguration möglich, sowie das Rücksetzen auf Werkseinstellungen.
Schließlich kann ich Alternativen nach der benötigten Hardware einteilen, beziehungsweise nach dem Virtualisierungssystem, falls ich den Paketfilter in einem Software Defined Network als virtuelle Maschine betreiben will.
Mit diesen Unterscheidungsmerkmalen wäge ich die Vor- und Nachteile gegenüber OpenWrt ab und entscheide mich dann an Hand meiner vorher aufgestellten Kriterien.