easyroam versteht sich als eine Weiterentwicklung des eduroam Dienstes und richtet sich hauptsächlich an kleine Einrichtungen im DFN, kann aber auch von großen Einrichtungen im DFN genutzt werden.

Die Idee eduroam und die DFN-AAI zusammenzuführen ist nichts Neues und war lange Zeit leider nicht möglich, da es die DFN-AAI in der Fläche noch nicht gab. Das hat sich seit einiger Zeit geändert, so dass nun die Möglichkeit gegeben ist, den Dienst eduroam mit der Zusammenführung von eduroam und der DFN-AAI sicherer und einfacher zu gestalten. Herzstück von easyroam ist das easyroam Portal: https://www.easyroam.de, welches als DFN-AAI Service Provider in der DFN-AAI, eduroam Profile für die gängigen Betriebssystem wie: W10, macOS/iOS, ANDROID und LINUX Derivate bereitstellt. Das easyroam Portal kann in den Konfigurationsassistenten auf https://cat.eduroam.org über den Eintrag des eduroam - IdP's (Identity Providers) der Einrichtungen eingetragen werden.

In eduroam gibt es neben anderen Verfahren zur Anmeldung die Authentifizierungsmethode EAP-TLS. Bei dieser Methode kommen ausschließlich Client/Nutzer Zertifikate für die Anmeldung zum Einsatz. Diese Zertifikate für eduroam können die eduroam Nutzenden auf www.easyroam.de nur generieren, wenn sie im Besitz einer gültigen DFN-AAI IdP Kennung mit Opt-In sind. Die eduroam Client/Server Zertifikate sind Teil einer „Self-Signed PKI“ und können nur in eduroam eingesetzt werden. Der easyroam Server speichert ausschließlich nur die Pairwise - ID (Pseudonym) des DFN-AAI IdP Accounts und die Seriennummer des Client/Nutzer Zertifikats. Letzteres ist auch Teil der Roaming Identität. Eine Besonderheit gegenüber aktuellen EAP-TLS Angeboten ist, dass die eduroam Nutzenden nicht mehr mit Namen im Zertifikat erkennbar sind. Somit ist es unmöglich Bewegungsprofile der eduroam Nutzenden zu erstellen. Jedoch ist es möglich, eine Zuordnung zwischen Pairwise - ID und Zertifikats-Seriennummer herzustellen und den eduroam Nutzenden eindeutig mit einer Person in Verbindung zu bringen. Somit ist man nicht generell anonym in eduroam unterwegs, wie das auch bisher der Fall ist.

Die Server Software ist eine .NET Entwicklung in C-Sharp geschrieben. Es wurde bewusst auf PHP verzichtet, da PHP nicht die Server Sicherheit bot, die an die Server Software gelegt wurde. Der Server unterstützt aktuell zwei Sprachen: Deutsch und Englisch.

Die Anleitungen auf einem Blick finden die easyroam Nutzenden hier.

Für die Internationalisierung von eduroam/easyroam ist es wichtig, einen sogenannten NAPTR (Network Authority PoinTeR) - Record für seine Realms zu konfigurieren. Aber auch für die nationale Nutzung ist es wichtig zumindest für die unten genannten Realms einen Text-Record im DNS zu konfigurieren. Da gemäß der eduroam Policy der Realm im globalen DNS auflösbar sein muss.

Für easyroam sind beispielhaft folgende NAPTR's zu konfigurieren:

easyroam.<organame.org>.   43200   IN      NAPTR   100 10 "s" "x-eduroam:radius.tls" "" _radsec._tcp.eduroam.de.
easyroam-pca.<organame.org>.   43200   IN      NAPTR   100 10 "s" "x-eduroam:radius.tls" "" _radsec._tcp.eduroam.de.

