Viele kennen die manuelle Eintragung von festen IP-Adressen für eth0 und wlan0 Interfaces auf dem Raspberry PI. Mir was es nicht Recht in der Datei /etc/network/interfaces alles eintragen zu müssen und auf das wpa_supplicant verzichten zu müssen.
Nun habe ich eine Konfiguration gefunden, die wirklich meinen Ansprüchen genügt und folgende Kriterien erfüllen muss:
- Eintragen von verschiedenen Accesspoint Konfigurationen in der Datei „interfaces“
- Nutzen von wpa_supplicant mit verschiedenen Access-Point Profiles
- Eintragung und Nutzung von mehreren wlan0 Profile mit dynamischen und statischen IP-Adressen.
- Nutzung von Unverschlüsselten WLAN-Zugängen
- Keine Klartext PSK-Keys für verschlüsselte WLAN-Profile
- Nutzung des Befehl „wpa_passphrase“
Hier ein Beispiel für die Datei „/etc/wpa_supplicant/wpa_supplicant.conf
# WLAN Nr.1 Name:office mit WPA2-Verschlüsselung
network={
ssid="WLAN-ID1"
id_str="office"
scan_ssid=1
proto=RSN
key_mgmt=WPA-PSK
pairwise=CCMP
group=TKIP CCMP
psk=6ffa89a008a95de109d63ad526dc1ac22b9b647dd5960c54aabb150158c084a0
}
# WLAN Nr.2 Name:dahoam mit WPA-Verschlüsselung
network={
ssid="WLAN-ID2"
id_str="dahoam"
scan_ssid=1
proto=WPA
key_mgmt=WPA-PSK
pairwise=TKIP
group=TKIP
psk=6ffa89a008a95de109d63ad526dc1ac22b9b647dd5960c54aabb150158c084a0
}
# Unverschlüsselte Netzwerke
network={
ssid=""
Nun passen wir die Datei „/etc/network/interfaces“ an wie folgt an einem Beispiel
auto lo iface lo inet loopback iface eth0 inet dhcp allow-hotplug wlan0 iface wlan0 inet manual wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf iface office inet static address 192.168.10.8 netmask 255.255.255.0 network 192.168.10.255 gateway 192.168.10.1 iface dahoam inet dhcp wireless-power off
Nun kann man an zwei verschiedenen Standorten abhängig von der WLAN-SSID das entsprechende Interface „wlan0“ booten und bekommt im Profile „office“ eine feste IP-Adresse und „dahoam“ ( was in Bayern Zuhause bedeutet ) eine dynamische IP-Adresse zugewiesen.
Nutzung des Programm wpa_passphrase
root@thethingbox:~# wpa_passphrase MeinSSID MeinWLANPasswort
network={
    ssid="MeinSSID"
    #psk="MeinWLANPasswort"
    psk=98a8008f0e2c516b2e343eacbeb0e18ea4b7f44ea9e1f159d2fdaadc144cf38f
}
root@thethingbox:~# wpa_passphrase MeinSSID2 MeinWLANPasswort2
network={
    ssid="MeinSSID2"
    #psk="MeinWLANPasswort2"
    psk=1bb3dd83d3472a1badbaa8ce1abcb5ad5ba222a0544ec12f133dd567c1d167e2
}
root@thethingbox:~# wpa_passphrase MeinSSID3 MeinWLANPasswort3
network={
    ssid="MeinSSID3"
    #psk="MeinWLANPasswort3"
    psk=e09d3594ac3c2953d5385b54c3b8421d10c534a9e520b5773b8f72097f3dc8a6
}
Die Ausgabe kann direkt in die Datei „/etc/wpa_supplicant/wpa_supplicant.conf“ geschrieben werden. Wenn man
Viel Spass beim ausprobieren. Sollten sich Schreibfehler eingeschlichen haben, dann bitte mir melden, Danke.
Liebe Grüße , Joachim
 
                     
                     
                    
hi joachim,
tolles beispiel, wie man wpa_supplicant nutzen kann! funktioniert auch wpa-eap, bzw. schonmal getestet?
gruß,
chris
Hallo Chris
versucht hab ich es nicht da ich keine solche Infrastruktur habe. Aber es sollte funktionieren.
Schau mal hier ein Beispiel:
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=wheelnetwork={
ssid="example"
scan_ssid=1
key_mgmt=WPA-EAP WPA-PSK IEEE8021X NONE
pairwise=CCMP TKIP
group=CCMP TKIP WEP104 WEP40
psk="very secret passphrase"
eap=TTLS PEAP TLS
identity="user@example.com"
password="foobar"
ca_cert="/etc/cert/ca.pem"
client_cert="/etc/cert/user.pem"
private_key="/etc/cert/user.prv"
private_key_passwd="password"
phase1="peaplabel=0"
ca_cert2="/etc/cert/ca2.pem"
client_cert2="/etc/cer/user.pem"
private_key2="/etc/cer/user.prv"
private_key2_passwd="password"
}
Wichtig ist das „id_str=“ in dem TAG drin steht wo die Konfiguration eingetragen ist. 
Grüße Joachim