Rechner per WLAN-Stick vernetzen

Aus EasyLinux 02/2007

Rechner per WLAN-Stick vernetzen

Kein Salat

Kabelsalat ist out – WLAN ist in. Am einfachsten gestaltet sich der Umstieg auf die drahtlose Technologie mit einem USB-Adapter. EasyLinux stellt acht Geräte vor, die auch unter Linux funktionieren.

Wer jetzt auf WLAN umsteigen möchte, hat gute Chancen, einen USB-Adapter zu finden, der mit Linux zusammenarbeitet. Für die meisten Geräte gibt es Treiber im Internet. Dieser Artikel erklärt einige WLAN-Grundlagen und zeigt, wie Sie einen Adapter mit Linux-Treibern oder per Ndiswrapper einrichten und mit einem Access Point verbinden. In der zweiten Hälfte beschreibt der Artikel, wie Sie die WPA-Verschlüsselung aktivieren.

Buchstabensalat

Auf der Verpackung von WLAN-Produkten treffen Sie in der Regel die Aufschrift 802.11b oder 802.11g an. Die Zahlen 802.11 bezeichnen dabei die Norm IEEE 802.11 für WLAN-Produkte. Der Buchstabe (a, b oder g) kennzeichnet die Geschwindigkeit. A-Geräte sind mit einer Datenrate von maximal 54 Mbit/s zwar deutlich schneller als B-Geräte (11 MBit/s), sie haben sich jedoch aufgrund höherer Hardwarekosten nicht durchgesetzt. Aktuell am weitesten verbreitet sind G-Geräte: Die im Artikel getesteten USB-Adapter unterstützen alle diesen Standard. Sie übertragen Daten ebenfalls mit einer Geschwindigkeit von 54 MBit/s. Zurzeit arbeitet die IEEE an der Verabschiedung der Spezifikation 802.11n. Die neueste Generation von WLAN-Geräten soll Brutto-Übertragungsraten von bis zu 108 MBit/s (13,5 MByte/s) bringen. Details dazu lesen Sie im Kasten “Mimo & Co.”.

Mimo & Co.

Wer sich in den Regalen der WLAN-Hardware umschaut, trifft bei jeder zweiten Box auf einen Aufkleber, der besonders hohe Übertragungsraten verspricht. Bei diesen Geräten handelt es sich um nicht normierte Eigenentwicklungen des jeweiligen Anbieters. Die Hardware-Hersteller setzen dazu zwar auf die Spezifikation des kommenden Standards 802.11n – da dieser aber voraussichtlich erst Ende 2007 endgültig verabschiedet wird, kann man nicht von Standardhardware sprechen. Am weitesten verbreitet zur Kennzeichnung dieser neuen Highspeed-WLAN-Geräte sind die Bezeichnungen Mimo, Pre-N und g+ (auch schon g++). Bei Mimo handelt es sich streng genommen nicht um eine Norm, sondern eine technische Lösung: Multiple- Input- Multiple- Output-Geräte senden nicht nur über eine Antenne, sondern benutzen gleich mehrere (in der Regel drei). Dadurch lässt sich der Datendurchsatz von 802.11g-Geräten bis auf 240 Mbit/s steigern.

Da Pre-N-Geräte abwärts mit den Standards 802.11b/g kompatibel sind, lassen sich solche Adapter auch unter Linux nutzen. Allerdings sind für das perfekte Zusammenspiel von Router und Endgerät Produkte vom gleichen Hersteller nötig. Selbst dann funktionieren die meisten Adapter nur über den Windows-Treiber (Ndiswrapper) im 108-Mbit-Modus. Wir raten deshalb, mit dem Kauf von Pre-N-Geräten abzuwarten, bis der Standard feststeht. Dann wird es auch entsprechende Linux-Treiber geben.

Alles Ralink oder was?