Zonen-Name (Label): easyroam.<organame.org>.
43200: DNS cache liftime
IN: Für die Nutzung im Internet wie bei jedem anderen DNS-Ressource Eintrag
NAPTR: Network Authority PoinTeR
100: Wenn mehrere NAPTR-Einträge für das Etikett definiert sind, wird die niedrigere Ordnungsnummer der höheren vorgezogen
10: Wenn mehrere NAPTR-Einträge mit der gleichen Reihenfolge für dieses Label definiert sind, wird bei der Namensauflösung zwischen all diesen Einträgen gewechselt
„s“: Dieser NAPTR-Eintrag sollte in Hostnamen aufgelöst werden, indem eine nachfolgende SRV-Abfrage auf dem Ziel-Label durchgeführt wird
„x-eduroam:radius.tls“: Dienst Name
„“: Regulärer Ausdruck, für eduroam/easyroam nicht erforderlich
_radsec._tcp.eduroam.de.: Label des SRV Records

Die Auflösung des SRV Labels für jeden NAPTR für eduroam/easyroam im DFN lautet:

host -t SRV _radsec._tcp.eduroam.de.
_radsec._tcp.eduroam.de has SRV record 0 20 2083 tld3.eduroam.de.
_radsec._tcp.eduroam.de has SRV record 0 10 2083 tld2.eduroam.de.
_radsec._tcp.eduroam.de has SRV record 0 0 2083 tld1.eduroam.de.

Für die Freigabe am DFN-AAI SP https://www.easyroam.de (Entity-ID https://get.eduroam.de/shibboleth) werden folgende Attribute benötigt:

* https://www.dfn.de/entitlement/geteduroam/admin zur Autorisierung von Admins
* https://www.dfn.de/entitlement/geteduroam/optin für gewöhnliche Nutzende und Admins

Bitte beachten, für Admins müssen beide Entitlements optin und admin konfiguriert werden.

Konfigurations-Schnipsel gibt es hier.

Ein Aufruf von https://www.easyroam.de ohne korrekte Entitlements führt aktuell noch zu einem „404 Not Found“ (wird noch geändert) und ist ein Hinweis, dass das Entitlement oder für die Admins die benötigten Entitlements nicht gesetzt sind.

Beispiel für die Freigabe am DFN-AAI SP für die gewöhnliche Nutzenden:

Beispiel für die Freigabe am DFN-AAI SP für Admins:

Die Web-Seite www.easyroam.de dient der Verwaltung der eduroam Profile durch die eduroam Nutzenden. Bitte die Installationsanleitungen s.u. oder Inhaltsverzeichnis beachten! Nach dem Aufruf der Seite https://www.easyroam.de im Browser und der Autorisierung über seinen DFN-AAI IdP gelangt man auf die folgende Seite:

Zugänge generieren

Klickt man auf manuelle Optionen im Hauptmenü kann man zwischen PKCS12, EAP-Config und Mobil-Config (Apple) auswählen:

Das Zertifikatsformat PKCS12 ist für eduroam Nutzende gedacht, die das Betriebssystem Linux verwenden. Das Dateiformat EAP-Config spielt bei dem Workaround auf den ANDROID Geräten später eine wesentliche Rolle. Das Mobile-Config ist für die eduroam Nutzenden des Betriebssystem Mac-OSX gedacht.

Zugänge verwalten

Klickt man mit der Maus auf „Zugänge verwalten“ so gelangen die eduroam Nutzenden in das Verwaltungsmenü für die Zugangszertifikate:

Hier kann man die Seriennummer des Zertifikats und auch die Laufzeit des Zertifikats einsehen. Wird nun ein Zertifikat widerrufen, so kommt es auf die Widerrufsliste und wird beim Udate der CRL anschließend von RADIUS Server abgelehnt. Bei Widerruf des Profils/Zertifikats, wird dieses innerhalb von 24 Stunden auf dem RADIUS Server gesperrt.

Die Laufzeit der eduroam Profile legen in der Regel die easyroam Administratoren in den Einrichtungen fest. Wenn von den easyroam Administratoren keine Laufzeit der eduroam Profile festgelegt wird, sind die eduroam Profile 3 Monate gültig. Im Bereich „Zugänge verwalten“ unter „Mehr Infos“ und „Uhrzeit und Datum des Ablaufs (UTC):“ besteht die Möglichkeit, eine ICAL Datei für die gängigen Kalender Applikationen auf den Endgeräten herunterzuladen. Die eduroam Nutzenden werden dann in der Regel frühestens 1 Woche und spätestens 1 Tag vor Ablauf des eduroam Profils erinnert, ihr eduroam Profil zu aktualisieren.

