Bezüglich „alle Benutzer dürfen sich mit diesem Netzwerk verbinden“

Bezüglich „alle Benutzer dürfen sich mit diesem Netzwerk verbinden“

Ich bin Student an einer Universität, die über eduroam verfügt, ein drahtloses WPA2-Enterprise-Netzwerk. Auf meinem Konto ist dies mit NetworkManager konfiguriert. Dies ist die Übersicht über nm-connection-editor:

Bildbeschreibung hier eingeben Bildbeschreibung hier eingeben

Ich habe mit dem Hinweis „Alle Benutzer dürfen sich mit diesem Netzwerk verbinden“ gekennzeichnet, dass es sich um eine Systemverbindung handelt. In der Praxis funktioniert das jedoch nicht:

  • Wenn ich automatisch in meine Awesome WM-Sitzung eingeloggt werde, ist mein (GNOME?) Schlüsselbund nicht entsperrt. Er fragt nach meinem Passwort, bevor er versucht, eine Verbindung herzustellen. Das ist ärgerlich, denn meine Festplatte ist sowieso verschlüsselt. Daher möchte ich das Passwort rootsozusagen als speichern.

  • Wenn ich mich mit KDE in einen anderen Account einlogge, funktioniert die Verbindung dort nicht.

Ich denke, hier gibt es zwei potenzielle Probleme:

  1. Die Zertifikatsdatei liegt in meinem Home-Verzeichnis. Andere Benutzerkonten können mein Home-Verzeichnis nicht lesen. Wenn ich das Zertifikat an einen zentralen Ort verschieben würde (wie /usr/share/ich vermute?), könnten andere Konten es verwenden, da das Zertifikat nicht mehr fehlen würde.

  2. Das Passwort ist in meinem lokalen Schlüsselbund in meinem Home-Verzeichnis gespeichert. Das Passwort müsste systemweit gespeichert werden.

Ich sehe sowieso keine Konfigurationsdateien. Von wasich lesespeichert NetworkManager seine Daten in einem Dienst, mit dem er über D-Bus kommuniziert. Daher werden die Daten gespeichertirgendwo.

Wie kann ich daraus eine systemweite Konfiguration machen, die für jeden Benutzer des Systems automatisch funktioniert?


Falls dies von Belang ist: Die Distribution ist Fedora 24.

Antwort1

Zum Anschluss anEDUROAM, (ein weltweiter akademischer Zusammenschluss von WLAN-Netzwerken mit Roaming von Benutzern zwischen Institutionen/Verbänden) unter Linux müssen Sie einrichten wpa_supplicant.

Die Anweisungen und Dateien können oft etwas spezifisch für die Fakultät und/oder die oberste EDUROAM-Länderebene sein. Daher werde ich auf eine Seite in Deutsch verlinken, die das EDUROAM-Setup für802.1Xim DE-Verband.

Ihr /etc/wpa_supplicant.confsollte ungefähr so ​​aussehen:

Netzwerk={
ssid="eduroam"
key_mgmt=WPA-EAP
eap=TTLS
Identität="[email geschützt]" # Ihr Login
domain_suffix_match="radius.lrz.de" # Ihr lokaler RADIUS-Server
subject_match="radius.lrz.de" # Ihr lokaler RADIUS-Server
anonymous_identity="[email geschützt]" # Ihr Login oder ein anonymer generischer Login
password="XXXX" # Ihr Passwort ca_cert="/etc/ssl/certs/Deutsche_Telekom_Root_CA_2.pem"
phase2="auth=PAP"
}

domain_suffix_matchund subject_matchdienen der Sicherheit, z. B. um sicherzustellen, dass Sie eine Verbindung zum echten RADIUS-Server herstellen und nicht zu einem gefälschten. Wenn Sie den Namen Ihres lokalen RADIUS-Servers nicht kennen, versuchen Sie, wpa_supplicantohne diese beiden Anweisungen zu arbeiten.

Möglicherweise haben Sie auch ein automatisches Installationsprogramm imKATZE(eduroam Configuration Assistant Tool)-Setup Ihrer Fakultät, das Ihnen möglicherweise weiterhilft. (Vorausgesetzt, die Fakultät hat eine CAT-Seite erstellt)

Wenden Sie sich für weitere Einzelheiten an den RADIUS/EDUROAM-Experten Ihrer Fakultät vor Ort.

Haftungsausschluss: Ich bin der RADIUS/EDUROAM-Betreuer einer Fakultät und derFreierRadiusBerater für diePT-Verband.

Antwort2

Bezüglich „alle Benutzer dürfen sich mit diesem Netzwerk verbinden“