Die meisten aktuellen USB-Adapter benutzen einen Ralink-Chipsatz, der unter Linux mit dem Treiber rt73 funktioniert. Aktuelle Versionen von Ubuntu und Suse Linux bringen dafür sogar Treiber mit. Allerdings funktionieren diese mangels Firmware nicht. Sie finden deshalb auf der Heft-DVD den Treiber für WLAN-Sticks mit einem Ralink-73-Chipsatz. Der Artikel erklärt im Folgenden, wie Sie diesen installieren. Beachten Sie, dass der Treiber nur mit den USB-Sticks funktioniert, für die in der Tabelle “Testgeräte im Überblick” als Treiber das Kernelmodul rt73 aufgeführt ist. Viele Hersteller wechseln zudem die Chipsätze der Hardware, ohne den Gerätenamen zu ändern. Ältere WLAN-Sticks mit einer identischen Typenbezeichnung funktionieren deshalb mit den beiliegenden Treibern nicht unbedingt. Im Zweifelsfall hilft die EasyLinux-Mailingliste [1]. Treiber für andere WLAN-Geräte mit Ralink-Chipsatz finden Sie auf der Homepage von Serialmonkey [2]. Einen Test von PCI-, USB- und Cardbus-Geräten lesen Sie auch in der März-Ausgabe des LinuxUser [3].

Testgeräte im Überblick

Hersteller AVM Conceptronic D-Link Hama Linksys Netgear Sitecom Belkin
Modell Fritz!WLAN Stick v1.1 C54RU DWL-G122 00062764 WUSB54GC WG111T WL-172 v1 001 F5D7050de
Modi b/g/g+ b/g b/g b/g b/g b/g b/g/g+ b/g
WPA WEP/WPA/WPA2 WEP/WPA/WPA2 WEP/WPA/WPA2 WEP/WPA/WPA2 WEP/WPA/ WEP/WPA/WPA2 WEP/WPA/WPA2 WEP/WPA/
WPA-Tool wpa-supplicant iwpriv iwpriv iwpriv iwpriv iwpriv iwpriv
Chipsatz Unbekannt Ralink Ralink Ralink Ralink Unbekannt Ralink Ralink
Treiber ndiswrapper rt73 rt73 rt73 rt73 ndiswrapper rt73 rt73
SoftMAC Nein Nein Nein Nein Nein Nein Nein
Interface wlanX rausbX rausbX rausbX rausbX wlanX rausbX rausbX
Preis (ca.) 30 Euro 20 Euro 25 Euro 20 Euro 30 Euro 25 Euro 30 Euro 30 Euro

Damit Ihr System aus dem Quellcode das erforderliche Kernelmodul erstellen kann, müssen Sie vor der Installation des eigentlichen Treibers einige Pakete nachrüsten. Unter Suse Linux sind dazu folgende Schritte nötig:

  1. Starten Sie YaST über [Alt]+ [F2] und den Befehl kdesu yast2 und wählen Sie das Modul Software / Software installieren oder löschen.
  2. Stellen Sie den Filter auf Selektionen (bis Suse Linux 10.1) bzw. Schemata (ab OpenSuse 10.2) und markieren Sie den Eintrag Linux-Kernel-Entwicklung (10.1) bzw. Kernel-Entwicklung (10.2).
  3. Klicken Sie auf Übernehmen, um die Installation durchzuführen.

Benutzer von Ubuntu installieren über den Paketmanager oder per apt-get install die Pakete linux-headers-Kernelversion und build-essential. Die passende Kernelversion verrät Ihnen die Ausgabe des Befehls uname -r in einem Terminalfenster.

Unter Mandriva Linux müssen Sie folgende Vorbereitungen treffen:

  1. Starten Sie die Paketverwaltung über System / Einstellungen / Paketverwaltung / Install, Remove & Update Software.
  2. Wählen Sie den Menüpunkt Betrachten installierbarer Software und installieren von Softwarepaketen.
  3. Finden Sie über die Suchfunktion die Pakete kernel-source-stripped und wireless-tools und markieren Sie diese zur Installation.
  4. Klicken Sie auf Anwenden und beantworten Sie Fragen zu Abhängigkeiten jeweils mit Ja.

Treiber installieren

