Dynamisches WEP unter FreeBSD

DJF

/(bb|[^b]{2})/
Als ich heute wieder an die Uni bin war ich zuerst positiv überrascht, dass man sich entlich dazu durchgerungen hat die alte WEP Verschlüsselung abzuschaffen. Eigentlich erwartete ich WPA. War aber nicht der Fall. WEP PEAP, d.h. WEP mit dynamischer Schlüsselvergabe is natürlich viel besser.
Unter Linux übernimmt der xsupplicant die Authentifizierung u.s.w. Jedoch haben unsere Linuxer das Ding trotzdem noch nicht zum laufen gebracht. Anyway, Ich hab bisher nur hostapd für freeBSD gefunden. Aber das ist, soweit ich das sehe, nur für Accesspoints geeignet. Und der wpa_supplicant versteht nur WPA-PEAP.

Hat vielleicht jemand Erfahrung mit WEP-PEAP?
 
Zuletzt bearbeitet:
Zwischenbericht:

Hier zunächst ein interessanter thread:
http://lists.shmoo.com/pipermail/hostap/2004-September/007891.html

Hab ausserdem was in man make.conf (5) gefunden:
ENABLE_WPA_SUPPLICANT_EAPOL
(str) Build wpa_supplicant(8) with support for the IEEE
802.1X protocol and with support for EAP-PEAP, EAP-TLS,
EAP-LEAP, and EAP-TTLS protocols (usable only via 802.1X).
This option is ignored if NO_CRYPTO or NO_OPENSSL are con-
figured.

Wäre schön gewesen wenn man das im Voraus gewusst hätte. Hab jetzt ein
/usr/src/usr.sbin/wpa> make -DENABLE_WPA_SUPPLICANT_EAPOL
/usr/src/usr.sbin/wpa> make -DENABLE_WPA_SUPPLICANT_EAPOL install
durchlaufen lassen.

P.S.
ls /etc/rc.d/wpa_supplicant: no such file or directory. Ich mach mir langsam so meine Sorgen
 
Zuletzt bearbeitet:
Zuletzt bearbeitet:
Welche Uni ist das denn?

Wenn du die Konfiguration für EAP-PEAP testest, wie sieht der Debug aus?
Die wpa_supplicant.conf wäre auch hilfreich.
 
das kommt vom linux wpa_supplicant. Ich weiss nicht ob das unter Freebsd funktioniert. --> Schnellschuss

/etc/wpa_supplicant.conf

network={
ssid="some-ssid"
#? proto=RSN
key_mgmt=IEEE8021X
eap=PEAP
identity="DeineRadiusID"
password="DeineRadiusPasswd"
ca_cert="/etc/certs/cacert.pem"
phase1="peaplabel=0"
phase2="auth=MSCHAPV2"
}

oder eher sowas.

# IEEE 802.1X/EAPOL with dynamically generated WEP keys (i.e., no WPA) using
# EAP-TLS for authentication and key generation; require both unicast and
# broadcast WEP keys.
network={
ssid="1x-test"
key_mgmt=IEEE8021X
eap=TLS
identity="user@example.com"
ca_cert="/etc/cert/ca.pem"
client_cert="/etc/cert/user.pem"
private_key="/etc/cert/user.prv"
private_key_passwd="password"
eapol_flags=3
}

# LEAP with dynamic WEP keys
network={
ssid="leap-example"
key_mgmt=IEEE8021X
eap=LEAP
identity="user"
password="foobar"

aus der linux wpa_supplicant.conf.example
# key_mgmt: list of accepted authenticated key management protocols
# WPA-PSK = WPA pre-shared key (this requires 'psk' field)
# WPA-EAP = WPA using EAP authentication (this can use an external
# program, e.g., Xsupplicant, for IEEE 802.1X EAP Authentication
# IEEE8021X = IEEE 802.1X using EAP authentication and (optionally) dynamically
# generated WEP keys
 
Welche Uni das ist kann ich dir auch nicht sagen. Ich werde meine config und debug meldungen heute abend posten (hab schon verschiedene durchprobiert), wenn ich wieder zuhaus bin.

Je mehr ich über das ganze 802.1x, PEAP, WEP lese, desto merkwürdiger kommt es mir vor; Unter Linux gibt es den wpa_supplicant und den xsupplicant. Ich habe viele posts gelesen, wo nur der xsupplicant (erfolgreich) verwendet wurde. Unter http://open1x.sourceforge.net/ heisst es "This software allows a GNU/Linux or BSD workstation to authenticate with a RADIUS server using 802.1X and various EAP protocols" und weiter "BSD support is not yet complete". Andererseits heisst es unter http://geri.cc.fer.hr/~ivoras/web2/open1x.html "Support for wireless 802.1x is included in FreeBSD 6.0+ as wpa_supplicant system". Also ist wpa_supplicant unter BSD und Linux nicht das selbe? Oder wie sehe ich das?
 
Du wirstdoch wissen an welche Uni du gehst :)

