Redundante Firewalls

Post Reply
Message
Author
leviathan
Posts: 54
Joined: 29. Apr 2001 20:39
Location: Neuss

Redundante Firewalls

#1 Post by leviathan »

Hallöchen,

ist es irgendwie möglich zwei Firewall-Systeme (IPTables) so zu konfigurieren, daß sie sich bei den offenen Verbindungen (TCP-Sessions) synchronisieren (die eine weiß, was die andere macht). Das bedeutet, daß beim Ausfall einer FW die andere den Traffic ohne Probleme und Verzögerung übernehmen kann, ohne daß ein Abbruch, beispielsweise eines Downloads, vorkommt.
Kurzgesagt, ein Firewall-Cluster.

Ist sowas möglich? Wenn ja, kann mir jemand diesen Tip geben?

Gruß
Leviathan

Rossi

Re: Redundante Firewalls

#2 Post by Rossi »

Wisssen tu ich es nicht, aber ich bezweifele es. Die Verbindungen werden von Kernel afaik im Speicher gehalten .. wie sollte diese Tabelle auf eine andere Maschine übertragen werden und vor allem in welcher Zeit ? Zumal, wenn die eine Maschine ausfällt, ist mit recht hoher wahrscheinlichkeit auch der Speicher leer oder korrupt - also, die letzten aufgebauten Verbindungen würden eh flöten gehen.
Und das ganze auf eine "shared disk" auzulagen hätte wohl doch einen minimalen Geschwindigkeitsverlust zur Folge ...

Firewall Cluster ist möglich (verteilt und/oder HA), aber der Verbindungstatus ist glaube ich nicht zu retten - würde im allgemeinen auch nicht den Aufwand rechtfertigen. Interessante Frage, auf jeden Fall. Und schliesslich kann ich mich ja auch täuschen :)

leviathan
Posts: 54
Joined: 29. Apr 2001 20:39
Location: Neuss

Re: Redundante Firewalls

#3 Post by leviathan »

Man müßte den Kernel dazu bringen, daß dieser einen Teil des RAM-Speichers mit einem anderen Rechner immer wieder synchronisiert, sozusagen "Shared Memory" oder "Memory-Mirroring" ähnlich dem des RAID1 bei Festplatten.
Das Synchronisieren könnte zum Beispiel über eine dedizierte 100Mbit-Leitung oder über Firewire (vom Namen her passend) geschehen. Die Technik sollte eigentlich egal sein.
Hmm, wahrscheinlich kann man das mit dem Kernel 2.4 nicht so einfach bewerkstelligen, aber es könnte ein sehr interessanten Feature für die nächste Generationen sein (Bestimmte Anwendungen in bestimmte Speicherbereiche laden und diese dann mit mehreren Rechnern teilen, auf andere Rechner dublizieren - allgemein ausgedrückt).
Oder wie kann man sich das sonst vorstellen?

Rossi

Re: Redundante Firewalls

#4 Post by Rossi »

Ich befürchte, das das momentan noch ziemliche Zukunftsmusik ist, einfach, weil keine geeigneten Übertragungsmedien bestehen, die auch nur Ansatzweise mit RAM mithalten könnten.
Bei TCP kommt noch die (verhältnismäig) immense Latenz dazu (die Zeit, die ein Paket braucht, um überhaupt an der schnittstelle anzukommen.)
Wenn Du in einem größeren Netz mehrere hundert oder tausend Verbindungen pro Minute hast, die auf- oder abgebaut werden, dann dürfte da auch Firewire oder MYrinet an seine Grenzen kommen.

Allerdings träumt ja Matt Dillion davon (FreeBSD Kernelentwickler), Prozesse zwischen Rechnern migrieren zu können. Vielleicht wäre das ein Ansatzpunkt ...

Bleibt die Frage, ob der Aufwand lohnt oder eine "abgebrochene" Verbindung nicht weit weniger problematisch ist.

leviathan
Posts: 54
Joined: 29. Apr 2001 20:39
Location: Neuss

Re: Redundante Firewalls

#5 Post by leviathan »

