Wie bereits beschrieben, muß zuerst einmal sichergestellt werden, daß Netzwerkverbindungen bestehen - sei es über ein angeschlossenes Netzwerkkabel oder ein verfügbares WLAN. Dies soll in diesem Abschnitt beschrieben werden.
Benutzer von Ubuntu 6.06 LTS sollten den zusätzlichen Abschnitt Anpassungen unter Ubuntu " > beachten, da der wpasupplicant in dieser Version nicht mehr automatisch beim Hochfahren des Systems geladen wird und einige Konfigurationsdateien nicht mehr verfügbar sind. Entsprechende Schablonen der nötigen Dateien finden sich im Anhang. Entsprechendes gilt möglicherweise auch für das aktuelle Paket in Debian etch. Wer Ubuntu 5.10 oder Debian sarge verwendet, kann diesen zusätzlichen Abschnitt aber in jedem Fall überspringen.
HINWEIS: Anwender von Ubuntu 5.10 oder Debian sarge können diesen Abschnitt überspringen.
Leider wird unter dapper der wpasupplicant nicht mehr automatisch beim Hochfahren des Systems geladen. Daher müssen wir dies wieder per Hand einrichten. Entsprechende Beispieldateien sind im Anhang zu finden (siehe wpasupplicant unter Ubuntu 6.06). Diese Dateien können nach der Installation von wpasupplicant als Vorlage in die angegebenen Ordner kopiert werden. Wer vorher breezy installiert hatte, findet die alten Konfigurationsdateien möglicherweise noch auf seiner Festplatte (*.dpkg-old in den entsprechenden Ordnern) und kann diese durch einfaches Umbenennen wiederherstellen. ACHTUNG: In diesem Fall muß in der Datei /etc/init.d/wpasupplicant eine Zeile angepaßt werden:
DAEMON=/sbin/wpa_supplicant
da der Befehl nach /sbin verschoben wurde.
Ebenfalls nicht vergessen darf man das Anlegen der entsprechenden Symlinks in den /etc/rc*.d Ordnern, da ansonsten kein Autostart erfolgt. Der ifplugd befindet sich in der Startgruppe 20. Idealerweise startet man wpasupplicant davor.
Zum Bearbeiten dieser Symlinks gibt es neben "update-rc.d" auch noch einige grafische Programme wie z.B. "ksysv" für KDE oder das sehr einfach gestrickte Konsolenprogramm "rcconf", dessen Möglichkeiten aber sehr begrenzt sind. Dafür dürften mit rcconf auch Anfänger gut zurechtkommen.
Alles weitere erfolgt analog zum nächsten Abschnitt.
Hierzu müssen wir zuerst einmal den wpasupplicant installieren. Dieser ist zum Glück via APT verfügbar:
(sudo) apt-get install wpasupplicant
Als nächstes müssen wir die verfügbaren WLAN-Verbindungen konfigurieren. Dazu öffnen wir die Datei
/etc/wpa_supplicant.conf
Der Aufbau der Datei ist denkbar einfach: Einige globale Optionen werden am Anfang festgelegt. Die einzelnen Netzwerke werden in den Abschnitten network={ ... } konfiguriert.
Sinnvollerweise legt man einfach für jedes bekannte WLAN einen solchen Abschnitt an, z.B. für ein unverschlüsseltes WLAN
network={
ssid="WIDEOPEN"
key_mgmt=NONE
}
oder für eines mit WEP-Verschlüsselung:
network={
ssid="WEPCRYPT"
key_mgmt=NONE
wep_key0=1234567890ABCDEF1234567890
wep_tx_keyidx=0
priority=5
scan_ssid=1
}
Der Parameter priority legt fest, welches Netzwerk bevorzugt genutzt werden soll, sofern mehrere vorhanden sind. Umso höher die Zahl, desto höher die Priorität.
Der Parameter scan_ssid ist dann nötig, wenn der Accesspoint auf einen ESSID Broadcast verzichtet.
wpasupplicant trägt nicht umsonst "WPA" im Namen. Tatsächlich beherrscht es auch Verbindungen mit WPA und WPA2. Für WPA-PSK/TKIP sieht das z.B. so aus:
network={
ssid="WPACRYPT"
key_mgmt=WPA-PSK
proto=WPA
pairwise=TKIP
group=TKIP
psk="secret passphrase"
}
Daneben ist noch eine Reihe weiterer Optionen verfügbar. Eine detaillierte Beschreibung der WLAN-Verschlüsselung und insbesondere WPA würde den Rahmen dieses Howtos sprengen. Nähere Details finden sich z.B. in den Manpages oder direkt auf der Internetseite http://hostap.epitest.fi/wpa_supplicant/. Am Ende dieser Internetseite befindet sich auch eine Reihe von Beispielkonfigurationen. Wer also WPA-EAP (z.B. mit RADIUS-Server) verwenden will, findet dort weitere Informationen.
Die nächste Datei, die wir uns vornehmen müssen, ist
/etc/default/wpasupplicant
Dort müssen zwei Zeilen angepaßt werden:
ENABLED=1 OPTIONS="-i wlan0 -D hostap -c /etc/wpa_supplicant.conf -w"
Die erste Zeile ist wohl selbsterklärend. In der zweiten Zeile gilt folgendes:
Man sollte bedenken, daß man zur Automatisierung hier zwangsläufig Schlüssel für die verschlüsselten WLANs abspeichern muß. Daher sollte man zur Sicherheit wenigstens die Zugriffsrechte für die Datei wpa_supplicant.conf auf ein Minimum einschränken:
(sudo) chmod 640 /etc/wpa_supplicant.conf
Ist soweit alles konfiguriert, kann es losgehen. Zuerst starten wir den wpasupplicant via init-Skript:
(sudo) /etc/init.d/wpasupplicant start
Nun können wir mittels
(sudo) wpa_cli
testen, was wpasupplicant im Hintergrund macht. Mit dem Befehl "status" erhalten wir nähere Informationen zum Status der Verbindung. Sollte ein bekannter Accesspoint in Reichweite sein, sollten hier dessen SSID, BSSID und Daten zur verwendeten Verschlüsselung erscheinen.
Mit dem Befehl "quit" verlassen wir die Anwendung wieder.
Dies ist der deutlich einfachere Teil.
(sudo) apt-get install ifplugd
installiert den ifplugd. Eine weitere Anpassung der Konfiguration ist hier nicht nötig. Der ifplugd reagiert auf "Link beats". Dieses Ereignis wird z.B. ausgelöst, wenn ein Netzwerkkabel eingesteckt wird (sofern es auch auf der anderen Seite angeschlossen ist, versteht sich).
Übrigens sollte man den ifplugd auch installieren, wenn man keine Netzwerkkabel verwendet. Das Aktivieren einer WLAN-Verbindung via wpasupplicant löst nämlich ebenfalls ein solches "Link beat" Ereignis aus.
Entdeckt der ifplugd nun eine aktive, physikalische Verbindung, fährt er die entsprechende Netzwerkschnittstelle mittels ifup hoch. ifup lädt dann die zugehörige Konfiguration, der wir uns im nächsten Abschnitt widmen werden.