Linux 15.026 Themen, 107.016 Beiträge

Probleme mit wpa_supplicant.con bzw. interfaces Konfiguration

-=[AsH]=- / 6 Antworten / Baumansicht Nickles

Hi,

wie der Überschrift zu entnehmen ist, habe ich gewisse Probleme meine WLAN-Karte einzurichten.

Debian 5 auf nem T42 mit Intel 2200 WLAN.


Ich benötige momentan an (mindestens) drei Orten Netzwerk/Internet:

zu Hause über Kabel --> geht
zu Hause über WLAN mit WPA2-PSK --> geht
Uni über WLAN mit Zertifikat etc. --> geht nicht


Es gibt sicherlich unterschiedliche Möglichkeiten mehrere Netzwerke zu verwalten. Ich habe mich aus verschiedenen Gründen gegen grafische Tools von KDE/Gnome entschieden und möchte nur mit folgenden Sachen arbeiten:

/etc/network/interfaces
/etc/wpa_supplicant/wpa_supplicant.conf und
Scripten, die mir meine Config laden.

Nachfolgend die beiden Dateien:

######################################################################
/etc/network/interfaces
######################################################################

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
allow-hotplug eth0
iface eth0 inet static
address 192.168.1.13
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1
# dns-* options are implemented by the resolvconf package, if installed
dns-nameservers 192.168.1.1

iface home_wireless inet static
address 192.168.1.14
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf

######################################################################
######################################################################
######################################################################

######################################################################
/etc/wpa_supplicant/wpa_supplicant.conf
######################################################################

network={
ssid="SSID"
scan_ssid=1
key_mgmt=WPA-PSK
psk="PSK"
}

######################################################################
######################################################################
######################################################################

Die WLAN-Karte ist eth1. In den Scripten wird folgendes gemacht:

######################################################################

ifdown eth1
ifup eth1=home_wireless

######################################################################

Das alles funktioniert auch gut, wenn ich in der wpa*.conf nur den Teil vom Heimnetz (s.o.) habe. Für die Uni wollte ich dann ähnlich agieren und die interfaces um folgendes ergänzen:

######################################################################

iface uni_wireless inet dhcp
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf

######################################################################

für die wpa_supplicant.conf habe ich folgeden Teil bekommen:

######################################################################

# path to UNIX socket control interface
ctrl_interface=/var/run/wpa_supplicant

ap_scan=1

network={
ssid="******"
key_mgmt=WPA-EAP
eap=PEAP
proto=WPA
identity="Ihr Username"
anonymous_identity="anonymous@******.de"
password="Ihr Passwort"
ca_cert="Dateipfad zum Zertifikat"
phase2="auth=MSCHAPV2"
}

######################################################################

Wenn ich den letzten Teil in die wpa_*.conf einsetze, bekommen ich bei ausführung eines der Scripte ne Fehlermeldung (der Eintrag in der Interfaces stört nicht - wenigstens was ;) ).

Ehrlich gesagt habe ich keine Idee, was (grundsätzlich) falsch läuft. Dachte zuerst, dass ich nicht alle Netzwerke in die wpa*.conf schreiben darf. Die man sagt:

"Configuration file can include one or more network blocks, e.g., one for each used SSID. wpa_supplicant will automatically select the best network based on the order of network blocks in the configuration file, network security level (WPA/WPA2 is preferred), and signal strength."

Sollte also kein Thema sein. Die Beispiele unter /usr/share/doc geben auch keine Hilfestellung für mehrere Netzwerke. Vielleicht hat ja einer von Euch ne Idee, wo das Problem liegt.

Danke im Voraus

MfG AsH
bei Antwort benachrichtigen
Synthetic_codes -=[AsH]=- „Probleme mit wpa_supplicant.con bzw. interfaces Konfiguration“
Optionen
network={
ssid="SSID"
scan_ssid=1
key_mgmt=WPA-PSK
psk="PSK"
}


kannst du das vielleicht näher erläutern? So wie ich es verstehe verwendet deine uni 802.11 mit Radiusauthentifizierung. das bedeutet schonmal, dass 1. key_mgmt auf WPA-PSK gesetzt falsch ist. müsste afaik WPA-EAPOL heissen, aber ich bin nicht sicher.

Und natürlich hat ein plain psk nichts in der Variable psk zu suchen.
'); DROP TABLE users;--
bei Antwort benachrichtigen
-=[AsH]=- Nachtrag zu: „Probleme mit wpa_supplicant.con bzw. interfaces Konfiguration“
Optionen

Hab ich mir schon fast gedacht, dass der Beitrag zu lang ist :) Der von Dir zitierte Teil bezieht sich auf die Konfiguration home_wireless (welche auch funktioniert. Aus den geposteten Configs hab ich die SSIDs, Passwörter und Benutzernamen entfernt ;)

Es wäre nett wenn Du noch mal einen Blick auf das Problem werfen könntest. Trotzdem schon mal vielen Dank.


MfG

MfG AsH
bei Antwort benachrichtigen
KarstenW -=[AsH]=- „Probleme mit wpa_supplicant.con bzw. interfaces Konfiguration“
Optionen

