Suche
Die Benutzung eines WPA-Clients ist unter Linux sehr stark von der eingesetzten
WLAN Hardware, deren Firmware-Version und den eingesetzten Treibern abhängig.
Da nicht jede einzelne Karte getestet werden kann hier gibt es hier beispielhaft
eine Anleitung.
Die getestete Karte ist eine Netgear MA401 (802.11b Prism Chipsatz). Die verwendeten
Treiber sind die Hostap Treiber [1]. Wir würden uns freuen über Erfolge
(und Misserfolge) von Tests und Versuchen mit anderen Karten und Treibern
zu hören um diese Anleitung erweitern und ausbauen zu können.
Falls die verwendete Distribution die Treiber anbietet, sollten diese mit dem
dafür vorgesehenen Programm installiert werden (z.B. SuSE Yast). Ist dies nicht
der Fall müssen die Treiber von [1] heruntergeladen und installiert werden. Es empfiehlt
sich die im Paket der Hostap-drivers enthaltene README Datei zu lesen und den
gegebenen Hinweisen zu folgen.
Nachdem die Treiber installiert sind, ist darauf zu achten das in /etc/pcmcia
auch die Verwendung der Hostap Treiber konfiguriert ist.
Beim Einschieben der Karte in den PCMCIA Schacht sollten in der /var/log/messages
Datei ähnliche Ausgaben zu lesen sein:
Nov 15 11:07:19 linux kernel: cs: pcmcia_socket0: voltage interrogation timed out.
Nov 15 11:07:20 linux kernel: cs: memory probe 0xa0000000-0xa0ffffff: clean.
Nov 15 11:07:20 linux kernel: hostap: no version for "struct_module" found: kernel tainted.
Nov 15 11:07:20 linux kernel: hostap_crypt: registered algorithm 'NULL'
Nov 15 11:07:20 linux kernel: hostap_cs: 0.2.4 - 2004-07-17 (Jouni Malinen <jkmaline@cc.hut.fi>)
Nov 15 11:07:20 linux kernel: hostap_cs: setting Vcc=33 (constant)
Nov 15 11:07:20 linux kernel: hostap_cs: CS_EVENT_CARD_INSERTION
Nov 15 11:07:20 linux kernel: hostap_cs: setting Vcc=50 (from config)
Nov 15 11:07:20 linux kernel: Checking CFTABLE_ENTRY 0x01 (default 0x01)
Nov 15 11:07:20 linux kernel: IO window settings: cfg->io.nwin=1 dflt.io.nwin=1
Nov 15 11:07:20 linux kernel: io->flags = 0x0046, io.base=0x0000, len=64
Nov 15 11:07:20 linux kernel: hostap_cs: Registered netdevice wifi0
Nov 15 11:07:20 linux kernel: hostap_cs: index 0x01: Vcc 5.0, irq 3, io 0x0100-0x013f
Nov 15 11:07:21 linux kernel: prism2_hw_init: initialized in 194 ms
Nov 15 11:07:21 linux kernel: wifi0: NIC: id=0x800c v1.0.0
Nov 15 11:07:21 linux kernel: wifi0: PRI: id=0x15 v1.1.1
Nov 15 11:07:21 linux kernel: wifi0: STA: id=0x1f v1.7.4
Nov 15 11:07:21 linux kernel: wifi0: registered netdevice wlan0
Es ist darauf zu achten das die STA: Firmware Version > v1.7.0 ist, wie hier: v1.7.4.
Jemand mit einer WLAN Karte, bei der das der Fall ist, hat Glück, wenn die Version
der Firmware jedoch kleiner ist, muss erst diese geupdated werden.
Das Flashen der Firmware einer WLAN Karte mit Intersil Prism Chipsatz ist einfacher
als man denkt. Benötigt wird dafür das Hostap-Utils Paktet. Unter [2] ist eine,
diesen Vorgang sehr gut beschreibende Anleitung, vorhanden.
Nachdem man sich den WPA Supplicanten von [3] heruntergeladen und nach der im
Paket enthaltenen README Datei installiert hat fehlt nur noch dessen Konfiguration
Konfiguration um das WLAN der FH zu benutzen.
Es wird davon ausgegange das sich das *.zip Archiv, welches nach der
Anmeldung im Home-Verzeichnis von Zeus bzw. Wotan abgelegt wurde sich
bereits auf dem Laptop befindet und entpackt wurde.
Es ist das Verzeichnis /etc/certs einzurichten in das die Zertifikate
abgelegt werden.
[ls -la /etc/certs]
insgesamt 24
drwxr-xr-x 2 root root 200 2004-10-22 11:23 .
drwxr-xr-x 83 root root 8272 2004-11-15 10:59 ..
lrwxrwxrwx 1 root root 8 2004-10-22 11:23 29b334bc.0 -> cert.pem
lrwxrwxrwx 1 root root 14 2004-10-22 11:23 8d1a3490.0 -> rootcacert.pem
-rw-r--r-- 1 root root 5981 2004-10-22 11:00 cert.pem
-rw-r--r-- 1 root root 1679 2004-10-22 10:59 private.key
-rw------- 1 root root 1403 2004-10-22 10:58 rootcacert.pem
Die Datei cert.pem enthält das Benutzerzertifikat und private.key den dazugehörigen
privaten Schlüssel des Zertifikates aus dem *.zip Archiv. Die Datei rootcacert.pem
enthält die Zertifikate der Root-CA und der Server-CA.
Die symbolischen Links werden vom WPA Supplicanten benötigt um die
richtigen Zertifikate zu finden. Mit dem Befehl c_rehash /etc/certs
werden diese erstellt.
ctrl_interface=/var/run/wpa_supplicant
ctrl_interface_group=wpagroup
# rechenzentrum wlan
network={
ssid="fhb-wlan"
scan_ssid=1
key_mgmt=WPA-EAP
pairwise=TKIP
group=TKIP
eap=TLS
identity="FHB-LOGIN"
ca_cert="/etc/certs/rootcacert.pem"
client_cert="/etc/certs/cert.pem"
private_key="/etc/certs/private.key"
private_key_passwd=""
}
Diese Datei kann so wie sie ist übernommen werden, es muss lediglich
die identity umgestellt werden auf das Login des Benutzers. Weiterhin
wird davon ausgegangen dass die Zertifikate aus dem *.zip Archiv
an den angegebenen Stellen liegen. Falls nicht müssen die Pfade angepasst
werden. Es muss eine Systembenutzergruppe wpagroup vorhanden sein.
Vor der Benutzung des wpa_supplicanten ist auf die Korrektheit der
Netzwerkeinstellungen zu achten.
# ifconfig wlan0
wlan0 Protokoll:Ethernet Hardware Adresse 00:09:5B:25:25:F5
inet Adresse:172.16.30.2 Bcast:172.16.31.255 Maske:255.255.240.0
inet6 Adresse: fe80::209:5bff:fe25:25f5/64 Gültigkeitsbereich:Verbindung
UP BROADCAST NOTRAILERS RUNNING MULTICAST MTU:1500 Metric:1
RX packets:160 errors:0 dropped:16 overruns:0 frame:0
TX packets:154 errors:0 dropped:0 overruns:0 carrier:0
Kollisionen:0 Sendewarteschlangenlänge:0
RX bytes:59482 (58.0 Kb) TX bytes:36319 (35.4 Kb)
Interrupt:3 Basisadresse:0x100
iwconfig wlan0
wlan0 IEEE 802.11b ESSID:"fhb-wlan" Nickname:"linux"
Mode:Managed Access Point: 00:01:F4:73:18:56 Bit Rate:11Mb/s
Sensitivity=1/3
Retry min limit:8 RTS thr:off Fragment thr:off
Encryption key:off
Power Management:off
Link Quality:41/70 Signal level:-52 dBm Noise level:-93 dBm
Rx invalid nwid:0 Rx invalid crypt:5 Rx invalid frag:0
Tx excessive retries:18 Invalid misc:26 Missed beacon:0
Im Falle das eine falsche SSID oder die Karte im falschen Modus ist
können folgende Befehle helfen um diesen Zustand abzustellen.
# ifconfig wlan0 down
# iwconfig wlan0 essid fhb-wlan
# iwconfig wlan0 mode Managed
# ifconfig wlan0 up
Die IP Adresse und anderen benötigten Netzwerkinformationen kommen
nach der Authentifizierung am WLAN per DHCP.
Ist nun alles korrekt installiert und konfiguriert kann der wpa_supplicant
gestartet werden.
wpa_supplicant starten
/usr/local/bin/wpa_supplicant -iwlan0 -c/etc/wpa_supplicant.conf
Trying to associate with 00:01:f4:73:18:56 (SSID='fhb-wlan' freq=2422 MHz)
WPA: Key negotiation completed with 00:01:f4:73:18:56
Aufgrund der Masse an Distributionen und unterschiedliche Art und Weise
wie diese ihre Bootscripte aufgebaut sind kann hier keine allgemeingültige
Anleitung gegeben werden. SuSE Benutzern sei die Verwendung des SCPM
(System Configuration Profile Manager) nahegelegt. Weiterhin empfiehlt es sich
ein Script zu schreiben welches beim Aufruf die WLAN Verbindung aufbaut.
Ein Script dieser Art könnte folgendermaßen aussehen:
wpa_start.sh
#!/bin/sh
export PATH=$PATH:/usr/local/bin
ifconfig wlan0 down
iwconfig wlan0 mode managed
iwconfig wlan0 essid fhb-wlan
ifconfig wlan0 up
wpa_supplicant -iwlan0 -c/etc/wpa_supplicant.conf &
dhcpcd wlan0
Aufgrund der Fülle an unterstützten Karten und möglichen Firmwareversionen
darauf und die unterschiedlichen Chipsätze hier nur eine Liste der
von wpa_supplicant unterstützten Treiber (und datzugehörigen Chipsätze):
wpa_supplicant unterstützte Treiber:
Hostap Driver für Prism2/2.5/3 Chipsätze (Station Firmware > 1.7.0)
Linuxant DriverLoader [4].
Agere Systems Inc. Linux Driver [5]
madwifi für Atheros Chipsätze [6]
ATMEL AT76C5XXx Treiber für USB und PCMCIA [7]
Linux ndiswrapper [8]
[1] Hostap Treiber und WPA Supplicant: http://hostap.epitest.fi
[2] Mini Howto on flashing Intersil Prism Chipsets: http://linux.junsun.net/intersil-prism/
[3] WPA Supplicant für Linux: http://hostap.epitest.fi/wpa_supplicant/
[4] Linuxant DriverLoader: http://www.linuxant.com/driverloader/
[5] Agere Systems Inc. Linux Treiber: http://www.agere.com/support/drivers/
[6] madwifi Treiber für Atheros: http://sourceforge.net/projects/madwifi/
[7] ATMEL WLAN Treiber: http://atmelwlandriver.sourceforge.net/
[8] Linux NDIS Wrapper: http://ndiswrapper.sourceforge.net/
© 2011 FHB Rechenzentrum letzte Aktualisierung: 06.05.2011 Autor: [Webadmin]


