Vorwort

2012 schrieb ich an einem Buch über Einplatinenrechner und was man mit diesen und Linux anstellen kann.

Dafür beschäftigte ich mich unter anderem auch mit OpenWrt und stellte fest, dass ich mit dem Paketfilter von OpenWrt nichts anfangen konnte, weil ich durch die Vielzahl der Regelketten verwirrt war.

Ich fand damals keine geeignete Dokumentation, die mir die Zusammenhänge darlegte und beschloss kurzerhand, es selbst herauszufinden. Meine Erkenntnisse hielt ich in einem Kapitel des Buches, an dem ich gerade schrieb, fest. Außerdem veröffentlichte ich die Erkenntnisse auf meiner Website und stellte im Laufe der Zeit fest, dass diese Seiten zu den am häufigsten besuchten gehören. Auch aus Anfragen auf Stack Exchange konnte ich entnehmen, dass immer noch Interesse an diesem Thema besteht.

Also beschloß ich, mich diesem Thema erneut zu widmen, wobei ich dieses mal mehr Gewicht auf den Aspekt Firewall und weniger auf Betriebssystem und Hardware lege.

Dabei stellte ich fest, dass meine damaligen Erkenntnisse bei der aktuellen Version von OpenWrt nur noch bedingt von Nutzen sind. Deshalb beschreibe ich im Anhang, wie ich mir die Kenntnisse erarbeitet habe, so dass dieses Buch auch in ein paar Jahren hoffentlich noch nützlich ist.

Wie ist das Buch aufgebaut

Es gibt vier Hauptteile.

Im ersten Teil widme ich mich allgemeinen Fragen. Was kann ich mit OpenWrt machen und was nicht? Welche Vor- und Nachteile hat OpenWrt gegenüber anderen Systemen? Im wesentlichen also Fragen, die interessant sind, bevor ich mich für OpenWrt entscheide.

Im zweiten Teil wird es spezieller. Das Buch behandelt Netzwerk-Paketfilter und um diese effektiv einzusetzen, muss ich einige Grundlagen über IP-Netzwerke wissen. Die wichtigsten Netzwerkthemen, wie IPv4, IPv6, ICMP und NAT betrachte ich aus dem Blickwinkel des Firewall-Administrators. Die Themen dieses Teiles sind relevant für jede Art von Paketfilter-Firewall, nicht nur für Linux und OpenWrt.

Im dritten Teil geht es mitten hinein in das Thema des Buches. Die Beschreibung des Netfilter-Systems, der weiteren Kernel-Unterstützung für Firewalls und der zugehörigen Userspace-Programme ist noch übertragbar auf andere Linux-Systeme mit iptables. Ganz spezifisch auf OpenWrt zugeschnitten sind die Kapitel über das Modell der Regelketten sowie die Konfiguration mit LuCI und UCI. Die neue nftables Firewall bleibt noch außen vor. Wer daran interessiert ist, findet in [ctSchoeler2014] einen Einstieg in das Thema und im OpenWrt-Wiki Informationen zum Stand der Integration.

Im vierten Teil geht es um praktische Fragen und Rezepte für spezielle Probleme. Wie ermittle ich überhaupt meine persönlichen Anforderungen? Wie wähle ich die Hardware und Software aus? Wie härte und aktualisiere ich das System? Wie teste, überwache und dokumentiere ich die Firewall? Dieser Teil enthält schnell nachzuschlagende Lösungen für spezifische Probleme und ist auch ohne die Kenntnis der anderen Teile verwendbar. Um die Rezepte an geänderte Aufgabenstellungen oder Umgebungen anzupassen sind die Informationen aus den Teilen zwei und drei jedoch nützlich.

Bei der Arbeit an diesem Buch habe ich festgestellt, dass das im anderen Buch vorgestellte Modell der Regelketten nicht mehr auf die aktuelle Version von OpenWrt zutrifft. Aus diesem Grund habe ich im Anhang dargelegt, wie ich das Modell aus den Paketfilterregeln herausgearbeitet habe. Damit, so hoffe ich, bleibt das Buch noch aktuell, wenn sich die Regelketten bei OpenWrt wieder geändert haben. Außerdem lassen sich auf diese Art auch andere Paketfilter, die Linux und iptables nutzen, analysieren.

Zur Schreibweise

Für Eingaben auf der Kommandozeile sowie für Auszüge aus Konfigurationsdateien verwende ich eine dicktengleiche Schrift. Diese verwende ich auch im Fließtext, wenn ich Optionen oder Befehle wortgetreu schreibe. Begriffe, die mit $ eingeleitet werden, wie zum Beispiel $addr stehen für variable Angaben, die je nach Kontext ersetzt werden müssen.

Ansonsten verwende ich kursive Schrift für Hervorhebungen.

Danksagung

OpenWrt ist das Werk vieler Freiwilliger. Da sind die unzähligen Autoren der Software, die Leute, die das System zusammenstellen und die, die es auf neue Hardware portieren und dort testen, die Autoren der Dokumentation für die Software und für die Webseiten von OpenWrt. Diejenigen, die in Foren Fragen beantworten, aber auch die, welche die Fragen stellen. Allen diesen verdanke ich die Kenntnisse, die ich in diesem Buch zusammengetragen und hoffentlich verständlich dargelegt habe.

Neben diesen gebührt mein besonderer Dank Ulf Rudolf, der mich auf einige Unklarheiten in frühen Manuskripten hinwies und meinen Blick dafür schärfte.

Nicht zu vergessen das Team von Leanpub, das mir ermöglichte, mich auf den Text sowie die Recherchen und Tests dafür zu konzentrieren und mir die Arbeit mit der Formatierung für die verschiedenen Formate abnahm.