Um ein Kernelmodul von Hand zu bauen, sind einige Arbeitsschritte auf der Konsole nötig. EasyLinux hat deshalb ein Skript geschrieben, das Ihnen diese Arbeit abnimmt. Sie finden es zusammen mit dem Treiber auf der Service-Kit-DVD im Verzeichnis heft-cd/wlan.

  1. Kopieren Sie die Datei rt73-treiber.tar.gz von der Heft-DVD aus dem Verzeichnis heft-cd/wlan in Ihr Home-Verzeichnis.
  2. Klicken Sie in Konqueror mit der rechten Maustaste auf die Datei rt73-treiber.tar.gz und wählen Sie Entpacken / Hier entpacken.
  3. Öffnen Sie in Konqueror das neue Verzeichnis rt73-treiber und drücken Sie die Taste [F4]. KDE öffnet ein Terminalfenster.
  4. Geben Sie im Terminalfenster den Befehl sh install.sh ein.

Das Skript überprüft in einem ersten Durchgang, ob die Kernelquellen und die nötigen Entwicklerwerkzeuge installiert sind. Es zeigt Ihnen dazu ein Hinweisfenster an (Abbildung 1).

Abbildung 1: Erscheint diese Meldung, sind alle Voraussetzungen für das Kompilieren des Kernelmoduls erfüllt.

Abbildung 1: Erscheint diese Meldung, sind alle Voraussetzungen für das Kompilieren des Kernelmoduls erfüllt.

Danach übersetzt es den Treiber. Dieser Vorgang dauert je nach Rechner fünf bis 20 Minuten. Verlief das Kompilieren erfolgreich, erscheint ein weiteres Fenster, das Sie auffordert, den USB-Stick an den Rechner anzuschließen (Abbildung 2). Falls der Adapter bereits mit dem Rechner verbunden ist, stecken Sie in einmal aus und wieder ein. Suse Linux zeigt dann an, dass es eine neue Hardware gefunden hat. Klicken Sie diese Fenster weg, ohne die Hardware einzurichten. Bei den übrigen Distributionen erscheinen keine solchen Fenster.

Abbildung 2: Warten Sie mit dem Anschließen des USB-Sticks, bis dieses Fenster erscheint.

Abbildung 2: Warten Sie mit dem Anschließen des USB-Sticks, bis dieses Fenster erscheint.

Im letzten Schritt aktiviert das Skript die Netzwerkschnittstelle des WLAN-Adapters und sucht nach Funknetzen. Das Resultat zeigt es wiederum in einem Fenster (Abbildung 3).

Abbildung 3: Verlief die Installation erfolgreich, zeigt Ihnen das Skript die gefundenen WLAN-Netze.

Abbildung 3: Verlief die Installation erfolgreich, zeigt Ihnen das Skript die gefundenen WLAN-Netze.

Windows-Treiber nutzen

Für zwei der acht getesteten Adapter (siehe Tabelle “Testgeräte im Überblick”) gibt es zurzeit keine Linux-Treiber. Diese lassen sich aber mit Hilfe des Ndiswrappers über den Windows-Treiber in Betrieb nehmen. Am einfachsten funktioniert das unter Mandriva Linux:

  1. Schließen Sie den USB-Stick an den Rechner an.
  2. Starten Sie das Mandriva-Kontrollzentrum und wählen Sie Netzwerk & Internet / Eine Netzwerkschnittstelle erstellen (LAN, ISDN, ADSL).
  3. Klicken Sie im neuen Fenster auf Wireless und Weiter. Es erscheint das Dialogfenster Neue Verbindung.
  4. Markieren Sie die Option Verwende einen Windows-Treiber, falls diese nicht bereits aktiv ist, und klicken Sie auf Weiter.

Mandriva Linux installiert nun die benötigte Software und öffnet anschließend das Fenster Wählen Sie einen Windows-Treiber. Legen Sie dann die Treiber-CD in das Laufwerk ein und wählen Sie die passende .inf-Datei aus dem Hauptverzeichnis der CD aus. Beim AVM-Stick heißt die Datei fwlan.inf, für den Netgear-Stick wählen Sie netwg11t.inf aus.

