Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung |
de:eduroam:easyroam [2024/11/22 17:56] – [Installation der easyroam Profile auf Linux Geräten] Ralf Paffrath | de:eduroam:easyroam [2024/12/01 11:28] (aktuell) – [Installation der eduroam Profile auf ANDROID, wenn alle Stricke reißen] Ralf Paffrath |
---|
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. | 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 drei Sprachen: Deutsch, Englisch und Chinesisch (wird zur Zeit überarbeitet). | 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 [[https://doku.tid.dfn.de/de:eduroam:easyroam-anleitungen|hier]]. | Die Anleitungen auf einem Blick finden die easyroam Nutzenden [[https://doku.tid.dfn.de/de:eduroam:easyroam-anleitungen|hier]]. |
Domain: easyroam.eduroam.de | Domain: easyroam.eduroam.de |
Nutzerzertifikat auswählen: Dateinamen, den man, s. oben, beim Einlesen der PKCS12-Datei vergeben hat, auswählen, z.B. MyAndroidCert</code> | Nutzerzertifikat auswählen: Dateinamen, den man, s. oben, beim Einlesen der PKCS12-Datei vergeben hat, auswählen, z.B. MyAndroidCert</code> |
<alert>ACHTUNG: Als Identität gibt man die Seriennummer des easyroam Pseudozertifikats an, gefolgt vom easyroam Realm der EIGENEN!!! Einrichtung. | <alert>ACHTUNG: Die hier aufgeführten Beispiele sind als Illustration gedacht und sollten keinesfalls unreflektiert via copy + paste übernommen werden! \\ \\ Als Identität gibt man die Seriennummer des easyroam Pseudozertifikats an, gefolgt vom easyroam Realm der EIGENEN!!! Einrichtung. |
Beispiel: Wenn vorher der Realm anonymous@dfn.de oder anonymous@uni-greifswald.de eingegeben wurde, muss nun vor dem dfn.de oder vor uni-greifswald.de ein easyroam-pca stehen, mit Angabe der Seriennummer des Pseudozertifikats, z.B. 12345678910@easyroam-pca.dfn.de oder 12345678910@easyroam-pca.uni-greifswald.de. Die Seriennummer und der Realm, also 12345678910@easyroam-pca.dfn.de und 12345678910@easyroam-pca.uni-greifswald.de sind in der Anleitung hier nur Beispiele, bitte nicht übernehmen!!! | Beispiel: Wenn vorher der Realm anonymous@dfn.de oder anonymous@uni-greifswald.de eingegeben wurde, muss nun vor dem dfn.de oder vor uni-greifswald.de ein easyroam-pca stehen, mit Angabe der Seriennummer des Pseudozertifikats, z.B. 12345678910@easyroam-pca.dfn.de oder 12345678910@easyroam-pca.uni-greifswald.de. Die Seriennummer und der Realm, also 12345678910@easyroam-pca.dfn.de und 12345678910@easyroam-pca.uni-greifswald.de sind in der Anleitung hier nur Beispiele, bitte nicht übernehmen!!! |
Die Identität ist in der Regel der CN (Common Name) des easyroam Pseudozertifikats. Die Übereinstimmung von Identität und CN im easyroam Pseudozertifikat wird vom RADIUS Server geprüft. Ohne korrekte Eingabe der Identität ist keine Anmeldung in eduroam via easyroam möglich. | Die Identität ist in der Regel der CN (Common Name) des easyroam Pseudozertifikats. Die Übereinstimmung von Identität und CN im easyroam Pseudozertifikat wird vom RADIUS Server geprüft. Ohne korrekte Eingabe der Identität ist keine Anmeldung in eduroam via easyroam möglich. |
'eap=TLS' | 'eap=TLS' |
'proto=WPA RSN' | 'proto=WPA RSN' |
'identity="76673789883214453797@easyroam.realm_der_einrichtung.tld"' # <---- Hier muss der CN (Common Name), also der Wert der Datei /etc/easyroam-certs/identity s. Beispiel links. Auf keinen Fall die Pairwise-ID eingeben!!!!! | '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"' | 'client_cert="/etc/easyroam-certs/easyroam_client_cert.pem"' |
'private_key="/etc/easyroam-certs/easyroam_client_key.pem"' | 'private_key="/etc/easyroam-certs/easyroam_client_key.pem"' |
Mit Root Rechten wird folgendes Kommando aufgerufen:<code>netctl start easyroam </code>Soll permanent easyroam installiert werden, so wird folgendes Kommando aufgerufen:<code>netctl enable easyroam</code> | Mit Root Rechten wird folgendes Kommando aufgerufen:<code>netctl start easyroam </code>Soll permanent easyroam installiert werden, so wird folgendes Kommando aufgerufen:<code>netctl enable easyroam</code> |
| |
=== Verwendung der extrahierten easyroam Profile am Beispiel des Netzwerk Managers mit der Bezeichnung NetworkManager === | === 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 {{ :de:eduroam:easyroam_nmcli.sh |Scripts}} der [[https://rz.uni-greifswald.de/dienste/technische-infrastruktur/wlan-eduroam/linux/|Universität Greifswald]] angepasst wurde: | Nachdem die Schritte 1. bis 5. ausgeführt und die easyroam Zertifikate extrahiert wurden, wird folgendes Script aufgerufen, welches auf der Grundlage des {{ :de:eduroam:easyroam_nmcli.sh |Script}} der [[https://rz.uni-greifswald.de/dienste/technische-infrastruktur/wlan-eduroam/linux/|Universität Greifswald]] angepasst wurde: |
<code> | <code> |
#!/bin/bash | #!/bin/bash |
| |
# Usage: bash easyroam_nmcli.sh | # Usage: bash easyroam_nmcli.sh |
| |
set -e | set -e |
[ -f /etc/easyroam-certs/identity ] && Identity=$(cat "$ConfDir/identity") || { echo "Aborted, identity missing"; exit 1; } | [ -f /etc/easyroam-certs/identity ] && Identity=$(cat "$ConfDir/identity") || { echo "Aborted, identity missing"; exit 1; } |
| |
| Pwd="pkcs12" |
# check for nmcli | # check for nmcli |
| |
exit 1 | exit 1 |
fi | fi |
| |
| |
# configure parameters | # configure parameters |
Pwd="pkcs12" | |
| WIntName=$(iw dev | awk '$1=="Interface"{print $2}') |
| |
| WOn="GENERAL.STATE:" |
WLANName="eduroam" | WLANName="eduroam" |
| |
ALT_SUBJECT="DNS:easyroam.eduroam.de" | ALT_SUBJECT="DNS:easyroam.eduroam.de" |
| |
awk '$1==c{ print $2 }' c="$WLANName" | \ | awk '$1==c{ print $2 }' c="$WLANName" | \ |
xargs -rn1 nmcli connection delete uuid | 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 | # Create new connection |
802-1x.private-key-password "$Pwd" \ | 802-1x.private-key-password "$Pwd" \ |
802-1x.private-key "$ConfDir/easyroam_client_key.pem" | 802-1x.private-key "$ConfDir/easyroam_client_key.pem" |
</code> | </code> |
| <alert>Im File /etc/NetworkManager/NetworkManager.conf kann mit \\ |
| \\ |
| [device]\\ |
| wifi.scan-rand-mac-address=yes \\ |
| \\ |
| die Randomisierung der MAC-Adresse konfiguriert werden.</alert> |
| |
| |
pairwise=CCMP | pairwise=CCMP |
group=CCMP | group=CCMP |
identity="12345678910111213abcd@realm_der_einrichtung.tld" # <---- Hier muss der CN (Common Name), also der Wert der Datei /etc/easyroam-certs/identity s. Beispiel links. Auf keinen Fall die Pairwise-ID eingeben!!!!! | 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" | altsubject_match="DNS:easyroam.eduroam.de" |
ca_cert="/etc/easyroam-certs/easyroam_root_ca.pem" | ca_cert="/etc/easyroam-certs/easyroam_root_ca.pem" |