Hallo Leute, ich habe mir in den letzten Tagen einen Linux Router gebaut, der auch gewisse Server-, Sicherheits- und Verschlüsselungsrollen übernehmen kann. Ich habe ihn getestet und er funktioniert soweit wunderbar! Die Entstehung wurde dokumentiert und ich habe eine Art Bauanleitung daraus gemacht, diese will ich euch hier zur Verfügung stellen.
Vielleicht motiviert sie den einen oder anderen, sein Netz selbst in die Hand zu nehmen. Sie richtet sich grundsätzlich an ein technisch eher versiertes Publikum, den typischen overclocker eben, wenn man so will. Ich will keinesfalls behaupten, dass dies die einzig richtige Implementierung darstellt, es ist lediglich eine Möglichkeit, die bei mir bereits erfolgreich im Einsatz ist.
Beginnen wir bei der Auswahl der Hardware, ich habe mich für folgende Komponenten entschieden:
Gigabyte J1900N-D3V
Mushkin Enhanced Essentials, PC3L-10667S, 2x4 GB, 1,35V
LC-Power LC-1340mi 75W extern, Mini-ITX
gebrauchte 2,5" SATA-Festplatte, ohne fehlerhafte Sektoren und nicht uralt
Netgear GS108v3 8Port Gigabit Switch für das interne Netz
BEC-Verlängerungen aus dem Modellbaubereich
Weiters benötigt: Bildschirm, VGA- oder DVI-Kabel, PS2- od. USB-Tastatur, externes optisches Laufwerk, USB-Stick, ausreichend viele LAN-Kabel, CD-Rohling
Die
Gesamtkosten für die Router-Hardware selbst liegen bei
circa 250,- €. Manch einer fragt sich vielleicht warum BEC-Verlängerungen? Dies liegt daran, weil die Front-Panel Anschlüsse von dem Gehäuse zu kurz sind. Ich habe mich dazu entschieden nur den Power-Switch und das HDD-Led zu versorgen. Außerdem habe ich die beiden Netzwerk-Chips vom Typ RTL8111F mit Kupferkühlern versehen.
Hier ein paar Bilder vom Zusammenbau:
Als nächstes muss man das BIOS auf Version F3 flashen. Dafür benötigt man einen bootfähigen DOS-Datenträger, das Flash-Utility von Gigabyte und das richtige Bios.
Doch davor muss man im Bios den CSM Support aktivieren, um von non-UEFI Datenträgern booten zu können.
Die Einstellung
Video - Legacy only bietet sich dann an, wenn man den Bildschirm mit DVI angeschlossen hat und nicht blind flashen will.
Eine englische Anleitung zum Erstellen des bootfähigen USB-Sticks und zum Flashen des BIOS findet man, von Gigabyte selbst, hier:
http://www.gigabytenordic.com/wordp...ds-j1800-j1900/Das aktuelle BIOS findet man hier:
http://www.gigabyte.com/products/pr...x?pid=4918#biosWenn man das BIOS erfolgreich geflasht hat, sieht das folgendermaßen aus:
Als nächstes steht die Installation des Betriebssystems an, ich habe mich für IPFire entschieden, seit Version 2 gebaut aus einem
Linux from the scratch, modular erweiterbar und mit einem starken Sicherheitsaspekt.
Ich habe die klassische Installation von einem optischen Datenträger, einer CD, gewählt, die ich per externem USB-Laufwerk gebootet habe.
Der Setup-Bildschirm schaut so aus:
Dann habe ich mich nur an den wiki-Guide gehalten, hat auf Anhieb funktioniert:
http://wiki.ipfire.org/de/installation/startTipp: Vorab notieren welche MAC-Adresse links und welche rechts ist, für das interne Netzwerk (GRÜN) habe ich die linke Netzwerkkarte gewählt, die
rechte Netzwerkkarte ist (
ROT), also ins Internet schauend. Einfache Eselsbrücke um unnötige Downtimes zu vermeiden.
Nach erfolgreicher Installation und Grundkonfiguration bekommt man diesen Schirm zu sehen:
Das Gerät ist nach einem Neustart unter
HTTPS://NAME:444 oder
HTTPS://INTERNE_IP:444 erreichbar.
Nun sollte man sich mit der Konfiguration der Firewall auseinandersetzen:
http://wiki.ipfire.org/en/configura...all/rules/startWenn man bereits eine andere Firewall im Einsatz hat, kann man diesen Schritt zunächst überspringen.
So richtig mächtig wird IPFire erst durch seine Addons:
http://wiki.ipfire.org/de/addons/startBei mir derzeit installiert sind:
ClamAV - Virenscanner auf Netzwerkebene
SquidClamAV - Virenscanner für den Webproxy Squid
Guardian - Macht aus Snort IDS ein IPS
IPerf - Testen der Netzwerkperformance
tcpdump - mitlesen des Datenverkehrs in Echtzeit auf der Konsole
Um Snort richtig nutzen zu können benötigt man (Intrusion Detection System) IDS-Rules, die meisten gibt es kostenfrei. Wenn man sich auf
http://www.snort.org registriert kann man einen Oinkcode anfordern, diesen muss man bei Services -> Intrusion Detection Oinkcode: einfügen. Dann kann man sich alle Rules downloaden, außer die subscription-Rules, die etwas Geld kosten.
Damit sie zur Anwendung kommen, muss man die jeweiligen Rules auch aktivieren!
Ich habe Snort am internen (GREEN) und am externen Interface (RED) aktiviert. Ich will, dass Alarm geschlagen wird, auch wenn etwas ungewöhnliches hinaus will, nicht nur wenn etwas versucht hinein zu kommen. Guardian, der Verbindungen blockiert, ist nur am externen RED-Interface aktiviert, Snort selbst informiert mich nur.
Die aktivierten Services sehen bei mir so aus:
Die installierten Addons derzeit so:
Leistungsmäßig ist alles im grünen Bereich, keinerlei Geschwindigkeitseinbußen erkennbar, hier ein OpenSuse-Download mit über 140 Mbit/s:
Auch das interne Netz fetzt gut dahin, hier ein paar Ergebnisse von IPerf:
Die CPU hat bei längerer Belastung, rein passiv gekühlt, über 70° C erreicht, also habe ich noch einen leisen Lüfter hineingegeben, weiters plane ich Löcher in den Deckel zu bohren, so circa:
Nach Einbau des Lüfters, ist die Temperatur von 60° C auf 50° C gesunken:
Der
Stromverbrauch des Routers liegt mit Festplatte, beiden Gigabit-Links aktiv und einem Lüfter bei kontinuierlich
23-25 Watt.IPFire Download:
http://www.ipfire.org/IPFire Forum:
http://forum.ipfire.org/Spenden:
http://www.ipfire.org/donateWeitere Dinge mit denen man sich auseinandersetzen sollte:
Double NAT erklärt und mögliche Lösungen, englisch:
http://graemenoble.id.au/post/48695...sible-solutionsTcpDump Überblick:
http://linuxwiki.de/TcpDumpSnort Rules verstehen, englisch:
http://opentodo.net/2012/10/snort-f...ratch-part-iii/Messen der Netzwerk-Performance mit IPerf, englisch:
http://opentodo.net/2012/08/test-ne...nce-with-iperf/