Es bietet sich an, die Namen der eduroam Profile frei zu editieren mit mit „Klick“ auf den Kugelschreiber, damit die eduroam Profile den verschiedenen Endgeräten zugeordnet werden können.

Die Admins sehen mehr als die eduroam Nutzenden. Klicken Admins auf den Reiter „Verwalten von Benutzerzugängen“, so können sie anhand der Pairwise-ID und der Seriennummer (die Pairwise-ID ist in der folgenden Grafik nur zum Teil sichtbar, da ausgeschwärzt) die Profile verwalten:

Pairwise-ID und Seriennummer der Zertifikate sind suchbar, geben die Administrierenden die Pairewise-ID ein, so erhalten sie alle Zertifikate der/des pseudonymisierten eduroam Nutzenden angezeigt. Bei Widerruf eines Profils/Zertifikats, wird dieses innerhalb von 24 Stunden auf dem RADIUS Server gesperrt. Grundsätzlich ist es für die eduroam Admins nicht möglich, eduroam Nutzende in easyroam anhand der Pairwise-ID auf dem easyroam Server get.eduroam.de zu sperren. Nur die DFN-AAI IdP Admins können anhand der Pairwise - ID, die eduroam Nutzenden einer Person zuordnen und diese dann das Entitlement für den Zugang zu easyroam entziehen. Das DFN-AAI Team empfiehlt einen DFN-AAI IdP nie ohne Datenbank zu betreiben. Somit lassen sich im Bedarfsfall die Personen anhand der Pairwise-ID durch die zuständigen DFN-AAI IdP Admins leichter zuordnen.

Vorgehensweise der easyroam Admins bei Sperrung einer Person in easyroam

In easyroam werden die Identitäten der Personen durch pseudonymisierte Profile/Zertifikate im Rahmen der DSGVO selbstverständlich geschützt. Kommt es vor, dass eine Person in easyroam, z.B. wegen eines virenverseuchten Rechners, gesperrt werden muss, so ermittelt der eduroam Admin zunächst die Seriennummer des Zertifikats der in eduroam angemeldeten Person. Die Seriennummern der Zertifikate, die für die Anmeldung in eduroam erforderlich sind, sind fester Bestandteil der Roaming Identität, auch bekannt als äußere Roaming Identität. Die äußere Roaming Identität kann nicht geändert werden, da sie fest an dem CN (Common Name) im Zertifikat der pseudonymen Identität gebunden ist. Somit können die Personen in easyroam unterschieden werden ohne, dass die wahren Identitäten der Personen offengelegt werden. Anhand der Seriennummer der Profile/Zertifikate, der in eduroam angemeldeten Person, können die zuständigen easyroam Admins auf dem Portal www.easyroam.de im Bereich „Verwalten von Benutzerprofilen“ nach der Pairwise-ID suchen und das betreffende eduroam Profil/Zertifikat widerrufen. Damit verliert das widerrufene Profil/Zertifikat die Gültigkeit in eduroam und das entsprechende Endgerät ist für eduroam gesperrt. Damit easyroam Nutzende nicht augenblicklich ein neues Profil/Zertifikat für das gesperrte Endgerät generieren, sollte den Nutzenden Erlaubnis neue Profile zu generieren temporär entzogen werden.

„Klicken“ die easyroam Admins auf die Pairwise-ID, so gelangen diese in die Personenverwaltung.

In der Personenverwaltung können die easyroam Admins das Konto einzelner pseudonymer Personen für die Generierung von easyroam Profile temporär sperren und einzelne eduroam Profile/Zertifikate sowie alle eduroam Profile/Zertifikate der ausgewählten pseudonymen Person widerrufen. Zu beachten ist hier, während des gesamten Vorgangs zur Sperrung von Personen in easyroam wird die wahre Identität der Person zu keiner Zeit offengelegt. Möchte die Person ihren easyroam Account wieder entsperren, so muss diese Person unter Angabe Ihres Pseudonyms (Pairwise - ID) Kontakt zu den easyroam Admins der Einrichtungen aufnehmen. Die Person kann dort erfahren, warum sie gesperrt wurde und welche Schritte unternommen werden müssen, damit der Account der Person erneut freigeschaltet werden kann. Der Vorgang, der zum Widerrufen von easyroam Profile führt, kann nicht mehr rückgängig gemacht werden.

