Standardmässig verschlüsselt man heutzutage sein WLAN mit WPA2 PSK. Mit wpa_supplicant kann man sich an diesem WLAN authentifizieren. Die Konfigurationsdatei dafür wird mit wpa_passphrase generiert.
WLAN Netzwerk finden
Zuerst wird das WLAN-Interface aktiviert (in meinem Fall heisst das Interface wlan0):
Dann scannt man nach verfügbaren Netzwerken:
wlan0 Scan completed :
Cell 01 - Address: 00:19:CB:03:E7:6A
Channel:6
Frequency:2.437 GHz (Channel 6)
Quality=60/70 Signal level=-50 dBm
Encryption key:on
ESSID:"discordia"
Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 6 Mb/s; 9 Mb/s
11 Mb/s; 12 Mb/s; 18 Mb/s
Bit Rates:24 Mb/s; 36 Mb/s; 48 Mb/s; 54 Mb/s
Mode:Master
[...]
IE: IEEE 802.11i/WPA2 Version 1
Group Cipher : CCMP
Pairwise Ciphers (1) : CCMP
Authentication Suites (1) : PSK
[...]
[...]
Wir sehen, das WLAN mit der ESSID discordia ist 802.11i/WPA2 Version 1 PSK verschlüsselt.
Konfiguration generieren
Mit wpa_passphrase kann man die Konfigurationsdatei generieren. Falls man das Passwort nicht als zweiten Parameter angibt, liest wpa_passphrase von STDIN (Tastatureingabe). Am einfachsten schreibt man die Ausgabe direkt in eine Datei:
Nach der Eingabe vom Passwort kann man sich die Konfigurationsdatei anschauen:
# reading passphrase from stdin
network={
ssid="discordia"
#psk="meinpasswort"
psk=129ffd04eefcce833590d91d88b00497584d3feb3d5fd05bc36218b301b978e0
}
Die Kommentar-Zeilen kann man löschen. Diese werden von wpa_supplicant ignoriert. Vor allem das Passwort in Klartext sollte entfernt werden.
Mit dem Netzwerk verbinden
Um wpa_supplicant zu testen, startet man wpa_supplicant im Debugging-Modus:
Falls die Verbindung erfolgreich zustande kam, sieht mal folgende Meldung:
EAPOL authentication completed successfully
[...]
Mit Ctrl-C beendet man die Verbindung.
Funktioniert die Verbindung, kann man wpa_supplicant im Hintergrund als Daemon laufen lassen:
Mit ps sieht man gut, dass der wpa_supplicant im Hintergrund läuft:
root 20405 1 0 16:59 ? 00:00:00 wpa_supplicant -i wlan0 -c /etc/wpa_supplicant.conf.discordia -B
Das Tool iwconfig zeigt einem die Verbindung an:
wlan0 IEEE 802.11abgn ESSID:"discordia"
Mode:Managed Frequency:2.437 GHz Access Point: 00:19:CB:03:E7:6A
Bit Rate=54 Mb/s Tx-Power=15 dBm
Retry long limit:7 RTS thr:off Fragment thr:off
Power Management:off
Link Quality=49/70 Signal level=-61 dBm
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:1 Invalid misc:30 Missed beacon:0
Netzwerk konfigurieren
Jetzt hat man sich aber erst gegenüger dem Accespoint authentifiziert. Eine Netzwerkkonfiguration vom Interface wlan0 ist noch nicht vorhanden. Mit dhclient kann man sich von einem DHCP-Server die Konfiguration holen:
Internet Systems Consortium DHCP Client 4.2.3-P2
Copyright 2004-2012 Internet Systems Consortium.
All rights reserved.
For info, please visit https://www.isc.org/software/dhcp/
Listening on LPF/wlan0/58:94:6b:e9:fd:78
Sending on LPF/wlan0/58:94:6b:e9:fd:78
Sending on Socket/fallback
DHCPREQUEST on wlan0 to 255.255.255.255 port 67
DHCPACK from 10.0.0.20
bound to 10.0.0.23 -- renewal in 34113 seconds.
Die Verbindung ins Internet steht:
PING google.ch (173.194.35.24) 56(84) bytes of data.
64 bytes from mil01s16-in-f24.1e100.net (173.194.35.24): icmp_req=1 ttl=56 time=29.3 ms
64 bytes from mil01s16-in-f24.1e100.net (173.194.35.24): icmp_req=2 ttl=56 time=30.1 ms
64 bytes from mil01s16-in-f24.1e100.net (173.194.35.24): icmp_req=3 ttl=56 time=28.2 ms
--- google.ch ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2002ms
rtt min/avg/max/mdev = 28.252/29.265/30.199/0.821 ms
Die Netzwerkkonfiguration kann man natürlich auch manuell ohne DHCP herstellen.
Verbindung beenden
Wenn man die Verbindung trennen will, kann man den wpa_supplicant beenden:
Links und weitere Informationen
- Manpage: ifconfig(8)
- Manpage: iwconfig(8)
- Manpage: iwlist(8)
- Manpage: wpa_passphrase:(8)
- Manpage: wpa_supplicant(8)
- Manpage: dhclient(8)
Hej Mänu
Merci vell mol för di Biitrag. Ech ha bishär die Netzwärk manuell hinzuegfüegt, aber so esch das notürlich eleganter 🙂 Interessant wär ez no, wiemers fertig brengt, dass s wlan automatisch zwösche de bekannte Netzwärch umschaltet. Das hani leider nonig änebrocht.
lg büsche
Hey Büsche
Scho recht. Wie hesch das (e)manuel(l) 😉 gmacht? Über ‘/etc/network/interfaces’ unter Debian?
Unter ArchLinux chasch mit net-auto-wireless und wpa_actiond automatisch mit de verfüegbare WLANs la verbinde. Unter Debian isch vellecht das hilfriich: http://forums.debian.net/viewtopic.php?t=27573
lg
Mänu