Der Networkmanager ist dafür nicht zu gebrauchen.
Es gibt zwei kleine Hilfsprogramme die für so eine flexible Netzwerkkonfiguration gut geignet sind, ifpugd und guessnet.
Der ifplugd überwacht die Netzwerkkarten in die ein Netzwerkkabel gesteckt werden kann.
Einfach den ifplugd installieren und mit "dpkg-reconfigure ifplugd" die Netzwerkinterfaces angeben die überwacht werden sollen.
So bald man ein Kabel in die Netzwerkkarte einsteckt erkennt ifplugd das und aktiviert das entsprechende Netzwerkinterface eth0.
Wird das Kabel abgezogen, deaktiviert der ifplugd das entsprechende Netzwerkinterface.
So weit ich das verstanden habe nutzt der ifplugd für das Aktivieren und Deaktivieren die beiden Debianprogramm ifup und ifdown.

Der Eintrag allow-hotplug eth0 muß raus, weil dieses Netzwerkinterface von ifplugd überwacht wird. Einfach mit # kommentieren.

Dann kannst du guessnet installieren.
Mit guessnet habe ich aber leider gar keine Erfahrung. Wenn die WLAN Konfiguration funktioniert , dann kannst du kleine Scripte für guessnet schreiben, in denen verschiedene Netzwerkeigenschaften überwacht werden , die typisch für das jeweilige WLAN Netzwerk sind.

Ich habe im Ubuntu Wiki ein kleine Anleitung für guessnet gefunden:

http://wiki.ubuntuusers.de/Guessnet

Das müßte unter Debian genau so funktionieren.
Ich habe noch ein paar andere Links im Internet gefunden.

http://www.linux-user.de/ausgabe/2005/07/046-ifplugd/index.html

http://www.matthias-deege.de/howto/guessnet_ubuntu-3.html

PS: Hast du schon mal in das Buch "Das Debian System" von Martin F. Kraft geschaut ?
Allerdings wird darin nur die Verwendung von ifplug und guessnet empfohlen , aber nicht genau erklärt.
Ich habe mit guessnet momentan überhaupt keine Erfahrung.

Debian GNU/Linux https://www.debian.org/index.de.html
bei Antwort benachrichtigen
-=[AsH]=- KarstenW „Der Networkmanager ist dafür nicht zu gebrauchen. Es gibt zwei kleine...“
Optionen

Hi,

vielen Dank für Deine Mühe. Dass der network-manager nur für den normalen Hausgebrauch gedacht ist, habe ich auch schnell gemerkt. Habe schon in dem von Dir geposteten Wiki-Artikel gelesen, dass ich allein mit Guessnet nicht weiterkomme, sondern zumindest noch was für's Routing brauche. Ehrlich gesagt denke ich auch, dass ich das besser mit jeweils einem Script pro Netzwerk selber erledigen kann und dann auch genau weiß, was passiert.

Meinen Ansatz kannst Du ja auch den Configs entnehmen:

In der /etc/network/interfaces erstelle ich Profile für die verschiedenen WLANs. Per Script wird dann z.B. "ifup eth1=home_wireless" ausgeführt (vorher die anderen aktiven Netzwerke deaktiviert), was auch super funktioniert (zwischen home_wireless und home_wired). Eigentlich stellt sich nur die Frage, warum der Eintrag für das Uni-WLAN einen Fehler hervorruft (also ein wpa_supplicant-Konfigurationsproblem). Ich hoffe, ich konnte das Problem präzisieren.


MfG

MfG AsH
bei Antwort benachrichtigen
KarstenW -=[AsH]=- „Hi, vielen Dank für Deine Mühe. Dass der network-manager nur für den normalen...“
Optionen

Du brauchst irgendein Dienstprogramm , welches erkennt in welchem Netzwerk du gerade bist. Und dafür ist guessnet gut geeignet. guessnet kann verschiedene Sachen testen, um zu erkennen in welchem Netzwerk du gerade bist und aktiviert selbst mit ifup das richtige Netzwerkinterface. Ich kann dir aber nicht weiterhelfen, weil ich selbst kein Notebook besitze.
Ich würde mal sagen das dein Denkansatz verkehrt ist.
Bei Debian ist alles fertig programmiert. Du mußt keine Scripte selbst schreiben , außer für guessnet . guessnet kann erkennen in welchem Netzwerk du gerade bist und aktiviert das richtige Netzwerkinterface mit der dazugehörenden Konfiguration in der /etc/network/interfaces.
Installier mal ifplugd und guessnet.


Vielleicht hast du auch die Netzwerkkonfiguration von Debian nicht richtig verstanden. Ich kann dir nur empfehlen das Buch "Das Debian System" von Martin F. Kraft durchzulesen. Darin ist sehr genau erklärt welche Scripte bei Debian für die Netzwerkkonfiguration verantwortlich sind. Das ist alles schon fertig programmiert.



http://www.amazon.de/Das-Debian-System-Konzepte-Methoden/dp/3937514171/ref=sr_1_1?ie=UTF8&s=books&qid=1254925353&sr=8-1

Debian GNU/Linux https://www.debian.org/index.de.html
bei Antwort benachrichtigen
-=[AsH]=- KarstenW „Du brauchst irgendein Dienstprogramm , welches erkennt in welchem Netzwerk du...“
Optionen

Hat sich erledigt. Tippfehler.

Du schreibst ein bisschen am Thema vorbei. Trotzdem: Danke!


MfG

MfG AsH
bei Antwort benachrichtigen