1. Wenn die GETEDUROAM app und/oder alte eduroam Profile installiert sind, diese bitte jetzt löschen.

2. Die easyroam app herunterladen: https://www.easyroam.de/winapp/easyroam.msix und installieren.

2. easyroam app starten. In der Regel wird ein Browser automatisch geöffnet.

3. Im anschließenden WAYF (Where Are You From) findet man seine Einrichtung und meldet sich über seinen DFN-AAI IdP Account an. Sollte die Heimateinrichtung nicht nicht im WAYF aufgeführt werden, kann stattdessen der Eintrag „easyroam im Regelbetrieb“ ausgewählt werden.

4. Nach erfolgreicher DFN-AAI Anmeldung, wird das Hauptmenü „Home“ aufgerufen. Mit einem Klick auf die Schaltfläche „Neues Profil installieren“ wird ein neues easyroam Profil installiert.

5. Das neu installierte easyroam Profil wird als „Gültig“ markiert im Hauptmenü angezeigt.

Sicherstellen, dass eine Internetverbindung besteht, LAN oder WLAN (nicht eduroam).

1. Browser aufrufen und https://www.easyroam.de eingeben.

2. Nach erfolgreicher Anmeldung über seinen DFN-AAI Identity Provider ein Klick auf „Manuelle Optionen“ und Mobile-Config (Apple) auswählen.

3. Namen für das Profil eingeben, z.B iOS-12-Profil und mit „Zugang generieren“ quittieren.

4. Die Meldung: „Diese Webseite versucht, ein Konfigurationsprofil zu laden. Darf sie das?“ mit Klick auf Zulassen erlauben.

5. Die Meldung: „Profil geladen Überprüfe das Profil in den Einstellungen, wenn du es installieren möchtest.“ mit Klick auf Schließen beenden.

6. Vom Server Abmelden (Schaltfläche im Browser).

7. Einstellungen starten und auf Menü-Punkt: Profil geladen klicken.

8. Anschließend mit Installieren den Vorgang abschließen und sich auf eduroam freuen.

Siehe hier

Sicherstellen, dass eine Internetverbindung besteht, LAN oder WLAN (nicht eduroam). Wenn alte eduroam Profile, die nicht mit easyroam installiert wurden, noch auf dem System sind, bitte vor der Nutzung von easyroam unbedingt löschen. s. „System Preferences/System Einstellungen“ und Profile. Alte Profile, die mit easyroam installiert wurden, müssen nicht vorher gelöscht werden.

1. Browser (in der Regel Safari) aufrufen und https://www.easyroam.de eingeben.

2. Nach erfolgreicher Anmeldung ein Klick auf „Manuelle Optionen“ und Mobile-Config (Apple) auswählen.

3. Mit dem „Klick“ auf „Zugang generieren“ erscheint im Vordergrund des Browser-Fensters die Download Box.

4. Mit „Klick“ auf „OK“ geht es weiter. Anschließend „System Preferences/System Einstellungen“ aufrufen. Im Suchfenster wird anschließend „Profile“ eingeben und das Untermenü „Profile“ aufgerufen.

5. Es erscheint ein Menü mit den Nutzerprofilen und mit dem heruntergeladenen Profil, Dreieck Icon mit gelb hinterlegtem Ausrufezeichen.

Das heruntegeladene Profil anklicken und dann ein „Klick“ auf Install/Installieren, es erscheint das nächste Menü.

