Dieser Artikel ist größtenteils für alle Ubuntu-Versionen gültig.
Der Wicd-Netzwerkmanager 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
Es genügt die Installation des Pakets aus den Ubuntuquellen [1].
wicd (universe)
mit apturl
Paketliste zum Kopieren:
sudo apt-get install wicd
sudo aptitude install wicd
Der Network-Manager wird ab Ubuntu 10.04 Lucid Lynx nicht automatisch entfernt. Es genügt manchmal, den Network-Manager aus dem Autostart zu entfernen, meistens ist es jedoch notwendig, ihn vollständig nach der Installation von Wicd zu deinstallieren:
sudo apt-get install wicd 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
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:
Ü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.
Ü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 pppoe oder 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
Unter Ubuntu 11.10 kann durch einen kleinen Fehler die Konfigurationsmaske momentan nicht aufgerufen werden. Die Einträge für die Skripte können aber mit einem Editor [3] 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
Ab Version 1.5.* liegen die Vorlagen unter /etc/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 /opt/wicd/encryption/templates/ und editiert sie entsprechend [3]. Nun macht man diese noch ausführbar :
sudo chmod 755 /opt/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 die SSID des in Wicd ausgewählten Access-Points.
Um eine Vorlage in Wicd verfügbar zu machen, muss in /opt/wicd/encryption/templates/active der Name der neuen Datei eingetragen werden.
sudo echo 'mytemplate' >> /opt/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" }
(zusätzliche Verschlüsselungs-Vorlagen als fertiges Installationspaket) Durch die Erweiterung ist es u.a. möglich, anstelle der kombinierten Verschlüsselung WPA1/2 gezielt WPA1 oder WPA2-Verschlüsselung auszuwählen. Manche Router bieten nur gemischte Verschlüsselung an und das kann mit WLAN-Karten, die nur WPA1 unterstützen, zu Verbindungsproblemen führen. Ebenso ist es jedoch möglich, WPA2 zu erzwingen, wenn die verwendete Karte dies unterstützt oder bei WPA1/2 nur WPA1-Verschlüsselung verwendet wird. Der Network-Manager hat zudem sehr oft Probleme sich mit solch einem Accesspoint 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.
Die Erweiterung kann hier heruntergeladen werden.
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.
Selbst erstellte Vorlagen werden auch gerne mit in das Erweiterungs-Paket übernommen. Eine Mail an den Autor mit den nötigen Daten und einer kurzen Beschreibung genügt.
Unter Ubuntu 12.04 erscheint das sog. Wicd Tray-Icon möglicherweise nicht im oberen Panel und das grafische Frontend muss manuell gestartet werden:
wicd-client
Durch Installation des Konfigurationseditors (dconf-tools) und Bearbeiten des entsprechenden Eintrags zur Konfiguration des GNOME Panel kann dies geändert werden
dconf-tools
mit apturl
Paketliste zum Kopieren:
sudo apt-get install dconf-tools
sudo aptitude install dconf-tools
Bebilderte Anleitung
Wenn es wie in dieser Anleitung beschrieben nicht funktioniert, kann man alle Icons im Panel zulassen. Dazu mit dem dconf-editor statt der Aufzählung unter "Destktop -> unity -> panel" in der Whitelist nur systray-whitelist ['all']
eintragen.
SourceForge.Net - diverse Programmversionen
elektronenblitz63.de - Erweiterung / fertige Vorlagen im Paket
wicd-images.1.01.tar.gz - alternative Symbole für die WLAN-Empfangsstärke (Optik wie beim Network-Manager)