Bei 6 und 7-current ist er im System drin. Bei Linux muss man ihn logischerweise einzeln bauen!
 
Achso, ich geh auf die HTA Luzern.


Code:
ctrl_interface=/var/run/wpa_supplicant
ctrl_interface_group=wheel
ap_scan=1

network={
        ssid="stud"
        key_mgmt=IEEE8021X
        eap=LEAP
        identity="login"
        password="passwort"
}

#wpa_supplicant -i wi0 -c /etc/wpa_supplicant.conf -dd
erzeugt

Code:
Initializing interface 'wi0' conf '/etc/wpa_supplicant.conf' driver 'default'
Configuration file '/etc/wpa_supplicant.conf' -> '/etc/wpa_supplicant.conf'
Reading configuration file '/etc/wpa_supplicant.conf'
ctrl_interface='/var/run/wpa_supplicant'
ctrl_interface_group=0 (from group name 'wheel')
ap_scan=1
Line: 6 - start of a new network block
ssid - hexdump_ascii(len=4):
     73 74 75 64                                       stud            
key_mgmt: 0x8
eap methods - hexdump(len=2): 11 00
identity - hexdump_ascii(len=11):
     FF FF FF FF FF FF                  login     
password - hexdump_ascii(len=5): [REMOVED]
Priority group 0
   id=0 ssid='stud'
Initializing interface (2) 'wi0'
EAPOL: SUPP_PAE entering state DISCONNECTED
EAPOL: KEY_RX entering state NO_KEY_RECEIVE
EAPOL: SUPP_BE entering state INITIALIZE
EAP: EAP entering state DISABLED
EAPOL: External notification - portEnabled=0
EAPOL: External notification - portValid=0
Own MAC address: 00:a0:c5:40:34:82
wpa_driver_bsd_set_wpa: enabled=1
wpa_driver_bsd_set_wpa_internal: wpa=3 privacy=1
wpa_driver_bsd_del_key: keyidx=0
wpa_driver_bsd_del_key: keyidx=1
wpa_driver_bsd_del_key: keyidx=2
wpa_driver_bsd_del_key: keyidx=3
wpa_driver_bsd_set_countermeasures: enabled=0
wpa_driver_bsd_set_drop_unencrypted: enabled=1
Setting scan request: 0 sec 100000 usec
Starting AP scan (broadcast SSID)
Association event - clear replay counter
Associated to a new BSS: BSSID=00:13:c4:8a:5e:24
No keys have been configured - skip key clearing
Associated with 00:13:c4:8a:5e:24
EAPOL: External notification - portEnabled=0
EAPOL: External notification - portValid=0
EAPOL: External notification - portEnabled=1
EAPOL: SUPP_PAE entering state CONNECTING
EAPOL: txStart
TX EAPOL - hexdump(len=18): 00 13 c4 8a 5e 24 00 a0 c5 40 34 82 88 8e 01 01 00 00
EAPOL: SUPP_BE entering state IDLE
EAP: EAP entering state INITIALIZE
EAP: EAP entering state IDLE
Setting authentication timeout: 10 sec 0 usec
EAPOL: Port Timers tick - authWhile=0 heldWhile=0 startWhen=29 idleWhile=59
EAPOL: Port Timers tick - authWhile=0 heldWhile=0 startWhen=28 idleWhile=58
EAPOL: Port Timers tick - authWhile=0 heldWhile=0 startWhen=27 idleWhile=57
EAPOL: Port Timers tick - authWhile=0 heldWhile=0 startWhen=26 idleWhile=56
EAPOL: Port Timers tick - authWhile=0 heldWhile=0 startWhen=25 idleWhile=55
EAPOL: Port Timers tick - authWhile=0 heldWhile=0 startWhen=24 idleWhile=54
EAPOL: Port Timers tick - authWhile=0 heldWhile=0 startWhen=23 idleWhile=53
EAPOL: Port Timers tick - authWhile=0 heldWhile=0 startWhen=22 idleWhile=52
EAPOL: Port Timers tick - authWhile=0 heldWhile=0 startWhen=21 idleWhile=51
EAPOL: Port Timers tick - authWhile=0 heldWhile=0 startWhen=20 idleWhile=50
Signal 2 received - terminating
wpa_driver_bsd_deauthenticate
No keys have been configured - skip key clearing
EAPOL: External notification - portEnabled=0
EAPOL: SUPP_PAE entering state DISCONNECTED
EAPOL: SUPP_BE entering state INITIALIZE
EAP: EAP entering state DISABLED
EAPOL: External notification - portValid=0