6. Nun besteht nochmals Möglichkeit in die Details des Profils zu schauen oder die Installation abzuschließen. Bei Abschluss der Installation fragt das System nach dem Passwort des Users, damit wird die Erlaubnis erteilt das Profil auf dem System zu installieren. Nach der Installation versucht der macOS-Rechner eine Verbindung zum eduroam Netz aufzubauen. Sollte kein eduroam Netz in der Nähe sein, so kann es zu einer Fehlermeldung kommen. Das Profil ist jedoch installiert und sobald ein eduroam Netz gefunden wird, wird eine automatische Anmeldung im eduroam Netz durchgeführt.

Die Installation des easyroam Profils auf Geräten mit watchOS erfolgt über das iPhone und der AppleWatch app.
Sicherstellen, dass eine Internetverbindung auf dem iPhone besteht, LTE oder WLAN.

1. Browser (in der Regel Safari) auf dem iPhone aufrufen und https://www.easyroam.de eingeben.

2. Nach erfolgreicher Anmeldung über den DFN-AAI IdP der Einrichtung ein Klick auf „Manuelle Optionen“ und Mobile-Config (Apple) auswählen, einen Namen für das Profil eingeben und auf „Zugang generieren“ klicken.

3. Zulassen, dass die Webseite versucht ein Konfigurationsprofil zu laden.

4. Im Menü Gerät wählen die Apple Watch auswählen.

5. Die Signatur des easyroam Profils prüfen: Verein zur Förderung eines Deutschen Forschungsnetzes DFN-Verein, anschließend auf „Installieren“ klicken

6. Sobald das iPhone mit dem watchOS Gerät verbunden ist, wird das easyroam Profil über die AppleWatch App auf das watchOS Gerät übertragen.

Siehe hier

1. Wenn app's, die eduroam Profile auf das Gerät bringen, installiert sind, müssen diese vorher gelöscht werden. Da diese sonst die manuelle Konfiguration behindern können.

2. Auf dem Gerät im Browser http://www.easyroam.de/ eingeben und sich über den WAYF (Where Are You From) an seinem DFN-AAI-IdP (Identity Provider) am easyroam SP (Service Provider) anmelden.

3. In den manuellen Optionen wählt man PKCS12 aus und vergibt einen Namen. Anschließend auf „Zugang generieren“ klicken.

4. In der Regel wird die PKCS12 Datei in den Download Folder auf dem Gerät abgelegt. Bitte beachten, das ist nicht überall auf allen Geräten einheitlich und je nach Alter des Geräts kann es sogar vorkommen, dass man ein USB Kabel benötigt, um die PKCS12-Datei auf das Gerät zu bekommen.

5. Sobald die PKCS12-Datei auf dem Gerät ist, kann man sie in der Regel einlesen. Dabei wählt man den Zertifikat-Typ aus: WLAN-Zertifikat. Auch das kann auf anderen Geräten komplett anders aussehen. Nun den Dateinamen für das Pseudozertifikat auswählen.

6. Ist die PKCS12 Datei eingelesen, kann man in den Systemeinstellungen ins WLAN Menü gehen.

7. „+ WLAN hinzufügen“ auswählen und folgendes konfigurieren:

Netwzwerkname: eduroam
Sicherheit: WPA/WPA2-Enterprise
EAP-Methode: TLS
CA-Zertifikat: Systemzertifikate verwenden
Online-Zertifikatstatus: Zertifikatstatus anfordern
Domain: easyroam.eduroam.de
Nutzerzertifikat auswählen: Dateinamen, den man, s. oben, beim Einlesen der PKCS12-Datei vergeben hat, auswählen, z.B. MyAndroidCert

Am Ende der Konfiguration sollte sich das Gerät mit eduroam verbinden lassen.

Extrahieren der erforderlichen Zertifikate aus der easyroam PKCS12 Datei

Die Nutzung von easyroam ist selbstverständlich auch auf Linux Derivaten möglich. Leider gibt es keine allgemein gültige Anleitung. Im folgenden wird beschrieben wie die einzelnen Komponenten, die bei einer manuellen Konfiguration von easyroam auf Linux Geräten benötigt werden, aus dem easyroam Portal gewonnen werden können:

1. Sicherstellen, dass eine Internetverbindung besteht, LAN oder WLAN.

2. Anmeldung am easyroam Portal: https:www.easyroam.de.