Benutzer von Suse Linux und Ubuntu müssen zunächst das Paket ndiswrapper über den Paketmanager nachinstallieren. Danach legen Sie die Windows-Treiber-CD ins Laufwerk ein und öffnen sie in Konqueror. Hier drücken Sie [F4], um eine Konsole zu starten, und führen dann folgende Schritte durch:

  1. Geben Sie den Befehl sudo su ein, um die Rechte des Administrators zu übernehmen. Unter Suse Linux müssen Sie dazu das Root-Passwort eingeben, bei Ubuntu Ihr Benutzerpasswort.
  2. Installieren Sie den Treiber über den Befehl ndiswrapper -i Treiber.inf. Anstelle von Treiber.inf geben Sie die zugehörige .inf-Datei an.
  3. Laden Sie nun den Treiber über den Befehl modprobe ndiswrapper und schließen Sie danach den WLAN-Stick an die USB-Schnittstelle an.
  4. Geben Sie den Befehl iwconfig ein. Verlief die Installation erfolgreich, zeigt die Ausgabe ein WLAN-Gerät wlan0 an.

Verbindung herstellen

Die EasyLinux-Distributionen bringen inzwischen grafische Programme mit, die den Verbindungsaufbau per WLAN weitgehend automatisieren. Wenn möglich sollten Sie deshalb für den Kontakt zum Access Point die im Artikel “Moderne Dauerwellen” beschriebenen Tools verwenden. In einigen Fällen lässt sich jedoch der Einsatz der Kommandozeile nicht vermeiden.

  1. Öffnen Sie über [Alt]+ [F2] und den Befehl kdesu konsole ein KDE-Terminal mit Administratorrechten. Unter Suse und Mandriva Linux geben Sie dazu das Root-Passwort ein, Benutzer von Ubuntu das Benutzerpasswort.
  2. Geben Sie den Befehl iwconfig ein. Er listet Ihnen die gefundenen WLAN-Adapter auf. Bei USB-Sticks mit einem Ralink-Chipsatz lautet die entsprechende Schnittstelle rausb0; benutzen Sie den Ndiswrapper, heißt sie wlan0. Der Artikel beschreibt im Folgenden das Vorgehen für die Schnittstelle rausb0. Zeigt der Befehl kein WLAN-Gerät an, gibt es Probleme mit dem Treiber.
  3. Aktivieren Sie das gefundene Gerät über den Befehl ifconfig rausb0 up
  4. Suchen Sie mit dem Befehl iwlist rausb0 scan nach WLAN-Netzen. Die Ausgabe eines iwlist-Befehls zeigt der Kasten “Scanresultat”. Notieren Sie sich die ESSID und die 12-stellige Nummer hinter Address.
  5. Führen Sie den Befehl iwconfig rausb0 essid ESSID ap Adresse aus. Anstelle von ESSID setzen Sie dabei die Netzwerk-ID Ihres WLAN-Netzes ein, für Adresse schreiben Sie den zwölfstelligen Wert hinter Address, zum Beispiel

    iwconfig rausb0 essid EasyLinux ap 00:13:46:1D:57:88
  6. Benutzen Sie WEP-Verschlüsselung, müssen Sie den entsprechenden Key setzen. Geben Sie dazu den Befehl iwconfig rausb0 enc Schlüssel ein. Schlüssel ersetzen Sie dabei durch den 64-stelligen HEX-Key. Die Ausgabe von iwconfig zeigt danach hinter Encryption den passenden Schlüssel an. Wenn Sie keine Verschlüsselung benutzen (nur zu Testzwecken empfohlen), können Sie diesen Schritt überspringen.
  7. Geben Sie nun den Befehl dhclient rausb0 ein. Er fordert beim Access Point per DHCP eine IP-Adresse an. Hat alles geklappt, zeigt ifconfig rausb0 an, welche IP-Adresse Ihr Rechner bekommen hat.

