Wpa supplicant

Aus Fedorawiki.de

Wechseln zu: Navigation, Suche


Der wpa_supplicant stellt für verschiedene Treiber oder deren Erweiterungen die sichere Verschlüsselung per WPA-PSK (Pre-Shared Key) oder WPA2 (WPA Enterprise) zur Verfügung.

Anmerkung Anmerkung: In der Praxis wurde die Funktionsfähigkeit dieses Verfahrens auf einem Notebook mit Intel PRO Wireless 2200B/G (Centrino) getestet.


Inhaltsverzeichnis

Installation

Die aktuelle Version von Wpa supplicant steht im Repository von Fedora bereit und kann per

[root]# yum install wpa_supplicant

installiert werden. Frühere Versionen von Fedora enthalten u.U. auch ältere Versionen des wpa_supplicant. Die Einrichtung erfolgt dennoch analog zu dem hier beschriebenen Verfahren.

Der wpa_supplicant arbeitet mit folgenden Treibern zusammen:

  • Linux Wireless Extensions v19 oder neuer
  • Host AP Treiber für Prism2/2.5/3
  • Linuxant DriverLoader mit Windows NDIS Treibern
  • Agere Linux Treiber für Hermes-I/Hermes-II Chipsätze (hier jedoch nur für WPA)
  • MADWiFi (Treiber für Atheros Karten)
  • ATMEL AT76C5XXx
  • Broadcom Wireless Treiber
  • Intel ipw2100 und ipw2200 (ipw3945 wird partiell unterstützt *)
  • Linux Ethernet Treiber (für kabelgebundene Netzwerke)
  • Windows 2000/XP NDIS Treiber mit ndiswrapper

Prinzipiell funktioniert der wpa_supplicant zusammen mit jedem Wireless LAN-Treiber, welcher die Wireless Extensions zur Kommunikation mit dem Kernel nutzt.

* wie man dem ipw3945 beibringen kann mit dem wpa_supplicant zusammenzuarbeiten, kann man in diesem Tutorial nachlesen.

Einrichtung

Um den wpa_supplicant nutzen zu können, muss man dessen Konfigurationsdatei /etc/wpa_supplicant/wpa_supplicant.conf manuell editieren. Für das Editieren sind root-Rechte erforderlich. Im folgenden werden die wichtigsten Parameter für die gängigsten Konfigurationen erläutert.

  • ctrl_interface=/var/run/wpa_supplicant konfiguriert das Interface für die Netzwerkverbindung
  • ap_scan=1 konfiguriert die Art der Authentifizierung mit dem Access Point. Mögliche Werte sind 0, 1 oder 2. (Standard: 1)

Die eigentlichen Parameter für die Verschlüsselung eines Netzwerks werden in einem Block zusammengefasst. Prinzipiell notwendig sind nur die fettgeruckten Parameter, alle weiteren könenn bei Bedarf angegeben werden.

Beispielkonfiguration mit WPA mit TKIP

network={
    ssid="SSID"
    bssid=00:00:00:00:00:00
    scan_ssid=1
    mode=0
    key_mgmt=WPA-PSK
    proto=WPA
    auth_alg=OPEN
    pairwise=TKIP
    psk="GeheimePassphrase"
}

Beispielkonfiguration mit WEP-Key im Klartext

network={
    ssid="SSID2"
    bssid=00:00:00:00:00:00
    mode=0
    key_mgmt=NONE
    wep_key0="Passphrase"
    wep_tx_keyidx=0
}

Beispielkonfiguration mit hexadezimalem WEP-Key

network={
    ssid="SSID3"
    bssid=00:00:00:00:00:00
    mode=0
    key_mgmt=NONE
    wep_key0=ABCDEF1234567890
    wep_tx_keyidx=0
}

Beispiel für WLAN ohne Verschlüsselung

network={
   ssid="SSID4"
   bssid=00:00:00:00:00:00
   mode=0
   key_mgmt=NONE
}


Die Datei wpa_supplicant.conf kann mehrere solcher network-Blöcke gleichzeitig enthalten. Dies ist zum Beispiel dann nützlich, wenn man häufig zwischen verschiedenen Wireless-Netzen wechselt. Dieses Verfahren macht im Allgemeinen den Einsatz des NetworkManagers unnötig.

  • ssid - enhält den Namen des Funknetzwerks
  • bssid - die MAC-Adresse des Access Points bzw. WLAN-Routers kommt hierein
  • mode - konfiguriert die Art der Funkverbindung (0 = Infrastruktur, 1 = Ad-Hoc)
  • key_mgmt - konfiguriert die Art des Schlüsselmanagements (z. Bsp. WPA-PSK)
  • proto - enhält, welche Protokolle zur Verschlüsselung akzeptiert werden (Standard: WPA)
  • auth_alg - konfiguriert den IEEE802.11 Authentifitierungsalgorithmus (OPEN, SHARED, LEAP etc.)
  • pairwise - konfiguriert die Art der Verschlüsselung (CCMP, TKIP, WEP104, WEP40)
  • psk - enhält die vom Access Point und vom wpa_supplicant gemeinsam genutzte Passphrase.

Dies sind lediglich die grundlegenden Parameter, es gibt noch verschiedene weitere für unterschiedlichste Konfigurationen. Wer eine spezielle Art der Verschlüsselung nutzen möchte oder Hintergrundinformationen benötigt, findet diese in der Bespielkonfiguration auf der Homepage des Projekts.

Benutzung

Um den wpa_supplicant zu starten, gibt man folgenden Befehl auf der Kommandozeile ein:

[root]# /usr/sbin/wpa_supplicant -B -D wext -i eth1 -c /etc/wpa_supplicant/wpa_supplicant.conf

Dieser Befehl würde den wpa_supplicant als Hintergrunddienst (Option -B) mit dem Interface eth1 und den Linux Wireless Extensions (Option -D wext ) starten. Die WPA-Konfiguration wird hierbei aus der Datei /etc/wpa_supplicant/wpa_supplicant.conf geholt.

Um den wpa_supplicant korrekt als Dienst zu starten, ist ein wenig "Feintuning" angesagt. Hierzu muss die Datei /etc/sysconfig/wpa_supplicant editiert werden. Um für o.g. Beispiel mit dem Interface eth1 und den Wireless Extensions den Dienst möglich zu machen, fügt man folgende Zeilen in die Datei ein.

INTERFACES="-ieth1"
DRIVERS="-Dwext"

Die Wireless Extensions werden von den meisten Treibern in Verbindung mit dem wpa_supplicant genutzt, mittlerweile sogar vom ndiswrapper.

Nutzt man beispielsweise Atheros Karten, müssten die Zeilen wie folgt aussehen.

INTERFACES="-iath0"
DRIVERS="-Dmadwifi"

Auf neueren System (Fedora 9) kann man hier ebenfalls "-Dwext" als DRIVER angeben. Eventuell andere konfigurierte Treiber oder Geräte sollte man in dieser Datei auskommentieren.

wpa_supplicant automatisch starten

Damit der wpa_supplicant Dienst automatisch startet, gibt man folgendes als root Benutzer ein:

[root]# /sbin/chkconfig --level 2345 wpa_supplicant on


Es gibt eine einfache grafische Oberfläche zur Konfiguration des wpa_supplicant, das wpa_gui. Dieses Paket ist über das Fedora Extras-Repository erhältlich. Man kann es per

[root]# yum install wpa_supplicant-gui

installieren.

Siehe auch

Links

Persönliche Werkzeuge