3. Direkt nach der erfolgreichen Anmeldung am Portal auf „Manuelle Optionen“ klicken und PKCS12 mit Klick auf die Auswahlbox auswählen.

4. Den Profil Namen angeben und auf Zugang generieren klicken.

5. Um die einzelnen Komponenten wie das Client Zertifikat, der Private Key und das RootCA Zertifikat zu extrahieren wird das folgende Script aufgerufen, welches auf der Grundlage des Scripts der Universität Greifswald angepasst wurde:

#!/bin/bash
# This script extract all the necessary information from the easyroam PKCS12 File and put it under /etc/easyroam-certs

# Usage:   bash easyroam_extract.sh <YOUR-PKCS12-File>
set -e

# check if we are root

if [[ $EUID -ne 0 ]]; then
    echo "You must be root to run easyroam_extract.sh." 1>&2
    exit 100
fi


ConfDir="/etc/easyroam-certs"

[ -d "$ConfDir" ] || mkdir -p "$ConfDir"

# check input file

if [ -z "$1" ]; then
        echo ""
        echo "Your pkcs12 file is missed as input parameter."
        echo ""
        exit 1
else
        InputFile="$1"
fi
# set openssl legacy options if necessary

LegacyOption=
OpenSSLversion=$(openssl version | awk '{print $2}' | sed -e 's/\..*$//')
if [ "$OpenSSLversion" -eq "3" ]; then
        LegacyOption="-legacy"
fi

# check pkcs12 file

Pwd="pkcs12"

if ! openssl pkcs12 -in "$InputFile" $LegacyOption -info -passin pass: -passout pass:"$Pwd" > /dev/null 2>&1; then
        echo ""
        echo "ERROR: The given input file does not seem to be a valid pkcs12 file."
        echo ""
        exit 1
fi


# extract key, cert, ca and identity

openssl pkcs12 -in "$InputFile" $LegacyOption -nokeys -passin pass: -out "$ConfDir/easyroam_client_cert.pem"
openssl pkcs12 -in "$InputFile" $LegacyOption -nocerts -passin pass: -passout pass:"$Pwd" -out "$ConfDir/easyroam_client_key.pem"
openssl pkcs12 -info -in "$InputFile" $LegacyOption -nokeys -passin pass: -out "$ConfDir/easyroam_root_ca.pem" > /dev/null 2>&1
openssl x509 -noout -in "$ConfDir/easyroam_client_cert.pem" -subject | awk -F \, '{print $1}' | sed -e 's/.*=//' -e 's/\s*//' >  "$ConfDir/identity"
echo "Done."

Verwendung der extrahierten easyroam Profile am Beispiel des Netzwerk Managers mit der Bezeichnung netctl

Folgendes wird vorausgesetzt:

  • easyroam_extract.sh aufgerufen
  • netctl
  • wpa_supplicant
  • easyroam .p12 Pseudozertifikat

Die in Schritt 5. extrahierten Dateien die sich unter /etc/easyroam-certs befinden, werden anschließend in einem File mit dem Namen /etc/netctl/easyroam verwendet, dort wird folgendes hineingeschrieben und gespeichert:

description='easyroam connection'
Interface=wlan0
Connection=wireless
Security='wpa-configsection'
IP='dhcp'
WPAConfigSection=(
    'ssid="eduroam"'
    'key_mgmt=WPA-EAP'
    'eap=TLS'
    'proto=WPA RSN'
    'identity="76673789883214453797@easyroam.realm_der_einrichtung.tld"'   # <---- Hier muss der CN (Common Name), also der Wert aus der Datei /etc/easyroam-certs/identity s. Beispiel links. Auf keinen Fall die Pairwise-ID eingeben!!!!!
    'client_cert="/etc/easyroam-certs/easyroam_client_cert.pem"'
    'private_key="/etc/easyroam-certs/easyroam_client_key.pem"'
    'altsubject_match="DNS:easyroam.eduroam.de"'
    'private_key_passwd="pkcs12"'
    'ca_cert="/etc/easyroam-certs/easyroam_root_ca.pem"'
    'ca_cert2="/etc/easyroam-certs/easyroam_root_ca.pem"'
) 

