2.1. Konfigurationsdatei: Reihenfolge, Dynamik und Vorrang
IPF (IPFilter) besitzt eine Konfigurationsdatei (um nicht zu sagen, dass jedes
Kommando nochmal und nochmal für jede Regel ausgeführt wird). Die Datei
entspricht den Unix- Standards: Die "#" markiert einen Kommentar; und man kann
Regeln und Kommentare gemeinsam in der selben Zeile haben. Zusaetzlicher
"Whitespace" ist erlaubt und fuer eine bessere Lesbarkeit der
Regeln empfehlenswert.
2.2. Ausfuehren der Regeln
Die Regeln werden immer von Anfang bis Ende der Datei ausgefuehrt; immer eine nach der anderen. Das meint schlicht und ergreifend, dass eine Regel wie diese:
block in all
pass in all
...vom Computer so gesehen wird:
block in all
pass in all
Was bedeutet, dass, falls ein Paket hereinkommt, ist das erste, was IPF tut, das hier:
block in all
Sollte IPF es für noetig halten, zur nächsten Regel zu gehen, dann wendet es die zweite Regel an:
pass in all
An diesem Punkt duerftest Du Dich selbst fragen "Geht IPF weiter zu zweiten Regel?". Wenn Du Dich mit ipfwadm oder ipfw auskennst, wirst Du das moeglicherweise nicht tun. Eine kurze Zeit spaeter wirst Du Dich wundern, dass die Pakete immer dann abgelehnt oder angenommen werden, wenn das nicht geschehen soll. Viele Paketfilter stoppen mit dem Vergleich der Pakete, wenn eine Regel auf diese Pakete zutrifft. IPF gehoert nicht dazu. Anders als andere Paketfilter setzt IPF eine Flag, die beschreibt, ob oder ob das Paket nicht zu einer Regel passt. Solange du den Fluss nicht unterbrichst, geht IPF durch den gesamten Regelsatz, um eine Entscheidung zu faellen, ob das Paket hereindarf oder in der letzten Regel verworfen werden soll. Die Szenerie: IPFilter ist aktiv. Es nimmt einen Teil der CPU- Zeit für sich in Anspruch. Es hat ein Checkpoint- Clipboard, das dieses hier liest:
block in all
pass in all
Ein Paket kommt in das Interface und es ist Zeit, an die Arbeit zu gehen. Es legt einen Blick auf das Paket und auf die erste Regel:
block in all
"Soweit denke ich, ich sollte das Paket blockieren" sagt IPF. Dann wendet es seinen Blick der zweiten Regel zu:
pass in all
"Soweit denke ich, ich sollte das Paket passieren lassen" sagt IPF. Es legt
einen Blick auf Regel Nummer drei. Es gibt aber keine dritte Regel. Also tut
es das, was seine letzte Entscheidung war: Das Paket darf die
Firewall passieren.
Jetzt ist die Zeit guenstig, herauszufinden, was passiert, wenn der Regelsatz
so aussehen wuerde:
block in all
block in all
block in all
block in all
pass in all
Das Paket duerfte immer noch passieren. Es gibt keinen Gesamteffekt. Die letzte Regel hat immer Vorrang.
so, das war's Wenn Du noch interessiert bist, dann nuckel das man auf
Deine Maschine. Viel Spass!
Seitenanfang