Gnu York

IT-Dienstleistungen Dresden

Eduroam unter Android 2.3 (Cyanogenmod / GingerDX)

Sich mit einem Android Smartphone in einem WLAN Netzwerk anzumelden ist in der Regel nicht schwer. WPA/WPA2 verschlüsselte Netze erfordern zu meist nur die Eingabe eines Passwortes, im eigenen WLAN gilt es manchmal noch den MAC Filter des Routers zu konfigurieren. Das war's dann aber in der Regel auch schon.

Schwieriger wird es hingegen oft bei so genannten "Enterprise" Netzwerken, die mittels EAP (z.B. EAP-TTLS) verschlüsselt sind. Zu dieser Kategorie von Netzwerken zählen auch die "Eduroam" Netze, die zu meist in Universitäten genutzt werden.

Die meisten Hochschulen bieten ihren Studenten entsprechende Anleitungen zur Einrichtung des Eduroam Netzes. Doch auch wenn man sich genau an diese Vorschriften hält ist es auf einigen Smartphones nicht möglich sich mit dem Netzwerk zu verbinden.

Oft liegt der Fehler hier nicht beim Benutzer, sondern schlicht beim System. Schuld ist das Programm "wpa_supplicant", das unter den meisten Linux Systemen die Konfiguration verschlüsselter Netzwerkverbindungen übernimmt. Mit einigen Android Versionen (je nach Hersteller, bzw. Entwickler) werden Versionen von wpa_supplicant ausgeliefert, die nicht mit den Eduroam Netzwerken kompatibel sind.

Eine Lösung dieses Problems kann es sein, das Programm wpa_supplicant durch eine andere Version zu ersetzen. Dies hat in unseren Tests mit einem Sony Ericsson Xperia X8 funktioniert, auf dem die ursprünglich installierte Android Version 2.1-update1 durch ein Android 2.3.7 Gingerbread namens "GingerDX" (Cyanogenmod) ersetzt wurde.
Im alten Android 2.1 Betriebssystem funktionierte die Verbindung mit dem Eduroam Netzwerk tadellos. Unter Android 2.3.7 war es weder via EAP-TTLS noch via PEAP möglich eine Verbindung zum Netzwerk herzustellen.
Nachdem wir das Programm durch eine geeignete andere Version ersetzt hatten, funktionierte die Verbindung wieder einwandfrei.

Im Folgenden soll kurz erklärt werden, wie Sie das Programm wpa_supplicant durch eine passende Version ersetzen können. Zuvor seien aber einige wichtige Hinweise und Warnungen sowie zwei weitere mögliche Problemlösungen in den Raum gestellt.

Zu Risiken und Nebenwirkungen

Die hier vorgestellte Methode, um die Verwendung von Eduroam Netzwerken unter Android 2.3 möglich zu machen, setzt neben einigen technischen Grundkenntnissen auch Root-Rechte auf dem Gerät voraus. Auf normalen Android-Geräten (auf denen keine von der Community manipulierte Android Version, wie GingerDX/Cyagenmod läuft), haben Sie diese Rechte in der Regel nicht. Zwar gibt es für nahezu alle Android Versionen und Geräte Wege um an Root-Rechte zu gelangen, dies stellt aber in jedem Fall eine Manipulation der vorinstallierten Software dar und kann (wenn auch umstritten und je nach Hersteller verschieden) zum Verlust der Gerätegarantie führen!
Die besagten Root-, bzw. "superuser"-Rechte ermöglichen es Ihnen Änderungen an Dateien des Betriebssystemes vorzunehmen, auf die Sie sonst keinen Schreibzugriff hätten. Bei falscher Handhabung besteht auch die Gefahr, dass Sie ihr Telefon unbrauchbar machen! Wir übernehmen keinerlei Haftung für die hier vorgestellten Informationen, auch wenn Sie auf unserem Testgerät das beschriebene Problem gelöst haben und zu keinen Komplikationen führten.

Falls Sie sich dennoch dafür entscheiden, Ihr Telefon zu "rooten" oder dies schon geschehen ist, können Sie den unten aufgeführten Schritten folgen, um das Programm wpa_supplicant durch eine besser funktionierende Version zu ersetzen.

Fehlendes Zertifikat - WPA_Supplicant unschuldig?

Unter Umständen begründet sich Ihr Problem nicht in einer falschen Version des Programmes wpa_supplicant sondern in einem fehlenden Zertifikat, dass benötigt wird, um sich mit dem Netzwerk zu verbinden. Dieses trägt den Namen "Root CA 2" und wurde von der Deutschen Telekom herausgegeben. Sie müssen es in den WLAN-Einstellungen für das Netzwerk "Eduroam" als CA-Zertifikat angeben (ein Nutzerzertifikat benötigen Sie nicht).

Falls das Zertifikat nicht auf Ihrem Telefon installiert ist, können Sie es hier herunterladen. Speichern Sie es in das Wurzelverzeichnis Ihrer SD Karte und wählen Sie im Einstellungsmenü unter "Standort & Sicherheit" den Menüpunkt "Von SD-Karte installieren (Verschlüsselte Zertifikate von SD-Karte installieren)". Danach sollten Sie das Zertifikat in den WLAN-Einstellungen auswählen können.

Workaround: VPN/WEB statt Eduroam

