194 lines
6.4 KiB
Plaintext
194 lines
6.4 KiB
Plaintext
{{SEITENTITEL:wpa_supplicant}}
|
|
[[wpa_supplicant]] ist eine Variante, wie Verbindungen mit dem WLAN verwaltet werden können.
|
|
|
|
== Vergleich mit anderen Diensten ==
|
|
|
|
=== allgemeine Vor- und Nachteile ===
|
|
|
|
; allgemeine Vorteile:
|
|
* via [[w:de:Kommandozeile|Kommandozeile]] zu benutzen
|
|
* [[#Konfiguration | Konfigurationsdatei <code>wpa_supplicant.conf</code>]] ist einfache [[w:de:Textdatei|Textdatei]]
|
|
* Funktionalität zur möglichen Priorisierung von Netzwerken
|
|
* brauchbare Dokumentation
|
|
* Anreiz Netzwerkkonfiguration auch manuell vorzunehmen
|
|
* grafisches Frontend mit [[#wpa_supplicant-gui]] verfügbar
|
|
|
|
; allgemeine Nachteile:
|
|
* Bei Verbindungsproblemen ist ggf. der Dienst <tt>wpa_supplicant</tt> im Weg
|
|
|
|
=== Vergleich mit NetworkManager ===
|
|
|
|
Im Vergleich zum NetworkManager ([http://manpages.debian.org/cgi-bin/man.cgi?query=networkmanager debianman:networkmanager])<ref>https://wiki.debian.org/NetworkManager</ref>, beispielsweise unter [[w:de:Gnome|Gnome]]<ref>https://wiki.gnome.org/Projects/NetworkManager</ref> ([https://packages.debian.org/search?keywords=network-manager-gnome package <code>network-manager-gnome</code>]), ist [[wpa_supplicant]] weniger fehleranfällig und leichter direkt aus dem Terminal konfigurierbar.
|
|
|
|
== 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 ===
|
|
|
|
;Pakete:
|
|
* wpasupplicant (Service und Tools)
|
|
* wpagui (grafisches Frontend)
|
|
|
|
; 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-Interface|Interface]]s 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: <code>/etc/wpa_supplicant/wpa_supplicant.conf</code>) muss nach jeder Änderung erst neu eingelesen werden um wirksam zu werden. Mit <code>wpa_cli</code> kann <code>wpa_supplicant</code> 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 <code>priority=x</code> ein Wert <code>x</code> (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 <code>scan_ssid=1</code> 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>[[man:wpa_passphrase|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>[[man:wpa_cli|wpa_cli]]</code> ====
|
|
|
|
<code>wpa_cli</code> ist eher für die ambitionierte Anwenderin und zum Testen zu empfehlen. Konfigurationsdatei zuvor sichern!
|
|
|
|
''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>
|
|
|
|
== Deaktivieren ==
|
|
|
|
Um das [[Netzwerk manuell konfigurieren]] zu können, muss WPA Supplicant zunächst deaktiviert werden.
|
|
|
|
<!-- Bitte hier sinnvoll ergänzen. -->
|
|
<source lang=bash>
|
|
???
|
|
</source>
|
|
|
|
== wpa_supplicant-gui ==
|
|
|
|
Für die grafische Bedienung gibt es auch eine Erweitung.
|
|
|
|
<!-- Doku erwünscht -->
|
|
|
|
== 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]]
|