Eine andere config die ich probiert hab war

Code:
ctrl_interface=/var/run/wpa_supplicant
ctrl_interface_group=wheel
ap_scan=1

network={
        ssid="stud"
        scan_ssid=1
        key_mgmt=IEEE8021X
        eap=PEAP
        identity="login"
        password="passwort"
        ca_cert="/etc/ca.pem"
        eapol_flags=1
        phase1="peaplabel=0"
        phase2="auth=MSCHAPV2"
}

#wpa_supplicant -i wi0 -c /etc/wpa_supplicant.conf -dd
führt zu
Code:
Initializing interface 'wi0' conf '/etc/wpa_supplicant.conf' driver 'default'
Configuration file '/etc/wpa_supplicant.conf' -> '/etc/wpa_supplicant.conf'
Reading configuration file '/etc/wpa_supplicant.conf'
ctrl_interface='/var/run/wpa_supplicant'
ctrl_interface_group=0 (from group name 'wheel')
ap_scan=1
Line: 6 - start of a new network block
ssid - hexdump_ascii(len=4):
     73 74 75 64                                       stud            
scan_ssid=1 (0x1)
key_mgmt: 0x8
eap methods - hexdump(len=2): 19 00
identity - hexdump_ascii(len=7):
     FF FF FF FF FF FF                   login
password - hexdump_ascii(len=5): [REMOVED]
ca_cert - hexdump_ascii(len=11):
     2f 65 74 63 2f 63 61 2e 70 65 6d                  /etc/ca.pem     
eapol_flags=1 (0x1)
phase1 - hexdump_ascii(len=11):
     70 65 61 70 6c 61 62 65 6c 3d 30                  peaplabel=0     
phase2 - hexdump_ascii(len=13):
     61 75 74 68 3d 4d 53 43 48 41 50 56 32            auth=MSCHAPV2   
Priority group 0
   id=0 ssid='stud'
Initializing interface (2) 'wi0'
EAPOL: SUPP_PAE entering state DISCONNECTED
EAPOL: KEY_RX entering state NO_KEY_RECEIVE
EAPOL: SUPP_BE entering state INITIALIZE
EAP: EAP entering state DISABLED
EAPOL: External notification - portEnabled=0
EAPOL: External notification - portValid=0
Own MAC address: 00:a0:c5:40:34:82
wpa_driver_bsd_set_wpa: enabled=1
wpa_driver_bsd_set_wpa_internal: wpa=3 privacy=1
wpa_driver_bsd_del_key: keyidx=0
wpa_driver_bsd_del_key: keyidx=1
wpa_driver_bsd_del_key: keyidx=2
wpa_driver_bsd_del_key: keyidx=3
wpa_driver_bsd_set_countermeasures: enabled=0
wpa_driver_bsd_set_drop_unencrypted: enabled=1
Setting scan request: 0 sec 100000 usec
Starting AP scan (specific SSID)
Scan SSID - hexdump_ascii(len=4):
     73 74 75 64                                       stud            