Scanresultat

rausb0      Scan completed :
          Cell 01 - Address: 00:13:46:1D:57:88
                    ESSID:"EasyLinux"
                    Protocol:IEEE 802.11bg
                    Mode:Master
                    Channel:6
                    Encryption key:off
                    Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 11 Mb/s; 6 Mb/s
                              12 Mb/s; 24 Mb/s; 36 Mb/s
                    Quality:61  Signal level:0  Noise level:0
                    Extra: Last beacon: 124ms ago

Aber sicher

WLAN-Netze haben einen Nachteil: Sie lassen sich schlecht überwachen. Aus Sicherheitsgründen sollten Sie Ihr Funknetz deshalb mit WPA oder WPA2 verschlüsseln. Versuche, das drahtlose Netz per WEP-Key, mit einer versteckten ESSID oder einer Kontrolle der MAC-Adresse abzuschirmen, halten vielleicht den neugierigen Nachbarn vom eigenen WLAN-Netz fern, gegen einen professionell geführten Einbruch bieten sie aber keinen ausreichenden Schutz. Wer sein Funknetz täglich länger als eine Stunde betreibt, sollte unbedingt eine WPA-Verschlüsselung benutzen. Der Artikel erklärt im Folgenden, wie Sie die WPA-PSK-Verschlüsselung einrichten.

Bei WPA handelt es sich um eine Erweiterung der WEP-Verschlüsselung. Um zu verhindern, dass ein Cracker einen WEP-Schlüssel knackt, tauscht ein spezielles Programm in regelmäßigen Abständen neue Schlüssel aus. Dem Einbrecher bleibt somit keine Zeit, den Schlüssel herauszufinden. Unter Linux ist das Tool wpa_supplicant für den Schlüsselaustausch verantwortlich. Die Ralink-Adapter arbeiten allerdings nicht mit wpa_supplicant zusammen. Hier lässt sich die WPA-Verschlüsselung nur per Skript einrichten. Ein Beispiel zeigt der Kasten “Alternative iwpriv”.

Eine häufige Fehlerquelle beim Einrichten der WPA-Verschlüsselung stellt die Passphrase dar. Die sicherste Methode ist, diese auf dem Linux-Rechner über den Befehl

wpa_passphrase ESSID

zu erstellen. Anstelle von ESSID müssen Sie dazu die ESSID des Funknetzes angeben, zum Beispiel wpa_passphrase EasyLinux. Danach tippen Sie das gewünschte Passwort ein und bestätigen die Eingabe. Das Programm erstellt nun einen 64-stelligen HEX-Schlüssel. Diesen richten Sie in der Weboberfläche des Routers als WPA-PSK-Schlüssel ein. Nur so ist garantiert, dass der Networkmanager bei der Eingabe des Passworts den richtigen HEX-Schlüssel übermittelt.

Unter Suse Linux können Sie die Konfiguration des WLAN-Adapters mit YaST oder mit dem Netzwerkmanager vornehmen. Wechseln Sie häufig den Standort, benutzen Sie besser den Netzwerkmanager. Dies gilt auch für Ubuntu und Mandriva Linux. Der Text beschreibt im Folgenden, wie Sie unter Suse Linux die WPA-Verschlüsselung mit YaST einrichten.

  1. Starten Sie YaST über [Alt]+ [F2] und den Befehl kdesu yast2 und öffnen Sie das Modul Netzwerkgeräte / Netzwerkkarten.
  2. Wählen Sie als Netzwerkeinrichtungsmethode die traditionelle Methode mit ifup.
  3. Klicken Sie auf Hinzufügen und ändern Sie im neuen Dialog den Gerätetyp von ethernet auf drahtlos. Markieren Sie zudem die Checkbox USB.
  4. Klicken Sie im folgenden Dialog auf Weiter, um die Adressvergabe per DHCP zu übernehmen.
  5. Nach einem Klick auf Weiter stellen Sie die ESSID und die Verschlüsselung ein. Wählen Sie als Authentifizierungsmodus WPA-PSK. Den Schlüssel tragen Sie entweder im Klartext oder als HEX-Key ein (Abbildung 4).

