Wicd
Archivierte Anleitung
Dieser Artikel wurde archiviert. Das bedeutet, dass er nicht mehr auf Richtigkeit überprüft oder anderweitig gepflegt wird. Der Inhalt wurde für keine aktuell unterstützte Ubuntu-Version getestet. Wenn du Gründe für eine Wiederherstellung siehst, melde dich bitte in der Diskussion zum Artikel. Bis dahin bleibt die Seite für weitere Änderungen gesperrt.
Achtung!
Wicd ist ein Python-2 Programm. Diese Programmiersprache ist (schon lange) veraltet und wird seit 01.01.2020 nicht mehr gepflegt. Sie wird bei Ubuntu 20.04 auch nicht mehr installiert.
Über den Stand einer Umstellung des Programms auf Python-3 siehe: https://bugs.launchpad.net/wicd/+bug/1848020
Wicd wird unter Ubuntu 20.04 höchstens nach erheblichen Eingriffen funktionieren.
Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:
Der Netzwerkmanager Wicd stellt eine auf der Grafikbibliothek GTK+ basierende grafische Oberfläche zur Verfügung, um Verbindungen zu WLAN- und kabelgebundenen Netzwerken herzustellen und zu verwalten. Damit ist das Programm eine Alternative zum normalerweise unter Ubuntu verwendeten NetworkManager. Möglichst alle Einstellungen der jeweiligen Verbindungsart sollen dem Benutzer in einem einfach zu bedienenden Programm geboten werden. Die in Python geschriebene Anwendung benutzt dazu verschiedene Linux-Werkzeuge für Netzwerkverbindungen, zum Beispiel wpa supplicant.
Wicd verfügt über die folgenden Leistungsmerkmale:
Übersichtliche Profilverwaltung
Unterstützung statischer IP-Adressen und DHCP
Profilbezogene Einstellungen für DNS-Server, Subnetzmasken und Gateways
Erkennt WLAN-Karten unter ndiswrapper
Unterstützung für wpasupplicant
Unterstützung kabelgebundener Netzwerke
Autostartfunktion
Erneuter Verbindungsaufbau nach Suspend-Modus
Unterstützt WEP, WPA(2), LEAP, TTLS, EAP, PEAP Verschlüsselung - mehr Informationen
Verschlüsselung über sog. Templates (Vorlagen) die selbst erstellt oder auch angepasst werden können
Skriptfunktion
Hinweis:
Das Programm wird nicht mehr weiter entwickelt, die letzte Version datiert auf 2016. Letzte Version ist v 1.7.4 - wicd
Installation¶
Es genügt die Installation des Pakets aus den offiziellen Paketquellen [1]:
wicd (universe)
Befehl zum Installieren der Pakete:
sudo apt-get install wicd
Oder mit apturl installieren, Link: apt://wicd
Der vorinstallierte Network-Manager wird nicht automatisch entfernt. Es genügt manchmal, den Network-Manager aus dem Autostart [2] zu entfernen. Meistens ist es jedoch notwendig, ihn nach der Installation von Wicd vollständig zu deinstallieren [3]:
sudo apt-get remove --purge network-manager network-manager-gnome
(für den KNetworkmanager die entsprechenden Pakete)
Zum Testen kann der Network-Manager auch temporär deaktiviert werden, um Wicd den Verbindungsaufbau zu ermöglichen:
sudo service network-manager stop sudo killall wpa_supplicant
Konfiguration¶
Nach dem Programmstart muss zuerst unter "Einstellungen" im Feld "drahtloser Netzwerkadapter" die verwendete WLAN-Schnittstelle eingetragen werden (z.B. wlan0). Nach einen Klick auf "Aktualisieren" sollten jetzt alle erkannten WLAN-Netze aufgelistet werden. Dieser Vorgang kann einen Moment dauern. Die erkannte Verschlüsselung der gefundenen WLAN-Netze wird ebenfalls angezeigt.
Damit eine LAN-Schnittstelle konfiguriert werden kann, muss unter "Einstellungen" das Kontrollfeld "Kabelgebundenes Netzwerk immer anzeigen" aktiviert und im Feld "Wired Interface" die Schnittstelle eingetragen werden (im Beispiel eth0). Über das Auswahlmenü neben dem Netzwerknamen erlangt man Zugriff auf den Bereich "erweiterte Einstellungen" und das Kontrollfeld "Automatisch mit diesem Netzwerk verbinden". Für jedes Netzwerk können jetzt alle benötigten Einstellungen zur Verschlüsselung, wenn gewünscht für eine statische IP-Adresse und falls erforderlich für drei DNS-Server eingetragen werden.
Dazu wird das entsprechende Kontrollfeld "Statische IP-Adresse verwenden" bzw. "Statischen DNS verwenden" aktiviert. Jetzt kann man die Daten in die Tabellen eintragen. Werden keine weiteren Angaben für eine statische IP-Adresse gemacht, erfolgt die Vergabe der Adresse automatisch über DHCP. Um die Verschlüsselung einzuschalten, wird das Kontrollfeld "Verschlüsselung verwenden" aktiviert, dann über das Auswahlfeld die Art der Verschlüsselung eingestellt und der Zugangsschlüssel eingetragen. WPA-Zugangsschlüssel werden grundsätzlich in Klartext eingegeben. Wicd wandelt die Schlüssel in Hex-Code um und speichert diese in einer Profildatei ab. Bei WEP-Verschlüsselung muss der Zugangsschlüssel entweder in Hex-Code oder als Klartext (ASCII-Code/WEP-Passphrase) eingegeben werden. Sind alle Einstellungen gemacht, wird über die Schaltfläche "verbinden" versucht eine Verbindung aufzubauen.
Neben jedem gefundenen Netzwerk ist die Empfangsqualität abzulesen (von eingeschränkt bis sehr gut):
Über das Menü gibt es noch die Möglichkeit nach einem Netzwerk mit unsichtbarer ESSID zu suchen, die Netzwerkliste zu aktualisieren, eine aktuelle Verbindung zu trennen und Grundeinstellungen des Programms festzulegen. Je nach verwendeter Netzwerkkarte kann auch der Treiber für wpa_supplicant ausgewählt werden. Standard ist wext.
Weitere Informationen zur Verschlüsselung und den Gerätetreibern findet man hier WLAN/wpa supplicant.
Mehr Informationen dazu gibt es in den FAQ 🇬🇧 auf der Projektseite.
Skriptfunktion¶
Über die Skriptfunktion in Wicd können z.B. selbst erstelle Bash-Skripte ausgeführt werden. Diese Funktion kann für LAN-und WLAN-Verbindungen verwendet werden. Das kann auch dazu genutzt werden um nach Aufbau der LAN- oder WLAN-Verbindung eine zusätzlich erforderliche DSL-Einwahlverbindung über VPNC auszulösen und auch wieder zu trennen. Ein praktisches Beispiel für ICS.
Die Skriptnamen werden in die entsprechenden Eingabefelder eingetragen und die Aktion wird dann zu einem entsprechenden Zeitpunkt ausgeführt
Pre-connection Script - das Skript wird vor Verbindungsaufbau ausgeführt
Post-connection Script - das Skript wird nach Verbindungsaufbau ausgeführt
Pre-disconnection Script - das Skript wird vor Verbindungsabbau ausgeführt
Post-disconnection Script - das Skript wird nach Verbindungsabbau ausgeführt
Die erstellen Skripte müssen noch in die entsprechenden Unterverzeichnisse kopiert werden damit Wicd diese findet und ausführen kann
/etc/wicd/scripts/preconnect - für das Pre-connection Skript
/etc/wicd/scripts/postconnect - für das Post-connection Skript
/etc/wicd/scripts/predisconnect - für das Pre-disconnection Skript
/etc/wicd/scripts/postdisconnect - für das Post-disconnection Skript
Die Einträge für die Skripte können auch mit einem Editor [4] und Root-Rechten [5] manuell in das passende Profil der Konfigurationsdatei /etc/wicd/wireless-settings.conf eingefügt werden.
beforescript - vor Verbindungsaufbau
afterscript - nach Verbindungsaufbau
predisconnectscript - vor Verbindungsabbau
postdisconnectscript - nach Verbindungsabbau
Für das oben verlinkte Beispiel zu ICS also
afterscript = ics_up.sh postdisconnectscript = ics_down.sh
Verschlüsselungs-Vorlagen¶
Vorlagen selbst erstellen¶
Hinweis:
Ab Version 1.5 liegen die Vorlagen im Ordner /etc/wicd/encryption/templates/ und nicht mehr unter /opt/wicd/encryption/templates/.
Da die von Wicd angebotenen Verschlüsselungsmethoden als Vorlagen (Templates) definiert sind, lässt sich Wicd auch leicht um weitere ergänzen. Dazu erstellt man eine Datei im Verzeichnis /etc/wicd/encryption/templates/ und editiert sie entsprechend [4]. Nun macht man diese noch ausführbar :
sudo chmod 755 /etc/wicd/encryption/templates/mytemplate
Eine Wicd-Vorlage besteht aus zwei Teilen, die durch fünf - getrennt sind. Oberhalb dieser Trennung steht der Name für die Auswahl in Wicd, der Autor, die Version und weitere Variablen-Deklarationen. Für jede deklarierte Variable wird in Wicd ein Textfeld erzeugt, in dem man den Inhalt der Variablen setzen kann. Der zweite Teil der Datei besteht aus wpa_supplicant.conf-Anweisungen, in denen bestimmte Stellen durch die deklarierten Variablen ersetzt werden. Die Variable $_ESSID enthält beispielsweise die SSID des in Wicd ausgewählten Access-Points.
Um eine Vorlage in Wicd verfügbar zu machen, muss in /etc/wicd/encryption/templates/active der Name der neuen Datei eingetragen werden.
sudo echo 'mytemplate' >> /etc/wicd/encryption/templates/active
Ein Beispiel für eine Vorlage mit EAP und Mshap V2 wäre z.B.:
name = EAP-MSCHAP v2 author = ein Name version = 2 require identity *Identity password *Password ----- ctrl_interface=/var/run/wpa_supplicant ## (ab Version 1.5.* einfügen) network={ ssid="$_ESSID" scan_ssid=$_SCAN key_mgmt=WPA-EAP pairwise=TKIP group=TKIP eap=PEAP identity="$_IDENTITY" password="$_PASSWORD" phase2="auth=MSCHAPV2" }
Add-On¶
Durch eine von elektronenblitz63 zur Verfügung gestellte Erweiterung 🇩🇪 ist es u.a. möglich, anstelle einer kombinierten Verschlüsselung aus WPA1/2 gezielt WPA1- oder WPA2-Verschlüsselung zu erzwingen. Manche Router bieten nur gemischte Verschlüsselung an und das kann mit WLAN-Karten, die nur WPA1 unterstützen, zu Verbindungsproblemen führen. Andersherum ist es beispielsweise möglich, nur WPA2 auszuwählen, wenn die verwendete Karte dies unterstützt oder bei der kombinierten Verschlüsselung nur WPA1 verwendet wird.
Der Network-Manager hat an dieser Stelle sehr oft Probleme, sich mit solch einem Access-Point zu verbinden, da eine gezielte Auswahl der Verschlüsselungsmethode (WPA1-TKIP oder WPA2-AES) bzw. eine individuelle Kombination nicht möglich ist.
Zusätzlich kann eine Verbindung mit Angabe der BSSID (MAC-Adresse) des Access-Points gewählt werden. Das ist besonders in kritischen WLAN-Umgebungen oder bei WDS nützlich, um gezielt eine Verbindung mit einem bestimmten Access-Point herzustellen, um einen ungewollten Wechsel zwischen verschiedenen Access-Points in Reichweite, und damit Verbindungsabbrüche (sog. Roaming), zu verhindern.
Selbst erstellte Vorlagen werden bei Bedarf auch gerne mit in das Erweiterungs-Paket übernommen. Eine Mail an den Autor mit den nötigen Daten und einer kurzen Beschreibung genügt.
Hinweis:
Nach der Installation stehen zuvor selbst erstellte Vorlagen durch den Austausch der Datei active nicht mehr zur Verfügung. Die Dateien selbst werden aber nicht gelöscht, in der Datei active müssen lediglich die Einträge für die manuell erstellten Vorlagen wieder hinzugefügt werden.
Problembehebung¶
Verwendete Symbole anpassen¶
Um die vom Programm verwendeten Symboldateien anzupassen, müssen diese mit Root-Rechten in den Ordner /usr/share/pixmaps/wicd/ kopiert werden. Dazu kann man die Datei wicd-images.1.01.tar.gz ⮷ (Optik wie beim Network-Manager) nutzen, die zuerst heruntergeladen und entpackt [6] werden muss.
Links¶
FAQ zu Wicd 🇬🇧
AddOn für Wicd-Netzwerkmanager 🇩🇪 - Erweiterung/fertige Vorlagen, um die verwendete Verschlüsselungsmethode gezielt auswählen zu können