LUG Waldkraiburg

zur Navigation springen


eMail Impressum Datenschutz

DSL-Server für WLAN und mit IPSec-Verschlüsselung

von Kurt Sommer erstellt ??.????

Will man mit mehreren Rechnern gleichzeitig ins Internet gehen, bietet sich der Einsatz eines zentralen Servers an. Problematisch wird so ein Projekt, wenn mehrere Teilnehmer räumlich voneinander getrennt sind und kein Kabel verlegt werden kann, weil sich der Teilnehmer z.B. auf der gegenüberliegenden Straßenseite befindet.

Die Lösung für das räumliche Problem heißt WLAN, entsprechende Karten sind in letzter Zeit rapide im Preis gefallen. Man handelt sich jedoch, wenn keine geeigneten Gegenmaßnahmen getroffen werden, ein enormes Sicherheitsproblem ein, vor allem dann, wenn die Karten so betrieben werden, wie es die Bedienungsanleitungen vorschlagen.

Mit einem Linux-Server und den entsprechenden Softwarepaketen wurde das LAN jedoch so abgesichert, daß ein Mißbrauch nahezu unmöglich ist.

Die Skizze zeigt die etwas komplexere Verschaltung des Netzwerkes, ein schwacher Ebay-Rechner tut's hier leider nicht mehr, da die Maschine wegen der Verschlüsselung zu fast 80% ausgelastet ist:




Gleich eins vorweg:
Diese Verdrahtung eignet sich weniger für ein Hochsicherheits-Netzwerk, da Router und Firewall eigentlich auf getrennten Rechnern laufen sollten. Wenn man bei der Installation allerdings aufpasst, nur die unbedingt notwendigen Dienste freischaltet und einen monolitischen Kernel benutzt, ist die Lösung für den Hausgebrauch aber mehr als ausreichend.

Wie aus der Skizze ersichtlich, ist der Server mit 3 Netzwerkkarten ausgestattet, die Karte 192.168.1.1 (eth0) ist direkt mit dem DSL-Modem verbunden, empfangene Pakete werden auf die Adressen 192.168.2.x (eth3) und 192.168.3.x (eth2) geroutet. Wird ein höherer Datendurchsatz benötigt, kann anstatt der Funklan-Karte auch ein WLAN-Access-Point eingesetzt werden, für normales Surfen reicht aber eine WLAN-Karte aus. Als Kartentyp eignen sich am Besten Karten mit dem Orinoco-Chipsatz, die teilweise schon recht günstig zu bekommen sind. Das ppp0-Ausgangsdevice ist mit dem IPtables-Paketfilter (Firewallsoftware) abgesichert.

Wie das Routing funktioniert, wurde bereits in der Beschreibung des Modem-Routers ausführlich behandelt.

Für das Funk-LAN mußte eine besondere Sicherungsmaßnahme her, da die Standard-Verschlüsselung von WLAN alles andere als sicher ist.

Dazu wurde auf dem Server das Paket ipsec von freeswan installiert und eingerichtet. Die verwendete Version funktioniert mit Kernels ab 2.0.39 bis 2.4.18. Da wir einen neuen Kernel benötigen, müssen die Kernelquellen und die GNU-MP Bibliotheken vorhanden sein.

Installation:

Zuerst wird das Archiv freeswan-1.99.tar.gz nach /usr/src in das Unterverzeichnis freeswan-1.99 ausgepackt, nach einem Wechsel in das Verzeichnis wird mit make menugo der Kernel gepatcht und automatisch menuconfig aufgerufen. Dort kann man sich die neue Konfiguration unter NETWORKING OPTIONS anschauen. Anschließend werden alle notwendigen Treiber für den Server fest einkompiliert, der Module-Loader deaktiviert und sämtliche, nicht notwendige Treiber abgeschaltet.

Nachdem der neue Kernel übersetzt wurde, muß er nach /boot vmlinuz kopiert werden und anschließend noch der Bootloader eingerichtet werden.

Nach einem Reboot sollte der Kernel dann die IPSec-Unterstützung präsentieren:
klips:info:ipsec_init:KLIPS startup,FreeS/WAN IPSec version: 1.99.
Mit cat /proc/net/ipsec_version kann ebenfalls die Version des installieren IPSec angezeigt werden.

Die Haupt-Konfigurationsdateien von IPSec sind /etc/ipsec.conf und /etc/ipsec.secrets. Die Datei ipsec.secrets ist die Datei, in der der geheime Teil der Schlüssels aufbewahrt wird. Ein neues Schlüsselpaar wird mit ipsec rsasigkey Bitgröße erzeugt, z.B. ipsec rsasigkey 2048 und anschließend nach /etc/ipsec.secrets eingetragen.

Im Nachhinein poste ich hier mal meine ipsec.conf, diese kann je nach verwendeten Netzwerkinterfaces variieren und muß dann entsprechend angepasst werden, Interessierte sollten sich auch die man-pages von IPSec durchlesen:

#ipsec.conf
config.setup
interfaces =„ipsec1_eth3“
klipsdebug = none
plutodebug = none
plutoload = %search
plutostart = %search
plutowait = no
forwardcontrol = no
fragicmp = yes


Verschlüsselte Pakete der Clienten werden also auf dem Server entschlüsselt und in das Internet (eth0) geroutet, umgekehrt werden die empfangenen Pakete vom Server verschlüsselt und über die Antenne (an eth3) zum Clienten abgestrahlt.



Problematisch erwiesen sich hier die Win95/98 Clienten, da diese Systeme von Haus aus kein IPSec beherrschen. Microsoft bietet hierfür allerdings ein Update, nach dessen Installation befindet sich in der Netzwerkumgebung ein neuer Zweig (L2TP/IPSec VPN-Adapter) sowie das Programm „Ipsec VPN-Konfiguration“ , das entsprechend eingerichtet werden muß. Der öffentliche Teil des erzeugten Schlüssels wird dann wieder auf den Server kopiert.

Tja, und aus Schaden wird man auch klug....;
Die verwendete Antenne, (siehe Fotos unserer Installparty), bringt ca. 10dBi Gewinn und somit eine beträchtliche Reichweite, wurde aber mittlerweile stark abgeschirmt, so daß nur noch der tatsächliche Nutzbereich mit Funkwellen „verseucht“ wird.

Einige User waren so raffiniert, daß sie ihre eigenen Windows-Kisten als Server konfigurierten, um dann ihre „Spezl und Verwandten“ durch unser Netz zu schleusen. Ein direktes Ankoppeln ging nicht wegen der Abfrage der MAC-Adressen, außerdem werden dafür auf dem Server die entsprechenden IPSec-Keys benötigt.

Die Clienten wurden deshalb mit einer Security-Software versehen, (Cryptographie ist halt meine Leidenschaft). Das Programm arbeitet massiv Hardware-gebunden und blockiert während einer Internet-Session das Routing, sowie weitere Netzwerkkarten, leider Pech für diejenigen, die ihren Drucker nicht lokal angeschlossen haben...

Als nächste Ausbaustufe (Skizze2) werden dann auch noch die lokalen Benutzer am LAN2 über IPSec angekoppelt, dann ist das Projekt im Moment perfekt...


Viel Spass beim Nachbauen....

Kurt Sommer



Seitenanfang