Bei einigen Adaptern erkennt YaST nicht, dass es sich dabei um WLAN-Geräte handelt. Hier müssen Sie den Typ manuell von Ethernet auf Drahtlos umstellen. Die Warnmeldung von YaST können Sie ignorieren. YaST baut nun beim Booten automatisch eine Verbindung mit dem WLAN-Netz auf. Ob die WPA-Verschlüsselung funktioniert, erkennen Sie an der Ausgabe des Befehls iwconfig: Sie zeigt hinter Encryption einen 128 Zeichen langen Schlüssel an, der sich in regelmäßigen Abständen ändert.

Abbildung 4: Unter Suse Linux können Sie WLAN-Geräte über YaST einrichten. Für die WPA-Verschlüsselung geben Sie dazu am besten den HEX-Schlüssel an.

Abbildung 4: Unter Suse Linux können Sie WLAN-Geräte über YaST einrichten. Für die WPA-Verschlüsselung geben Sie dazu am besten den HEX-Schlüssel an.

Alternative iwpriv

Der WPA-Supplicant unterstützt nicht alle WLAN-Geräte, unter anderem fehlt der Support für Ralink-Geräte. Bei den aktuellen Treibern ist dies kein Problem, da sie WPA von Haus aus unterstützen. Ist der Schlüssel einmal gesetzt, erfolgt der Austausch automatisch. Der Nachteil dieser Lösung besteht darin, dass sie nicht mit dem Networkmanager funktioniert. Bei Ralink-Geräten müssen Sie somit auf das bequeme Frontend verzichten.

  1. Legen Sie eine neue Datei mit folgendem Inhalt an. Die Einträge ESSID und HEX-KEY müssen Sie dabei durch Ihre eigene ESSID und den WPA-Schlüssel im HEX-Format ersetzen:

    #!/bin/bash
    IFACE=rausb0
    ifconfig $IFACE up
    iwconfig $IFACE mode managed
    iwpriv $IFACE set AuthMode=WPAPSK
    iwpriv $IFACE set EncrypType=TKIP
    iwconfig $IFACE essid ESSID
    iwpriv $IFACE set WPAPSK=HEX-KEY
    iwconfig $IFACE essid ESSID
    dhclient $IFACE
  2. Speichern Sie die Datei unter dem Namen wlan-start.sh in Ihrem Home-Verzeichnis.
  3. Klicken Sie in Konqueror mit der rechten Maustaste auf die Datei, wählen Sie Eigenschaften / Berechtigungen und markieren Sie die Checkbox Ausführbar.
  4. Öffnen Sie über [Alt]+ [F2] und den Befehl kdesu konsole ein KDE-Terminal mit Administratorrechten und geben Sie folgenden Befehl ein

    sh wlan-start.sh

Beispiele für WPA2-Verschlüsselung und andere Methoden finden Sie im Quellcode der Ralink-Treiber in der Datei rt73-treiber/Module/iwpriv_usage.txt.

Glossar

Firmware

Mini-Betriebssystem, das die Grundfunktion von Hardwarekomponenten zur Verfügung stellt.

Infos

[1] EasyLinux-Mailingliste: http://www.easylinux.de/Kontakt/Mailinglisten/

[2] Ralink-Treiber: http://rt2x00.serialmonkey.com

[3] Marcel Hilzinger, “G-Schwindigkeit – 18 WLAN-Adapter im Test”: LinuxUser 03/2007, S. 30f.

EasyLinux 02/2007 KAUFEN
EINZELNE AUSGABE
ABONNEMENTS
TABLET & SMARTPHONE APPS
E-Mail Benachrichtigung
Benachrichtige mich zu:

Hinweis: Dieser Artikel ist älter als ein Jahr, enthaltene Informationen sind möglicherweise veraltet.

0 Kommentare
Älteste
Neuste Beste Bewertung
Inline Feedbacks
Alle Kommentare anzeigen
Nach oben