Mir ist heute (unter der Dusche) was eingefallen, um dieses Problem zu lösen.
Da TCP auf der Schicht 4 des OSI-Modells angesiedelt ist und fast unmöglich ist diese Sessions über 2 Firewalls aufrecht zu halten -- warum nicht macht dieses nicht auf Schicht 3? Sozusagen mit dem Routing untereinander. Man schaltet zwei unabhängige Router davor so zusammen, daß ihr Routingprozess den Ausfall kompensiert und sofort den Traffic umroutet. Mit Hilfe eines Linkstate-Protokolls wie OSPF wird es vemutlich klappen. Im Internet habe ich das Projet "Zebra" gefunden - werde das mal genauer unter die Lupe nehmen.

Rossi

Re: Redundante Firewalls

#6 Post by Rossi »

Bin mir nich sicher, ob ich Dich verstanden habe:
Dein Ausgangspunkt war, das Du bei einer statefull Firewall die Tabelle über bestehende Verbindungen auf einen anderen Rechner migrieren willst, so daß ein Benutzer bei einem Ausfall der Firewall keinen Verbindungsverlust erleidet und praktisch nichts merkt (wie bei einem HA Cluster). Liege ich soweit richtig ?

Dann nutzt ein vorgeschalteter Router auch nichts, weil, wenn der eine Rechner ausfällt, können zwar Folgeverbindungen auf den Anderen umgeleitet werden, bestehede Verbindungen werden aber nicht als solche erkannt, da der Verbindungsaufbau ja auf dem anderen, ausgefallenen Rechner stattgefunden hat.
Ergo, bereits bestehende Verbindungen werden gekappt. Mit "stateless" wäre das kein Problem, aber wer will das schon ?

Die Router können kein Wissen der Verbindungen haben, da IP Verbindungslos ist - zumal Du auch hier zwei bräuchtest (für den Fall das einer Ausfällt) und so der eine Router kein Plan hat, welche Verbindngen auf dem anderen bestehen. Wäre also nur vorverlagert, das Problem. Da hilft vermutlich auch kein OSPF, da der Router dem Rechner nicht mitteilen kann, das die bestehende Verbindung gültig ist.

Das Generelle Problem ist, Du hast immer einen "single Point of Failure" - zumindest, wenn Du nur einen Internetzugang hast - mit zwei Leitungen sieht die Sache schon ein wenig anders aus - mit ner Backupleitung auf nem anderen Rechner rennst Du in das gleiche Problem.

Trotzdem wäre ein Link zu Zebra nicht verkehrt gewesen :)

Leviathan

Re: Redundante Firewalls

#7 Post by Leviathan »

Klar müssten das mindestens 2 Router sein. (Wird bestimmt eine Materialschlacht)
Kann ich Dir mal eine Grafik schicken, wie ich mir das vorstelle? Warte Dann auf Deine Meinung.

Leviathan

Re: Redundante Firewalls

#8 Post by Leviathan »

Hab nochwas gefunden. Sagt Dir VRRP (Virtual Router Redundancy Protocol) etwas?
http://www.8wire.com/articles/?aid=2442
bzw.
http://w3.arobas.net/%7Ejetienne/vrrpd/

Dadurch könnten erstmal die Router redundant arbeiten.

Rossi

Re: Redundante Firewalls

#9 Post by Rossi »

> Kann ich Dir mal eine Grafik schicken, wie ich mir das vorstelle ?

pinguinpunk@gmx.net

Hab den ersten Link mal überflogen. Löst aber auch nicht Dein ursprüngliches Problem. Auch hier geht die Verbindung kurzzeitig verloren - das heißt schon _bestehende_ Verbindungen werden gekappt. Also Dein ftp-Download vom aktuellsten FreeBSD-Image mit dem Status "established" ist übern Jordan, denn, selbst wenn ein Router die Verbindung auf den anderen Firewall Rechner umleitet, weiß dieser ja nichts von dem angefangenen Download - bekommt also andauernd Pakete für eine bestehende Verbindung, die er nicht aber kennt.

Was aber durchaus spannend ist, ist die Tatsache, das zwei Geräte auf der gleichen IP arbeiten - dieses liese sich aber sicherlich auch mit bestehenden Cluster-Lösungen realisieren (mit ein wenig basteln) um so etwas ähnliches ohne die teuren Router zu realisieren:

http://oss.missioncriticallinux.com/pro ... imberlite/
http://oss.sgi.com/projects/failsafe/

Rossi

Re: Redundante Firewalls

#10 Post by Rossi »

Wobei beide Links einen Haken haben: Ich kenne failsafe gar nicht und kimberlite arbeitet immer noch mit einem 2.2er Kernel.

Post Reply