Mit Root Rechten wird folgendes Kommando aufgerufen:

netctl start easyroam 

Soll permanent easyroam installiert werden, so wird folgendes Kommando aufgerufen:

netctl enable easyroam

Verwendung der extrahierten easyroam Profile am Beispiel des Netzwerk Managers mit der Bezeichnung NetworkManager (nmcli)

Nachdem die Schritte 1. bis 5. ausgeführt und die easyroam Zertifikate extrahiert wurden, wird folgendes Script aufgerufen, welches auf der Grundlage des Script der Universität Greifswald angepasst wurde:

#!/bin/bash

# Usage: bash   easyroam_nmcli.sh

set -e

# check if we are root

if [[ $EUID -ne 0 ]]; then
    echo "You must be root to run easyroam_nmcli.sh." 1>&2
    exit 100
fi

# check for easyroam-cert files

[ -d /etc/easyroam-certs ] && ConfDir=/etc/easyroam-certs || { echo "Aborted, run easyroam_extract.sh first!"; exit 1;  }
[ -f /etc/easyroam-certs/easyroam_client_cert.pem ] ||  { echo "Aborted, client_cert missing."; exit 1;  }
[ -f /etc/easyroam-certs/easyroam_root_ca.pem ] ||  { echo "Aborted, root_ca missing."; exit 1;  }
[ -f /etc/easyroam-certs/easyroam_client_key.pem ] ||  { echo "Aborted, client_key missing."; exit 1;  }
[ -f /etc/easyroam-certs/identity ] && Identity=$(cat "$ConfDir/identity") ||  { echo "Aborted, identity missing"; exit 1;  }

Pwd="pkcs12"
# check for nmcli

if ! type nmcli >/dev/null 2>&1; then
        echo ""
        echo "ERROR: nmcli not found!" >&2
        echo "This wizard assumes that your network connections are NOT managed by NetworkManager." >&2
        echo ""
        exit 1
fi

# check for wifi device

if ! nmcli -g TYPE,DEVICE device | grep wifi >/dev/null; then
        echo ""
        echo "ERROR: Unable to find any wifi device!" >&2
        echo ""
        exit 1
fi


# configure parameters

WIntName=$(iw dev | awk '$1=="Interface"{print $2}')

WOn="GENERAL.STATE:"

WLANName="eduroam"

ALT_SUBJECT="DNS:easyroam.eduroam.de"

# TLS_1.3
TLS_VERSION="0x100"

# Remove existing connections

nmcli connection show | \
        awk '$1==c{ print $2 }' c="$WLANName" | \
        xargs -rn1 nmcli connection delete uuid

# switch wlan on

nmcli dev show "$WIntName" | \
      awk '$1==c{ print $2 }' c="$WOn" | \
      xargs -rn1 nmcli radio wifi on

# Create new connection

nmcli connection add \
        type wifi \
        con-name "$WLANName" \
        ssid "$WLANName" \
        -- \
        wifi-sec.key-mgmt wpa-eap \
        802-1x.eap tls \
        802-1x.altsubject-matches "$ALT_SUBJECT" \
        802-1x.phase1-auth-flags "$TLS_VERSION" \
        802-1x.identity "$Identity" \
        802-1x.ca-cert "$ConfDir/easyroam_root_ca.pem" \
        802-1x.client-cert "$ConfDir/easyroam_client_cert.pem" \
        802-1x.private-key-password "$Pwd" \
        802-1x.private-key "$ConfDir/easyroam_client_key.pem"
 

Anhand eines Rasperry Pi's 3 Model B+ wird exepmplarisch gezeigt, wie ohne grafische Oberfläche ein easyroam Profil installiert werden kann.

Um die einzelnen Komponenten wie das Client Zertifikat, der Private Key und das RootCA Zertifikat zu extrahieren wird das folgende Script aufgerufen, welches auf der Grundlage des Scripts der Universität Greifswald angepasst wurde:

#!/bin/bash
# This script extract all the necessary information from the easyroam PKCS12 File and put it under /etc/easyroam-certs

# Usage:   bash easyroam_extract.sh <YOUR-PKCS12-File>
set -e

