Firewall Handbuch für LINUX 2.0 und 2.2 - zurück
Firewall Handbuch für LINUX 2.0 und 2.2 - zurück
Firewall Handbuch für LINUX 2.0 und 2.2 - zurück
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
Timeouts werden <strong>für</strong> folgende Funktionen eingesetzt:<br />
• Entfernung dynamischer Regeln (remove_rule)<br />
• Schreiben des Logfiles auf Festplatte (flush_log)<br />
• Beendigung hängender Prozesse (kill_spy)<br />
Timeouts sind in dem File sf_custom.h definiert <strong>und</strong> sollten entsprechend den<br />
Anforderungen beim Einsatz in Hochleisungs - Netzwerken angepaßt werden.<br />
Error Handling<br />
Der <strong>Firewall</strong>-Dämon schreibt alle Error - Meldungen in die Logfiles <strong>und</strong> sendet ggf. E-Mails<br />
an den User, z.B. wenn der freie Speicherplatz auf der Festplatte den Wert von 2 MByte<br />
unterschreitet. Wenn alle diese Funktionsaufrufe versagen, dann schreibt der <strong>Firewall</strong>-<br />
Dämon die letzten Meldungen auf die Konsole <strong>und</strong> unterbricht allen Netzwerkverkehr.<br />
Vermeidung von doppelten Log-Einträgen<br />
Der <strong>Firewall</strong>-Dämon übergibt Nachrichten sowohl an den SYSLOGD <strong>und</strong> schreibt in sein<br />
eigenes Logfile. Während der SYSLOGD automatisch mehrfache Einträge bereinigt (last<br />
message repeated...times), mußte dieses Verhalten in den <strong>Firewall</strong>-Dämon expliziert<br />
hinein programmiert werden. (flogf() Funktion). Wenn der <strong>Firewall</strong> einen Eintrag im Logfile<br />
vornimmt, so wird vorher überprüft, ob diese Nachricht bereits existiert. Falls dies zutrifft,<br />
wird ein Zähler angeworfen, der solange hochzählt, bis eine andere Nachricht erscheint. In<br />
diesem Falle werden in das Logfile die Zahl der Ereignisse <strong>und</strong> deren Dauer geschrieben,<br />
bevor die neue Nachricht geschrieben wird. Dies ist kein Schutz vor schnell wechselnden<br />
Angriffsmethoden mit wechselnden gespooften IP-Adressen. Hiergegen gibt es keinen<br />
Schutz. Für den Fall, daß keine Ereignisse eintreten, wird in ein Eintrag periodisch<br />
erzwungen, als Kontrolle der Funktionsfähigkeit der Log-Funktion.<br />
Variablen <strong>und</strong> Timeouts<br />
Variablen werden in einem Array des Typs struct gespeichert. Es ist <strong>für</strong> die korrekte<br />
Zuordnung der Variablen zu Netzwerken, Hosts... notwendig, daß jeder Eintrag als<br />
Struktur erfolgt. Es existieren zu jedem Variablennamen also eine Vielzahl von<br />
Untereinträgen. Um diese Unterteilung von Variablen vornehmen zu können, kann eine<br />
dynamische Liste von Hosts jeder einzelnen Variablen zugeordnet werden. Der Eintrag in<br />
das Array wird dann zu dem Kopf der Liste, dem Rooteintrag. In jedem Rooteintrag wird<br />
das Adressfeld nicht berücksichtigt. Es enthält aber die Summe aller Einträge in der<br />
Hostliste <strong>und</strong> die Timeout-Werte der jeweils am längsten lebenden Einträge darin. Wenn<br />
also ein Variable mit einem Timeout versehen wird (firewall.conf), wird der Wert 0<br />
<strong>zurück</strong>gegeben. Hierbei ist im Gegensatz zu den dynamischen Filterregeln kein alarm<br />
oder Signal erforderlich. Wenn ein neues Element an die Liste der Hosts angefügt wird,<br />
wird die Liste zuerst nach Elementen durchsucht, die veraltet sind. Wenn ein solches<br />
gef<strong>und</strong>en wird, wird dieser Eintrag aufgefrischt, andernfalls wird ein neuer angelegt. Diese<br />
Funktionen befinden sich in dem File sf_daemon.c<br />
14.26 Counter Intelligence<br />
Die Files sf_spy.c enthält den Code <strong>für</strong> die "counter intelligence" Fähigkeiten der <strong>Firewall</strong>.<br />
Diese Funktion kann die Zuverlässigkeit der <strong>Firewall</strong> steigern.Der <strong>Firewall</strong>-Dämon<br />
überprüft die IP <strong>und</strong> den DNS-Namen des zugreifenden Hosts. Über diesen "double<br />
reverse lookup" kann die <strong>Firewall</strong> überprüfen, ob ein Host gespoofte (vorgetäuschte IP -<br />
Nummern) Adressen benutzt. Diese gespooften Adressen sind typisch <strong>für</strong> Cracker oder<br />
Fehlkonfigurationen. Hierzu kann der <strong>Firewall</strong>-Dämon weitere Untersuchungen am<br />
zugreifenden Host vornehmen. Ein verdächtiger Host wird dann alle SPY_TIMEOUT<br />
Minuten untersucht. Dieser Wert wird in sf_custom.h definiert. Die SPY Funktion ist in der<br />
Erstellt von Doc Gonzo - http://kickme.to/plugins