Wer Angst hat sein Telefon zu beschädigen, kann sich auch mit dem Netzwerk "VPN/WEB" verbinden, das die meisten Universitäten zusätzlich zum "Eduroam" anbieten. Über dieses können entweder unverschlüsselt Daten übertragen werden (wovon hier ausdrücklich abgeraten sei!) oder Sie nutzen es um sich mit dem VPN Ihrer Universität zu verbinden. Über die VPN Verbindung können Sie ebenfalls verschlüsselt Daten übertragen und auf das Internet zugreifen. Eine Anleitung zur Einrichtung des VPN Netzwerkes finden Sie wahrscheinlich auf den Internetseiten Ihrer Unversität.

WPA_Supplicant austauschen - so geht's

Wie bereits erwähnt erfordert der Eingriff in die Software Ihres Android Betriebssystems Root-Rechte. An dieser Stelle sei darauf verzichtet im Detail zu erklären, wie Sie ihr Telefon "rooten" können. Wenn Sie eine Suchmaschine Ihrer Wahl mit dem Namen Ihres Telefones und Begriffen wie "Android root" oder dem Programmnamen "SuperOneClick" füttern, sollten Sie aber fündig werden.

Nachdem Sie Ihr Telefon gerootet haben, überprüfen Sie bitte ob die Anwendung "superuser" vorhanden ist und installieren Sie einen rootfähigen Dateimanager, wie z.B. den "Root Explorer".

Danach gehen Sie wie folgt vor:
  • Laden Sie sich dieses .zip Archiv herunter, welches verschiedene Versionen des Programmes wpa_supplicant enthält.
  • Entpacken Sie den Inhalt des Archives auf die SD Karte Ihres Telefones (oder übertragen Sie die Dateien auf einem anderen Weg Ihrer Wahl auf das Telefon).
  • Deaktivieren Sie das WLAN des Gerätes.
  • Öffnen Sie den installierten, rootfähigen Dateimanager.
  • Mounten Sie das Verzeichnis /system/ mit Schreibrechten (passiert evtl. automatisch).
  • Gehen Sie in das Verzeichnis /system/bin/.
  • Benennen Sie die Datei "wpa_supplicant" in "wpa_supplicant.old" um, um später eine Sicherheitskopie Ihrer Originaldatei zu haben.
  • Gehen Sie in den, auf Ihre SD Karte entpackten Ordner "wpa_supplicant", der die verschiedenen wpa_supplicant Versionen enthält. Sie sollten nur die Datei brauchen, die im Unterordner "1" liegt. (Die anderen Dateien können Sie ausprobieren, falls die Version aus "1" nicht funktioniert.)
  • Kopieren Sie die Datei nach /system/bin/ .
  • Überprüfen Sie die Zugriffsrechte der Datei. Sie sollte für alle Benutzer lesbar und ausführbar sein: rwxr-xr-x (=755).
  • Das WLAN kann nun wieder aktiviert werden. Sie sollten sich nun mit dem Eduroam Netzwerk verbinden können. Es kann nicht schaden, die evtl. bereits vorgenommenen Einstellungen für das Netzwerk zu löschen und es vor dem ersten Verbindungsversuch noch einmal neu einzurichten.
  • Folgende Einstellungen seien für die Verbindung mit dem Eduroam Netzwerk vorgeschlagen:
    EAP-Methode: PEAP
    Phase 2-Authentifizierung: MSCHAPV2
    CA-Zertifikat: Deutsche Telekom Root CA 2
    Nutzerzertifikat: keines
    Identität: ihr_login@ihre-universität.de
    Anonyme Identität: anonymous@ihre-universität.de
    Passwort: Ihr Kennwort
  • Die Einstellungen können auch direkt in der Datei /data/misc/wifi/wpa_supplicant.conf bearbeitet werden. Der entsprechende Eintrag sollte wie folgt aussehen:

    Inhalt der Datei wpa_supplicant.conf
    ctrl_interface=wlan0
    update_config=1

    network={
    ssid="eduroam"
    key_mgmt=WPA-EAP
    group=CCMP TKIP
    eap=PEAP
    identity="ihr_login@universitaet.de"
    anonymous_identity="anonymous@universitaet.de"
    password="ihr_passwort"
    ca_cert="keystore://CACERT_deutsche-telekom-root-ca-2"
    phase2="auth=MSCHAPV2"
    priority=1
    }
  • Falls die von Ihrer Universität vorgeschlagenen Einstellungen anders aussehen, können Sie es auch mit diesen versuchen. In der Regel unterstützen die Eduroam Netzwerke eine Vielzahl unterschiedlicher Konfigurationen.

Wir hoffen diese Anleitung konnte Ihnen helfen, eine Verbindung mit Eduroam herzustellen. Auf unserer Testumgebung hat es funktioniert:
  • Sony Ericsson Xperia X8 / E15i
  • Android 2.3.7 GingerDX Build 21, Cyagenmod
  • Baseband Version: ...15 (vor Update: ...06)
  • Kernel Version: 2.6.29 SEMC
  • CPU: ARMv6 @ 710MHz
  • zusätzliche Kernelmodule: x8overclocking, x8gesture
Falls Sie Fragen oder Feedback haben, schreiben Sie uns bitte über das Kontaktformular. Wir würden uns über Rückmeldungen freuen, ob das beschriebene Vorgehen Ihr Problem gelöst hat.