Weiter Zurück [Inhalt] Online Suche im Handbuch LITTLE-IDIOT NETWORKING

21.1 Einsatz bei ISP's

ISP's haben es mit zwei unterschiedlichen Problemen zu tun. Zum einen betrifft dies Server Housing, zum anderen Zugänge.

Bei dem Zugriff auf Server hat man es mit vielen Clients und wenigen IP - Nummern sowie Ports zu tun. Es müssen die Ports 80 und 21 für Zugriffe aus dem Internet freigeschaltet werden. Nur in Ausnahmefällen sollten weitere Ports, z.B. für SQL zugelassen werden. Hierfür reichen erstaunlich wenige Regeln völlig aus. Etwas problematisch ist die große Zahl von Zugriffen pro Sekunde, die auf die Server einstürmen. Die Firewall muß also Tausende von simultanen Zugriffen pro Sekunde im RAM verwalten können. Hierzu muß der LINUX Kernel speziell für eine große Zahl von halboffenen Verbindungen vorbereitet werden. Hierzu ist die Variable SOMAXCONN in der Datei /usr/src/linux/include/linux/socket.h von 128 auf eine höhere Zahl gesetzt werden. Bevor man aber den Maximalwert von 65535 einsetzt, sollte man sich überlegen, wieviel RAM jede halboffene Verbindung verbraucht. Reicht das RAM nicht aus, so fängt die Firewall an, den SWAP Speicher zu bemühen, was zu einem völligem Performanceeinbruch führen kann. Jede TCP - Verbindung beansprucht im RAM einen Puffer, der bei LINUX je nach Kernel-Version und Prozessortyp schwankt. Der Standardwert liegt bei etwas über 1 KByte. Die Werte schwanken jedoch auch von Betriebssystem zu Betriebssystem. Genaue Angaben von kommerziellen Herstellern bekommt man derzeit nur von SUN oder halt von OpenSource Firewalls, wie TIS FWTK (NAI), JUNIPER Firewall oder GENUAWALL.

Unter NT sind solche Angaben nur schwierig zu bekommen.

Problematisch ist der Zugriff von Browsern auf Server über die Firewall hinweg. in vielen Fällen öffnet der Browser viele simultane Verbindungen zum Server. Spricht der Server nur HTTP 1.0, dann wird die Firewall erheblich belastet. Im Falle dessen, daß die Server mit neueren IIS / APACHE Servern ausgerüstet sind, die HTTP 1.1 konform sind, werden alle Grafiken und HTML Seiten in einen einzigen Datenstrom (TCP Verbindung) verpackt.

Wie man sieht, hängt die Leistung der Firewall auch von den WWW-Servern hinter der Firewall und den Clients ab. Man sollte auch bedenken, daß pro Client stets zwei TCP Verbindungen auf der Firewall initiiert werden, einmal zum Client und weiterhin zum WWW-Server. Bei 50.000 offenen Zugriffen auf eine Serverfarm müssen also mindestens 100.000 simultane TCP Verbindungen offengehalten werden können. Hier ist eine RAM Ausstattung von 128 MByte das Minimum, sofern alle Server HTTP 1.1 konform sind. Hinzu kommt, daß z.B. für jede Initiierung einer Verbindung alle Firewallregeln durchlaufen werden müssen. Eine scheinbar langsame 2 MBit Anbindung kann aber eine Firewall in erhebliche Bedrängnis bringen, zumal es nur einiger hundert Byte bedarf (abhängig von der MTU) um eine halboffene Verbindung zu initiieren. Diese scheinbar geringe Bandbreite von 2 MBit reicht bei einem DoS Angriff z.B. aus, um die Firewall mit einigen hundert neuen Verbindungen pro Sekunde zu traktieren.

Hierbei spielen die Timeout Einstellungen bei halboffenen Verbindungen eine große Rolle. Fast alle Firewalls sind auf einige Minuten bis Stunden standardmäßig eingestellt. Diesen sollte man unbedingt auf wenige Sekunden heruntersetzen, auch wenn man in Gefahr läuft, daß Teilnehmer aus langsamen Netzwerken keine Verbindung mehr aufbauen können.

Hier kommt es also entschieden auf die Intelligenz des TCP/IP Stacks an. FAST RETRANSMIT, SACK ....sind Begriffe die alle mit intelligentem Timing und Timeouts zu tun haben. Wer also sicher sein möchte, daß keine der o.a. Probleme entstehen sollten, der sollte BSD UNIX, SOLARIS 2.6/2.7, LINUX 2.2 Kernel, OS/2 oder die SF Firewall unter LINUX einsetzen. LINUX 2.0 mit IPFWADM oder IPCHAINS ist hierfür völlig ungeeignet, ebenso wie alle Windows NT basierten Firewalls, da NT nicht über intelligente Mechanismen, wie FAST RETRANSMIT, SACK ... verfügt. Für den Einsatz im Intranet oder als Firewall-Router zur Anbindung eines Unternehmens spielen diese Betrachtungen keine Rolle.

Das größere Problem bei ISP´s ist die Speicherung von LOG-Dateien. Intelligente DoS Angriffe können bei einer 2 MBit Anbindung dazu führen, daß jede Sekunde die Daten von 500 neuen Verbindungen gespeichert werden müssen. Das sind pro Tag ca. 2 GByte an Daten. Es reicht also, die Firewall mit 100 GByte Festplattenplatz auszurüsten. Billige AT-BUS Festplatten mit je 25 GByte Kapazität zum Preis von 4x600 DM reichen hier völlig aus, um die gesetzlichen Vorschriften erfüllen zu können. Erfahrungsgemäß reicht ein AMD 350 MHz mit 128 MByte RAM und 100 GByte Festplatte, 2x 100 MBit Karten und LINUX Firewall völlig aus, um eine 2 MBit Anbindung zu überwachen. Der Gesamtpreis beläuft sich ca. auf 5.000 DM. Etwas geringer sind die Anforderungen bei DIAL-IN Routern. Um 30 ISDN - Leitungen mit einer Firewall abzusichern, reicht ein P166 mit 64 MByte RAM , 2x10 MBit Karten und LINUX 2.0 völlig aus. Besonderes Tuning ist nicht erforderlich.


Weiter Zurück [Inhalt] Online Suche im Handbuch LITTLE-IDIOT NETWORKING