Dadurch wird die Option „connection.permissions“ in festgelegt man nm-settings. Sie steuert, dass nur Ihr Systembenutzer die Verbindung ändern, sehen und verwenden kann. Dies bedeutet auch, dass die Verbindung nur dann automatisch hergestellt wird, wenn der Benutzer angemeldet ist. Auf einem normalen Einbenutzersystem spielt die Einstellung keine große Rolle (es sei denn, Sie möchten, dass die Verbindung vor der Anmeldung automatisch hergestellt wird).

In Bezug auf Passwörter

Für jede Kennworteigenschaft (z. B. WPA PSK, VPN-Geheimnisse usw.) unterstützt NetworkManager ein „Flags“-Attribut, mit dem das Kennwort systemweit gespeichert (im Klartext, in einer Datei, auf die nur Root zugreifen kann), aus der Benutzersitzung abgerufen, immer abgefragt oder nicht benötigt werden kann. Siehe secretsAbschnitt in man nm-setttings. In jedem Fall muss NM, wenn es ein Kennwort benötigt, das es nicht hat, ein anderes Programm darum bitten, es zu erhalten. Dieses Programm ist ein sogenannter „Geheimagent“, der den Benutzer entweder zur Eingabe des Kennworts auffordern oder es vom Schlüsselbund abrufen kann oder was auch immer. Ein solches Programm ist beispielsweise nm-applet, nmcli, gnome-shell, plama-nm. Wenn Sie also normalerweise eine grafische Sitzung wie KDE oder Gnome ausführen, wird ein solcher Agent tatsächlich ausgeführt. Dies bedeutet auch, dass Sie, wenn Sie vor der Anmeldung eine automatische Verbindung herstellen möchten, das Kennwort entweder systemweit speichern (im Klartext) oder irgendwie einen Geheimagenten einrichten müssen, der das Geheimnis von irgendwoher abruft (letzteres würde erfordern, dass Sie selbst etwas hacken, aber es ist sowieso unklar, woher Sie das Kennwort bekommen, da niemand angemeldet ist).

Wie Sie die Kennwort-Flags und damit den Kennwortspeicherort konfigurieren, können Sie mit verschiedenen NM-Clients tun. Wenn Sie es nm-connection-editorwie im obigen Screenshot verwenden, sehen Sie im Kennworteingabefeld ein kleines Symbol. Klicken Sie darauf und wählen Sie aus, was Sie möchten.

Beachten Sie, dass beispielsweise bei Gnome3, wenn Sie Ihren Schlüsselbund mit demselben Passwort wie Ihr Benutzerpasswort konfigurieren, der Schlüsselbund automatisch gelöscht werden kann, wenn sich der Benutzer anmeldet. Eine solche Konfiguration ermöglicht es Ihnen, das Passwort im Schlüsselbund zu speichern und automatisch eine Verbindung herzustellen, wenn Sie Ihre Gnome-Sitzung starten. Die Details können variieren und wahrscheinlich funktioniert etwas Ähnliches auch mit KDE.

Grüße Zertifikatsdateien

Alle Zertifikate in NetworkManager können entweder inline oder als Pfad gespeichert werden. Inline ist nicht so toll, und tatsächlich erlaubt nm-connection-editor nur die Angabe eines Pfads. Die Verwendung von Pfaden ist ebenfalls problematisch, da NetworkManager (und wpa-supplicant und die VPN-Plugins) als anderer Benutzer ausgeführt werden, sodass Sie selbst sicherstellen müssen, dass die Dateien für NetworkManager zugänglich sind. In der Praxis bedeutet das beispielsweise, sicherzustellen, dass sie die richtige SELinux-Beschriftung haben, was wiederum bedeutet, die Zertifikate nach zu kopieren ~/.cert. Dies wird eines Tages verbessert, indem ein Zertifikatsmanager (außerhalb von NetworkManager) vorhanden ist und statt der Weitergabe von Datei (Pfad) pkcs11-URLs verwendet werden, um auf Zertifikate im Speicher zu verweisen.

Wo Ihre Verbindungen gespeichert sind

Das hängt von Ihrem konfigurierten Einstellungs-Plugin ab (siehe pluginsin man NetworkManager.conf). Bei Fedora ist das ifcfg-rh,keyfilestandardmäßig der Fall. Die Verbindungen sind also vorzugsweise im ifcfg-rhFormat (siehe man nm-settings-ifcfg-rh, /etc/sysconfig/networking-scripts/ifcfg-rh*) und zweitens im Schlüsseldateiformat (siehe man nm-settings-keyfile, /etc/NetworkManager/system-connections).

Warum sich KDE anders verhält als Gnome, ist nicht klar. Wahrscheinlich hat es etwas mit dem Geheimagenten ( gnome-shellvs. plasma-nm) und der Einrichtung des Schlüsselbunds zu tun.

verwandte Informationen