Die Geschwindigkeit, mit der Daten über Netzwerke transportiert werden, wächst dank fortschreitender Technologien stetig. Doch Geschwindigkeit allein ist nicht das einzige Kriterium, um die Bedürfnisse des Anwenders in Bezug auf die Datenübertragung zufriedenzustellen. Oft ist es auch notwendig, bestimmten Datenverkehr vorrangig zu behandeln oder bestimmten Anwendungen eine Mindestbandbreite zu garantieren. Weitere Anforderungen können das Verbieten oder Umleiten von Datenpaketen beinhalten.
Das Betriebssystem Linux stellt dafür zwei Werkzeuge zur Verfügung, die diese Bedürfnisse abdecken. Dabei handelt es sich zum einen um die Firewall, die seit der Kernelversion 2.6 mit dem iptables-Befehl realisiert wird. Zum anderen behandelt das Programm „tc“ sämtliche Anforderungen, welche das Bandbreitenmanagement oder die Priorisierung des Netzwerkverkehrs betreffen.
In der vorliegenden Arbeit werden zu Beginn das Prinzip und die Funktionsweise der Linux-Firewall betrachtet. Im Anschluss daran werden einige Möglichkeiten vorgestellt, die das Programm „tc“ anbietet, um den QoS-Anforderungen gerecht zu werden. Im letzten Schritt wird das Verhalten beider Programme beobachtet, wenn Pakete innerhalb drei verschiedener Netzwerke verschickt und kontrolliert werden müssen.
Das Ergebnis dieser Beobachtungen führt zu dem Schluss, dass mit Hilfe dieser beiden Anwendungen ein Netzwerk derart gestaltet werden kann, dass es sowohl sicher ist, als auch QoS-Anforderungen zufriedenstellend erfüllt.
Inhaltsverzeichnis
- Einleitung
- Die Funktion des Linux-Kernels in Bezug auf Firewalling
- Die Filter-Tabelle
- Die NAT-Tabelle
- Die Mangle-Tabelle
- Die Raw-Tabelle
- Traffic Control
- Classless Queueing Disciplines
- pfifo_fast
- bfifo und pfifo
- Stochastic Fairness Queueing (SFQ)
- Token Bucket Filter (TBF)
- Weitere Classless Queueing Disciplines
- Classful Queueing Disciplines
- PRIO QDisc
- Hierarchical Token Bucket (HTB)
- Weitere Classful Queueing Disciplines
- Filter
- Klassifikation anhand Markierungen: Der fw-Filter
- Klassifikation anhand der Routing-Tabelle: Der route-Filter
- Flexibel klassifizieren mit dem u32-Filter
- Classless Queueing Disciplines
- Aufbau und Bewertung einer Testumgebung mit Firewall und Traffic Control
- Die Testumgebung
- Anforderungen an die Firewall und den QDiscs
- Vorbereitungen
- Konfiguration der Netzwerkkarten
- Installation von SSH
- Installation des Programmes iperf (jperf)
- Errichtung der Firewall
- Erstellung der QDiscs für sämtliche Schnittstellen
- Schnittstelle eth0: Die Entlastung der Modem-Warteschlange
- Schnittstelle eth1: Der Intra-/Internet-Server in der DMZ
- Schnittstelle eth2 und eth4: Die Clients im LAN
- Messungen
- Messungen ohne Bandbreitenentlehnung
- Messungen mit der Möglichkeit einer Bandbreitenentlehnung
- Erkenntnis und Ausblick
Zielsetzung und Themenschwerpunkte
Diese Arbeit untersucht die Möglichkeiten des Linux-Betriebssystems, Netzwerke sowohl sicher zu gestalten als auch die Anforderungen an Quality of Service (QoS) zu erfüllen.
- Die Funktionsweise der Linux-Firewall, die seit der Kernelversion 2.6 mit dem iptables-Befehl realisiert wird.
- Die Möglichkeiten des Programms „tc“, um QoS-Anforderungen zu erfüllen, wie Bandbreitenmanagement und Priorisierung von Netzwerkverkehr.
- Die praktische Anwendung beider Programme in einer Testumgebung mit drei verschiedenen Netzwerken, um das Verhalten beim Senden und Kontrollieren von Paketen zu beobachten.
- Die Bewertung der Effizienz beider Programme im Hinblick auf die Erreichung von Sicherheits- und QoS-Zielen.
- Die Analyse der Ergebnisse und der Ausblick auf zukünftige Entwicklungen im Bereich der Netzwerksicherheit und QoS-Steuerung.
Zusammenfassung der Kapitel
Die Einleitung gibt eine Einführung in die Thematik der Netzwerksicherheit und QoS und erläutert die Relevanz der Arbeit. Kapitel 2 beschreibt detailliert die Funktionsweise des Linux-Kernels in Bezug auf Firewalling, wobei die verschiedenen Filter-Tabellen wie die Filter-, NAT-, Mangle- und Raw-Tabelle erläutert werden.
Kapitel 3 befasst sich mit dem Thema Traffic Control und stellt verschiedene Queueing Disciplines vor, die das Programm „tc“ anbietet. Dabei werden sowohl Classless- als auch Classful-Queueing Disciplines und verschiedene Filtermechanismen wie der fw-Filter, der route-Filter und der u32-Filter vorgestellt.
Kapitel 4 beschreibt die Errichtung einer Testumgebung, um das Zusammenspiel von Firewall und Traffic Control zu bewerten. Die Testumgebung umfasst verschiedene Netzwerkkarten, die mit SSH und iperf konfiguriert werden.
Die Messungen in Kapitel 4 untersuchen das Verhalten der Firewall und der QDiscs unter verschiedenen Bedingungen, sowohl ohne als auch mit der Möglichkeit einer Bandbreitenentlehnung.
Schlüsselwörter
Firewall, QoS, Bandbreite, Queueing Discipline, iptables, Traffic Control, Linux-Kernel, Netzwerksicherheit, Testumgebung, Messungen, Bandbreitenmanagement, Priorisierung, DMZ, LAN, iperf, SSH
- Arbeit zitieren
- Michael Sauer (Autor:in), 2010, Traffic Control unter Linux, München, GRIN Verlag, https://www.hausarbeiten.de/document/229439