Added BSSID 00:00:00:00:00:00 into blacklist
EAPOL: External notification - portEnabled=0
EAPOL: External notification - portValid=0
Disconnect event - remove keys
wpa_driver_bsd_del_key: keyidx=0
wpa_driver_bsd_del_key: keyidx=1
wpa_driver_bsd_del_key: keyidx=2
wpa_driver_bsd_del_key: keyidx=3
wpa_driver_bsd_del_key: addr=00:00:00:00:00:00 keyidx=0
EAPOL: Port Timers tick - authWhile=0 heldWhile=0 startWhen=0 idleWhile=0
Association event - clear replay counter
Associated to a new BSS: BSSID=00:13:c4:8a:5e:24
No keys have been configured - skip key clearing
Associated with 00:13:c4:8a:5e:24
EAPOL: External notification - portEnabled=0
EAPOL: External notification - portValid=0
EAPOL: External notification - portEnabled=1
EAPOL: SUPP_PAE entering state CONNECTING
EAPOL: txStart
TX EAPOL - hexdump(len=18): 00 13 c4 8a 5e 24 00 a0 c5 40 34 82 88 8e 01 01 00 00
EAPOL: SUPP_BE entering state IDLE
EAP: EAP entering state INITIALIZE
EAP: EAP entering state IDLE
Setting authentication timeout: 10 sec 0 usec
EAPOL: Port Timers tick - authWhile=0 heldWhile=0 startWhen=29 idleWhile=59
EAPOL: Port Timers tick - authWhile=0 heldWhile=0 startWhen=28 idleWhile=58
EAPOL: Port Timers tick - authWhile=0 heldWhile=0 startWhen=27 idleWhile=57
EAPOL: Port Timers tick - authWhile=0 heldWhile=0 startWhen=26 idleWhile=56
EAPOL: Port Timers tick - authWhile=0 heldWhile=0 startWhen=25 idleWhile=55
Signal 2 received - terminating
wpa_driver_bsd_deauthenticate
No keys have been configured - skip key clearing
EAPOL: External notification - portEnabled=0
EAPOL: SUPP_PAE entering state DISCONNECTED
EAPOL: SUPP_BE entering state INITIALIZE
EAP: EAP entering state DISABLED
EAPOL: External notification - portValid=0
wpa_driver_bsd_set_wpa: enabled=0
wpa_driver_bsd_set_wpa_internal: wpa=0 privacy=0
wpa_driver_bsd_set_drop_unencrypted: enabled=0
wpa_driver_bsd_set_countermeasures: enabled=0
No keys have been configured - skip key clearing
wpa_driver_bsd_set_wpa_internal: wpa=0 privacy=0
Removed BSSID 00:00:00:00:00:00 from blacklist (clear)

Nach dem timeout versucht er sich erneut zu authentifizieren, timed dann wieder aus u.s.w. Inzwischen glaub ich, das da grundsätzlich ein Problem mit meiner Wlan Karte (Zyxel zyair B-100) besteht (ich verwende wi-driver).
 
Zuletzt bearbeitet:
der wi-treiber kennt keine unterstützung für wpa und respektive wpa_supplicant.

entweder über ndis mit windowstreiber versuchen, oder andere wlan-karte.
 
Die gute Nachricht: Diese Konfiguration scheint für gewisse Leute zu funktionieren. Interessanterweise verwendet sie keine Zertifikate.

Code:
#begin /etc/wpa_supplicant.conf
ctrl_interface=/var/run/wpa_supplicant
ctrl_interface_group=0

eapol_version=1
ap_scan=1
fast_reauth=1

network={
        ssid="<SSID>"
        key_mgmt=IEEE8021X
        eap=PEAP
        identity="<login>"
        password="<password>"
        eapol_flags=3
}

Die schlechte Nachricht: Ich brauch vielleicht ne neue Wlankarte. Hab mal ein NDIS Modul erstellt. Hab aber immer noch Probleme. Na dann zurück zu den man pages.

Allen besten Dank für die Hilfe!
 
Wenn das eh eine Karte ist würde ich einfach eine andere kaufen.

Ich hab hier eine Intel 2200BG und weil die manchmal nicht so richtig will
die hier
3com-3CRPAG175B .
die ist leider nicht umsonst aber gut.

Ansonsten funktioniert im Moment wohl alles was einen ATHchip benutzt gut.
Vielleicht einfach mal eine zu testen aus dem Laden klauen?

Weiss jemand wie das mit den 108 Turborates ausschaut?
 
Jau, hab heute ne Proxim Karte mit Atheros Chipset ausprobiert. Authentifizierung und DHCP liefen relativ problemlos.
Eine Sache kam mir aber noch komisch vor. Ein dmesg zeigte, dass sich die Karte ein paar Mal kurz nacheinander ein und wieder ausgeschaltet hat (link state changed: UP, DOWN)
 
Zurück
Oben