c3d2-wiki/Wpa_supplicant.mw

165 lines
5.4 KiB
Plaintext

{{SEITENTITEL:wpa_supplicant}}
[[wpa_supplicant]] ist eine Variante, wie Verbindungen mit dem WLAN verwaltet werden können. Im Vergleich zum Networkmanager [http://manpages.debian.org/cgi-bin/man.cgi?query=networkmanager debianman:networkmanager]<ref>https://wiki.debian.org/NetworkManager</ref> u.a. unter Gnome<ref>https://wiki.gnome.org/Projects/NetworkManager</ref> (Paket [https://packages.debian.org/search?keywords=network-manager-gnome network-manager-gnome]) ist dies weniger fehleranfällig und leichter direkt aus dem Terminal konfigurierbar. Ein weiteres Feature ist die Priorisierung von Netzwerken. Die Konfigurationsdatei liegt als Plaintext vor und ist damit auch eine brauchbare Dokumentation.
== Installation ==
=== Kompatibilität ===
Vorab sollte anhand der [http://hostap.epitest.fi/wpa_supplicant/ Liste beim Projekt] geprüft werden, ob eure Hardware auch kompatibel ist.
=== Debian ===
===== Paket installieren =====
: <source lang=bash>sudo apt-get update</source>
: <source lang=bash>sudo apt-get install wpasupplicant</source>
===== Rechte auf Interfaces beschränken =====
: <source lang=bash>sudo chmod 0600 /etc/network/interfaces</source>
===== wpa_supplicant.conf erstellen =====
siehe [[#Konfiguration]]
===== [[Network-Interfaces|Interfaces]] prüfen =====
: <source lang=bash>cat /etc/network/interfaces</source>
: oder setzen:
: <source lang=bash>sudo vi /etc/network/interfaces</source>
<pre>
# The loopback network interface
auto lo
iface lo inet loopback
auto wlan0
iface wlan0 inet dhcp
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
# EOF
</pre>
: alternativ s.a. [[Network-bonding-failover]] um ''ohne Verbindungsabbruch zwischen LAN und WLAN wechseln'' zu können.
===== Netzwerkdienst neustarten =====
: <source lang=bash>sudo /etc/init.d/networking restart</source>
== Konfiguration ==
Die Konfigurationsdatei (Standard: <tt>/etc/wpa_supplicant/wpa_supplicant.conf</tt>) muss nach jeder Änderung erst neu eingelesen werden um wirksam zu werden. Mit <tt>wpa_cli</tt> kann <tt>wpa_supplicant</tt> direkt gesteuert werden.
'''erstmal ansehen:'''
<source lang=bash>cat /etc/wpa_supplicant/wpa_supplicant.conf</source>
'''Die Datei kann neben den Netzwerken im Kopf ein paar allg. Angaben enthalten:'''
<pre># general config
ctrl_interface=/var/run/wpa_supplicant
ctrl_interface_group=0
# activily scanning for ap
ap_scan=1
fast_reauth=1
# compatibility to older ap
eapol_version=1
#allow updating config by wpa_cli
#update_config=1</pre>
==== Priorisierung ====
Für jedes Netzwerk kann über den Wert <tt>priority=x</tt> ein Wert <tt>x</tt> (Ganze Zahlen -ge 0) definiert werden. Die Verbindung wird zum Netzwerk mit der höchsten Priorität zuerst aufgebaut, bei gleicher Priorität wird die Reihenfolge durch die Eintragung in der Konfiguration bestimmt.
==== Keine / Doppelte SSID ====
Um eine unerwünschte Verbindung zu APs mit gleicher SSID zu verhindern kann die BSSID definiert werden.
Wenn der AP keine SSID sendet, muss für das Netzwerk mit <tt>scan_ssid=1</tt> aktiv nach der SSID gescannt werden.
=== Offenes WLAN konfigurieren ===
die Datei kann so zum [[WLAN#WLAN_C3D2|freien WLAN im HQ]] führen:
<source lang=bash>vi /etc/wpa_supplicant/wpa_supplicant.conf</source>
Und anhängen von..
<pre>
# general unsec network ####
# This one is for connecting to any unsecured network your machine comes into contect with, just comment out if you don't like this:
#network={
# key_mgmt=NONE
# priority=0
# id_str="unsecure open wifi"
#}
# ## ### ### C3D2 ### ### ## #
network={
ssid="C3D2"
key_mgmt=NONE
priority=2
id_str="C3D2"
}
# ## ### ### C3D2 ### ### ## #
#EOF </pre>
=== Passwortgeschütztes WLAN konfigurieren ===
==== mit <code>wpa_passphrase</code> am Bsp. [[C3D2-fallback]] als Einzeiler ====
''so kann die Konfigurationsdatei für ein Netzwerk erweitert werden,''
Der Prompt erwartet die Passphrase
<source lang=bash>wpa_passphrase C3D2-fallback >> /etc/wpa_supplicant/wpa_supplicant.conf</source>
''entsprechend ohne Prompt'' - '''das Passwort wird sowohl in der Shell History als auch in der Konfigurationsdatei im Klartext abgelegt'''
<source lang=bash>echo "zweimalDasUebliche" | wpa_passphrase C3D2-fallback >> /etc/wpa_supplicant/wpa_supplicant.conf</source>
==== mit <code>wpa_cli</code> ====
Dieses Tool ist eher für den ambitionierten Anwender / zum Testen zu empfehlen, Konfigurationsdatei zuvor gesichern!
''Vorgehensweise:''
* konfigurierte Netzwerke listen
* Scannen anschalten
* verfügbare Netzwerke anzeigen
* neue Konfiguration anlegen (Ausgegebene id wird weiterverwendet, hier 0)
* SSID für Netzwerk mit id setzen
* PSK für Netzwerk mit id setzen
* Priorität festlegen (Ganzzahl >= 0; höhere wird eher verbunden)
* Netzwerk auswählen
* Netzwerk aktivieren
* Konfiguration speichern (benötigt Eintrag <code>update_config=1</code> in Konfigurationsdatei, nicht empfohlen)
''unter <code>wpa_cli</code>''
<pre>
list_networks
scan
scan_results
add_network
set_network 0 ssid "WLAN-Network"
set_network 0 psk "SupahSecretPassphrase"
set_network 0 priority 0
select_network 0
eneable_network 0
save_config
</pre>
== Quellen ==
* wpa_supplicant im [https://wiki.debian.org/WiFi/HowToUse#wpa_supplicant Debian-Wiki]
* [http://sirlagz.net/2012/08/27/how-to-use-wpa_cli-to-connect-to-a-wireless-network/ wpa_cli erläutert]
* [http://www.lsi.upc.edu/lclsi/Manuales/wireless/files/wpa_supplicant.conf Beispiel-Konfigurationsdatei]
== Einzelnachweise ==
<references />
[[Kategorie:WLAN]]