# check if we are root

if [[ $EUID -ne 0 ]]; then
    echo "You must be root to run easyroam_extract.sh." 1>&2
    exit 100
fi


ConfDir="/etc/easyroam-certs"

[ -d "$ConfDir" ] || mkdir -p "$ConfDir"

# check input file

if [ -z "$1" ]; then
        echo ""
        echo "Your pkcs12 file is missed as input parameter."
        echo ""
        exit 1
else
        InputFile="$1"
fi
# set openssl legacy options if necessary

LegacyOption=
OpenSSLversion=$(openssl version | awk '{print $2}' | sed -e 's/\..*$//')
if [ "$OpenSSLversion" -eq "3" ]; then
        LegacyOption="-legacy"
fi

# check pkcs12 file

Pwd="pkcs12"

if ! openssl pkcs12 -in "$InputFile" $LegacyOption -info -passin pass: -passout pass:"$Pwd" > /dev/null 2>&1; then
        echo ""
        echo "ERROR: The given input file does not seem to be a valid pkcs12 file."
        echo ""
        exit 1
fi


# extract key, cert, ca and identity

openssl pkcs12 -in "$InputFile" $LegacyOption -nokeys -passin pass: -out "$ConfDir/easyroam_client_cert.pem"
openssl pkcs12 -in "$InputFile" $LegacyOption -nocerts -passin pass: -passout pass:"$Pwd" -out "$ConfDir/easyroam_client_key.pem"
openssl pkcs12 -info -in "$InputFile" $LegacyOption -nokeys -passin pass: -out "$ConfDir/easyroam_root_ca.pem" > /dev/null 2>&1
openssl x509 -noout -in "$ConfDir/easyroam_client_cert.pem" -subject | awk -F \, '{print $1}' | sed -e 's/.*=//' -e 's/\s*//' >  "$ConfDir/identity"
echo "Done."

Die wpa_supplicant.conf im Verzeichnis /etc/wpa_supplicant:

ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
country=DE

network={
   ssid="eduroam"
   scan_ssid=1
   key_mgmt=WPA-EAP
   proto=WPA2
   eap=TLS
   pairwise=CCMP
   group=CCMP
   identity="12345678910111213abcd@realm_der_einrichtung.tld"   # <---- Hier muss der CN (Common Name), also der Wert aus der Datei /etc/easyroam-certs/identity s. Beispiel links. Auf keinen Fall die Pairwise-ID eingeben!!!!!
   altsubject_match="DNS:easyroam.eduroam.de"
   ca_cert="/etc/easyroam-certs/easyroam_root_ca.pem"
   client_cert="/etc/easyroam-certs/easyroam_client_cert.pem"
   private_key="/etc/easyroam-certs/easyroam_client_key.pem"
   private_key_passwd="pkcs12"
}
sudo reboot

Sicherstellen, dass eine Internetverbindung besteht, LAN oder WLAN (nicht eduroam).

1. Wenn alte eduroam oder easyroam Konfigurationen vorhanden sind, diese bitte löschen.

2. Die easyroam app herunterladen: https://www.easyroam.de/debapp/easyroam.deb und über das GUI mit einem „Doppelklick“ auf die .deb-Datei die app installieren. Für die Installation werden Root-Rechte benötigt.

2. easyroam app starten. In der Regel wird ein Browser automatisch geöffnet.

3. Im anschließenden WAYF (Where Are You From) findet man seine Einrichtung und meldet sich über seinen DFN-AAI IdP Account an. Sollte die Heimateinrichtung nicht im WAYF aufgeführt werden, kann stattdessen der Eintrag „easyroam im Regelbetrieb“ ausgewählt werden.

4. Nach erfolgreicher DFN-AAI Anmeldung, wird das Hauptmenü „Home“ aufgerufen. Mit einem Klick auf die Schaltfläche „Neues Profil installieren“ wird ein neues easyroam Profil installiert.

5. Das neu installierte easyroam Profil wird als „Gültig“ markiert im Hauptmenü angezeigt.

Bisher liegen uns keine Erfahrungsberichte vor.

  • Zuletzt geändert: vor 9 Tagen