Bibliografische Information der Deutschen Nationalbibliothek Die Deutsche Nationalbibliothek verzeichnet diese Publikation in der Deutschen Nationalbibliografie; detaillierte bibliografische Daten sind im Internet über www.dnb.de abrufbar.
© 2020 Markus Stubbig
Herstellung und Verlag: BoD – Books on Demand GmbH, Norderstedt
1. Auflage 2020
ISBN: 978-3-7526-1381-0
Das Werk, einschließlich seiner Teile, ist urheberrechtlich geschützt. Jede Verwertung ist ohne Zustimmung des Verlages und des Autors unzulässig. Dies gilt insbesondere für die elektronische oder sonstige Vervielfältigung, Übersetzung, Verbreitung und öffentliche Zugänglichmachung.
Ein Open-Source-Betriebssystem für Netzwerkgeräte? Wofür das, denn jeder Router, jeder Switch und jeder Accesspoint hat bereits ein Betriebssystem ab Werk. Wenn ein Router, Switch oder Accesspoint sein Betriebssystem wechselt, dann nur für ein Update zu einer besseren Version.
OpenWrt ist eine Alternative und bietet dem Anwender die Wahl: Hersteller-OS oder OpenWrt. Im Endeffekt ist der Wechsel zu OpenWrt nur reizvoll, wenn der Router dadurch neue Tricks lernt oder stabiler arbeitet. OpenWrt wird schnell zum besten Freund, wenn die Drei-Jahres-Lizenz des Accesspoints abgelaufen ist, oder wenn die Netzadapter nur mit einer kostenpflichtigen Lizenz Gigabit liefern.
OpenWrt ist ein Bring your own Device für Netzwerkgeräte. Hersteller-OS runter und OpenWrt drauf. Letztendlich ist ein Switch auch nur ein kleiner Server mit erstaunlich vielen Netzadaptern.
Andersherum hält sich OpenWrt beim Support zurück, denn hinter dem Projekt steht keine Firma mit Hotline, Entstörzeit oder Ticketnummer. Das wird der Grund sein, warum OpenWrt verstärkt in Community-Projekten anzutreffen ist.
Wer den Schritt wagen möchte, wird überrascht sein, was OpenWrt alles bietet. Viel Spaß beim Ausprobieren, Staunen und Fluchen.
Kapitel 1 beginnt mit einer Kurzeinweisung für Ungeduldige. Anschließend erhalten die Geräte in Kapitel 2 ihr Betriebssystem und in Kapitel 3 eine erste Konfiguration. Zum Kontakt zwischen den OpenWrt-Routern kommt es in Kapitel 4 in einem konstruierten Beispielnetz.
Falls für die Einrichtung keine Webseite zur Verfügung steht, erläutert Kapitel 5 die Konfiguration über die Kommandozeile. In Kapitel 6 erkundet OpenWrt die Luft und wird zum drahtlosen Accesspoint, Client und beteiligt sich an einem WiFi-Mesh.
Um die allgemeinen Verwaltungsaufgaben, wie Update, Sicherung und zusätzliche Software, kümmert sich Kapitel 7. Danach überwacht Kapitel 8 ein OpenWrt-Gerät auf Fehler, blickt in die Systemmeldungen und schließt mit ein paar Befehlen für die Fehlerfindung.
Zuletzt zeigt Kapitel 9 viele kleine Handgriffe, die die tägliche Arbeit mit OpenWrt reibungsfreier gestalten.
https://openwrt.org/
Die Homepage von OpenWrt liefert einen guten Einstieg ins Thema und verlinkt zur Dokumentation, zu Anwendungen und zum Download-Bereich.
https://git.openwrt.org/
Die Entwickler bieten den Programmcode über Git an, wo jeder Einblick in den Fortschritt hat und sich an den Quellen bedienen kann. Daneben gibt es viele Demo-Projekte und Beispiele zum selber bauen.
https://forum.openwrt.org/c/documentation
Im offiziellen Forum sind Anwender und Entwickler vertreten und bereit für Ideen, Diskussionen und Support aus der Community.
Nichtproportionalschrift
zeigt die erzeugte Ausgabe eines Kommandos.
Schreibmaschinenschrift
wird für Konfigurationen und Schlüsselwörter benutzt, die buchstabengetreu eingetippt werden müssen.
Nichtproportionalschrift Fett
zeigt Befehle, die eine Ausgabe erwarten.
Hervorhebungen
weisen auf besondere Wörter oder Zeilen innerhalb von Kommandos oder Bildschirmausgaben hin.
ein-sehr-langer-kommando-aufruf --mit --sehr \ --vielen "Optionen"
Kommandos mit vielen Argumenten können länger als eine Zeile sein. Für die bessere Übersicht werden diese Kommandos mehrzeilig abgedruckt und um zwei Zeichen eingerückt. Am Ende jeder Zeile steht der Backslash als Hinweis darauf, dass es in der nächsten Zeile weitergeht.
Warennamen und Bezeichnungen werden ohne Gewährleistung der freien Verwendbarkeit benutzt. Es ist davon auszugehen, dass viele der Warennamen gleichzeitig eingetragene Warenzeichen oder als solche zu betrachten sind.
Bei der Zusammenstellung von Texten, Bildern und Daten wurde mit größter Sorgfalt vorgegangen. Trotzdem können Fehler nicht vollständig ausgeschlossen werden. Der Autor lehnt daher jede juristische Verantwortung oder Haftung ab. Für Verbesserungsvorschläge und Hinweise auf Fehler ist der Verfasser dankbar.
OpenWrt ist ein quelloffenes Netzwerk-Betriebssystem für Router. Es basiert auf GNU/Linux und vereint Techniken wie VLAN, Firewall, Adressumsetzung und Routing unter einer gewohnten Kommandozeile. OpenWrt läuft auf physikalischer Hardware oder als virtuelle Maschine.
Jeder Ausrüster von Netzwerkkomponenten hat ein eigenes Betriebssystem im Angebot. OpenWrt verkauft keine Router. Die Grundidee ist: ein Linux-Betriebssystem für viele Hardwareplattformen anzubieten. OpenWrt ersetzt auf anderen Routern das Betriebssystem und kann dann loslegen.
In dieser Nische hat sich OpenWrt einen Namen gemacht. Dort punktet es in den Bereichen Funktionalität und Erweiterbarkeit. OpenWrt bringt die Flexibilität von Linux auf proprietäre Hardware und entfernt damit so manche Einschränkung.
OpenWrt ist:
Unvollkommen. Und das ist positiv gemeint. Es gibt noch genug Raum zum Wachsen. Auch die Implementierung von Features hinkt etwas hinterher: Bei der Userverwaltung und beim Monitoring bestehen Nachholbedarf.
Open Source. OpenWrt setzt auf Linux als Betriebssystem und stellt viele seiner Eigenentwicklungen offen via Git zur Schau [1]. Aber der Vorteil einer quelloffenen Lösung ist nicht immer ihr Preis. Denn kostenlos ist Open-Source-Software nicht! Es fallen zwar keine Lizenzgebühren an, aber die Arbeitszeit der Netzwerk-Admins zum Einarbeiten in die Linux-Welt darf nicht unterschätzt werden.
OpenWrt versucht auf möglichst vielen Routermodellen Fuß zu fassen. Aktuell umfasst die Kompatibilitätsliste [2] mehr als 200 Hersteller.
Try before Buy. Wie bei Shareware-Programmen kann (und sollte) OpenWrt vor dem Einsatz getestet werden, bevor irgendwelche Investitionen in die Infrastruktur beginnen. Und wer freut sich über einen eingeschränkten Funktionsumfang, eine Evaluierungslizenz oder einen 30-Tage-Zeitraum? In diesem Zusammenhang steht Try für Ausprobieren mit Beispielszenarien und Buy für den Einsatz in der eigenen Umgebung.
Hardware-frei. OpenWrt ist Software. Diese Software braucht eine Hardware. Die Antwort der Hardware-Frage liefert eine Kompatibilitätsliste aus etwa 1.500 Geräten verschiedener Hersteller und Leistungsklassen.
In der Vergangenheit gab es viele limitierende Gründe, warum eine softwarebasierte Lösung für Netzwerkinfrastruktur nicht an die Leistung der physikalischen Geräte herankam. Der Hauptgrund war das suboptimale Zusammenspiel von Software und Treiber mit der darunterliegenden Hardware. Bei der immens großen Auswahl von Netzwerkkarten, Mainboards, Prozessoren und Memory ist es für eine Software schwierig auf jede Kombination der Komponenten optimal vorbereitet zu sein.
Heutzutage sind normale Server oder eingebettete Systeme überraschend performant, sodass auch eine nicht-optimierte Software Bandbreiten jenseits von Gigabit durchbrechen kann.
Linux. Unter OpenWrt läuft ein angepasster Linux-Kernel. Der Zugriff aufs Betriebssystem ist nicht gesperrt. Über das Konsolenmenü oder eine SSH-Verbindung liegt der root
-Zugang offen.
Das bringt Möglichkeiten zum Anpassen, Verbessern und Nachinstallieren von Tools. Dagegen steht die Gefahr, dass die eigene Änderung ungewollte Instabilität mitbringt.
Best Of. OpenWrt erfindet an vielen Stellen das Rad nicht neu und bedient sich für seine Features an den vertrauten Linux-Diensten, die nach Jahren der Entwicklung eine hohe Stabilität erreicht haben. Die Implementierung der Routingprotokolle stammt von Quagga, der SSH-Server gehört zu Dropbear und beim Logging helfen logd
und syslog-ng
.
Diebstahl? Keineswegs! Eher ein Nachweis, dass Open Source funktioniert. Solange Lizenzbedingungen eingehalten werden, darf Fremdsoftware beigemischt werden. Gerade im Security-Umfeld ist es höchst erwünscht, dass Anwendungsentwickler keine eigenen Implementierungen stricken, sondern sich an den freien und stabilen Bibliotheken bedienen.
Ohne Hardware kann auch OpenWrt nichts ausrichten. Was im Serverumfeld gängige Praxis ist, erscheint in der Netzwelt skurril. Denn kommerzielle Router haben ein vorinstalliertes Betriebssystem und das wird höchstens durch eine aktuelle Version desselben ausgetauscht. Beim Open-Source-OS hat der Kunde die freie Wahl und kann sich sein Wunschmodell so zusammenstellen, dass es in die Infrastruktur von Netzwerk, Monitoring, Verwaltung und Automatisierung passt.
Diese Entkopplung von Hard- und Software hat auf beiden Seiten Vorteile. Egal welcher Hersteller im Netzwerk mitspielt, das Betriebssystem sieht auf allen Boxen gleich aus. Das vereinfacht die Administration und den Lernaufwand, auch wenn die Architektur unterschiedlich ist.
Welches Betriebssystem darf es denn sein? Grundsätzlich läuft auf vielen eingebetteten Systemen auch eine Distribution von Debian. Allerdings ist dieser Anbieter nicht optimal auf die Ausstattungen von Netzwerkgeräten vorbereitet. OpenWrt als Netzwerkbetriebssystem hat eine starke Ausrichtung auf Netzwerkkarten, WiFi-Adapter, Buffer, CLI und das bei minimalen Hardwareressourcen.
Die Historie von OpenWrt reicht zurück bis 2004. Zwei Jahre davor brachte Linksys das Modell WRT54G auf den Markt und benutzte dafür einen Programmcode, der unter der GPL-Lizenz steht. Als Folge der Lizenzbedingung muss Linksys ihre Firmware ebenfalls quelloffen bereitstellen. Dieser Auflage kam Linksys erst nach mehrmaliger Aufforderung nach. Ein paar Entwickler schnappten sich den Quellcode und bauten daraus ihre eigene Firmware für den Linksys-Router und nannten ihre Software OpenWrt.
Weitere Entwickler nahmen an diesem Projekt teil und veröffentlichen schließlich 2006 eine brauchbare, aber immer noch experimentelle, Version.
Die erste stabile Version 0.9 kam im Februar 2007 unter dem Codenamen „White Russian“ hinterher.
In den folgenden Jahren und Releases nehmen die Entwickler mehr und mehr Treiber in ihre Software auf und ermöglichen damit den Einsatz von OpenWrt auf weiteren Routermodellen. Gleichzeitig bewegt sich die Entwicklung weg vom Linksys-Code zum regulären Linux-Kernel, der lediglich um Treiber ergänzt wird. In Summe wird OpenWrt zu einer Linux-Distribution für eingebettete Systeme.