man braucht für den RADIUS keine LE. Es wird auch ausdrücklich empfohlen, für Radius keine öffentlichen Zertifikate zu nehmen.
In der neuesten Android 11 Version musste ich für die RADIUS Konfiguration für PEAP-MSCHAPv2 sogar die CA importieren, mit der das RADIUS-Server-Zertifikat erstellt wurde. Sonst schlägt die Anmeldung am RADIUS mit dem Fehler „unknown CA“ fehlt. Man hat die vorher mögliche Funktion „nicht prüfen“ quasi vollständig deaktiviert.
Ich habe inzwischen versucht mit openssl ein selbstsiginiertes Zertifikat für radius.linuxmuster.lan zu erstellen und key- und crt-file dem Radius unterzujubeln. Nachdem ich Rechte und Besitzer der key-Datei angepasst habe, ist damit der Radius neu gestartet. Anmeldung mit dem Handy und der Domain radius.linuxmuster.lan klappt aber weiterhin nicht :(.
VG Daniel
Welche CA du importieren musst, hängt davon ab, welche Zertifizierungsstelle das Zertifikat für den RADIUS-Server erstellt hat. Läuft dein RADIUS auf dem lmn7-Server, liegt das Zertifikate vermutlich unter /etc/linuxmuster/ssl. Mit openssl x509 -in /etc/linuxmuster/ssl/cacert.crt -text -noout kannst du das Zertifikat prüfen.
Wie bekommt man das aufs Smartphone? z.B. in die Nextcloud hochladen und dann mit dem Handy abrufen und entsprechend Anleitung importieren.
Viele Grüße
Thomas
PS: Zum Troubleshooten den freeradius-Dienst mit systemctl stop freeradius.service anhalten und mit freeradius -X starten. Dann siehst du die detaillierte Ausgabe mit allen Fehlern.
Ich bin auch gerade am Aufsetzen eines RADIUS-Servers für mein privates WLAN. Ich verwende dafür zwar kein lmn, aber für folgende RADIUS-Konfiguration (bei der auch gleich das VLAN 34 zugewiesen wird)…:
Für die Sicherheit des WPA2-Enterprise-WLANs (und insbesondere der Clients) sind zwei Punkte wichtig:
Benutze unbedingt WLAN-CA-Zertifikate am Client!
Wie @tjordan geschrieben hat, sollte dabei für die WLAN-Authentifizierung ein privates, selbst-signiertes Zertifikat verwendet werden. Das könnte ja auf der Schul-Homepage öffentlich zum Download angeboten werden, es braucht nicht geheim zu sein.
Der Vollständigkeit halber hier noch die übrige RADIUS-Konfiguration als Beispiel:
AP-Konfiguration unter /etc/freeradius/3.0/clients.conf:
ich würde gerne ein eigenes Cert für den Radius erstellen. Daniel hat ja (so wie es mir scheint) das vorhandene Cert der lmn auch für Radius verwendet.
Nun kann ich die vorhandene CA verwenden um das cert zu erstellen (also die gleiche CA wie das lmn Cert): kann mir jemand sagen, wie die Zeile dann aussehen muss?
openssl x509 …
?
Das wäre super.
Dann schreib ich auch am Ende eine Anleitung hier rein, wie ich das genau gemacht habe.
Ansonsten würde ich die Dateien des normalen certs in das freeradius Verzeichniss kopieren und die Radius eap conf auf diese zeigen lassen.
Die cacert.crt biete ich dann zum Download an (mit short URL).
Country Name (2 letter code) [AU]: DE
State or Province Name (full name) [Some-State]: Baden-Wuerttemberg
Locality Name (eg, city) []: Stuttgart
Organization Name (eg, company) [Internet Widgits Pty Ltd]: Musterschule
Organizational Unit Name (eg, section) []: EDV
Common Name (e.g. server FQDN or YOUR name) []:radius.linuxmuster.lan
ACHTUNG!! Hier ist es wichtig UNBEDINGT eine sinnvolle Domain zu verwenden. Weil diese Domain von den Nutzern bei der WLAN-Konfiguration angegeben sein muss. Ein Kurzname funktioniert hier nicht mehr.
Email Address []: admin@linuxmuster.lan
Please enter the following ‚extra‘ attributes
to be sent with your certificate request
A challenge password []:whatever
An optional company name []:MS Stuttgart
Mit folgendem Befehl wird das Zertifikat „radius.pem“ ausgestellt und über die ca signiert, das 365 Tage lang gültig ist:
super: vielen Dank.
Ich hab mich langsam schon ein wenig eingelsen.
Bei deiner Anleitung wird also keine eigene CA erstellt, sondern die der lokalen lmn7 verwendet: das ist mir recht.
Ich würde den radius.pem aber mit einer viel längeren Zeit erstellen: 4 Jahre fände ich gut … wobei: die Geräte, die die cacert.crt importiert haben, meckern ja nciht mehr, wenn ich ein neues .pem erstelle und dem radius unterschiebe … nur die anderen … aber wer will schon jedes Jahr eine neue .pem erstellen.
Das mit dem Common Name ist mir klar: das ist der Knackpunkt.
Und deswegen will ich ja ein eigenes cert/key Paar (also .pem) erstellen: damit da radius.MEINEDOMAIN.LAN steht.
vielleicht muss ich für eap noch aus der .pem das .crt und den .key rausholen: mal sehen. Das ist nur ein Einzeiler (ich glaub eap.conf will crt und key und nciht nur .pem… aber vielelciht erinnere ich das auch falsch).
Tausend Dank: ich probier das übers Wochenende aus.
mit den Laufzeiten der Zertifikate ist das so eine Sache. Ich meine, mal gelesen zu haben das neuere Apple Releases eine Laufzeitbegrezung bei Zertifikaten haben.
Additionally, all TLS server certificates issued after July 1, 2019 (as indicated in the NotBefore field of the certificate) must follow these guidelines:
TLS server certificates must contain an ExtendedKeyUsage (EKU) extension containing the id-kp-serverAuth OID.
TLS server certificates must have a validity period of 825 days or fewer (as expressed in the NotBefore and NotAfter fields of the certificate).
Connections to TLS servers violating these new requirements will fail and may cause network failures, apps to fail, and websites to not load in Safari in iOS 13 and macOS 10.15.
So ganz eindeutig ist das nicht: Hier steht maximal 825 Tage oder weniger…unabhängig davon ob es user-imported oder administartor imported ist.
Mir ist lieber: Ich weiß ich muss jedes Jahr im Februar Zertifikate tauschen, als wenn plötzlich Leute schreiend vor mir stehen, ich erst den Fehler suchen muss…weil bei manchen gehts und bei manchen nicht und es stellt sich raus, irgendwelche Clients mögen das Zertifikat nicht mehr und ich muss dann sowieso tauschen.
die radius.pem.
Sehe ich es richtig, dass ich damit die ca vom server verwendet habe um mein cert selbst zu signieren?
Ich muss also die Datei /etc/linuxmuster/ssl/cacert.crt
vom server nehmen und am Client importieren. korrekt?
Das ist ja auch die, die ich in der eap Datei angebe unter:
ca_file = /etc/freeradius/3.0/certs/server.crt
die darüber genannten certification_file und private_key_file sind die eben erstellten radius.pem und radius-key.pem die ich im Verzeichnis
/etc/freeradius/3.0/certs/ habe.
Sie gehören root:freerad und haben 640 als Rechte.
Hallo.
Ich pushe diesen Thread nochmal nach oben, weil wir uns auch wieder mit der Frage beschäftigen, ob ein WPA3-Enterprise-WLAN nicht die bessere Wahl ist … allerdings würde ich das Verteilen der Zertifikate gerne sofort mit relution verknüpfen, so dass das Verteilen und Aktualisieren der Zertifikate automatisch geschehen kann. Dazu gibt es unter Relution den Punkt:
Damit das Ganze über Relution funktioniert, brauchst du eine PKI, die SCEP (Simple Certificate Enrollment Process) unterstützt. Kann die lmn bislang nicht.
Momentan ist was du vorhast, nur über Drittanbietersoftware möglich,. z.B. mit openxpki eine eigene PKI aufzusetzen welche SCEP unterstützt.
Die Idee, dass jedes Gerät sein eigenes Zertifikat für EAP-TLS-Authorisierung hat, ist natürlich das Optimum. Alternativ könnte man versuchen, ein Client-Zertifikat über erstellen, mit der CA der lmn zu signieren und dieses eine Client-Zertifikat mit Relution auf alle Mobilgeräte zu verteilen. Ich persönlich kenne mich aber mit Relution nicht gut genug aus um bestätigen zu können, dass das so funktioniert.
Die Idee, das Enrollment über SAMBA zu machen wäre gut, geht aber nicht, da es momentan mit samba-tool keine Befehle für das das Verwalten der Richtlinie für die Server Site Extension gibt. (siehe 14 Certificate Auto Enrollment Policy | Group Policy on Linux). Was ab Samba 4.16 funktioniert ist, das sich ein Linux CLIENT per Autoenrollment von einem Windows Server ein Zertifikat holt.
Hallo Thomas,
genau das war mein Gedanke, als ich die neuen Settings unter relution gesehen habe. Aber ob und wie das funktioniert, weiß ich nicht.
In Sachen WPA3-Enterprise WLAN bin ich aber noch einige Schritte weiter vorne, denn ich versuche zunächst noch zu verstehen, wie/ob es überhaupt im v7-lmn-Setup möglich ist, dass man ein WPA3-Enterprise-WLAN nur für Lehrergeräte einrichtet!? Es müsste also die Gruppenzugehörigkeit „teacher“ abgefragt werden und nicht zusätzlich die Gruppenzugehörigkeit „p_wifi“. Ob das überhaupt so geht, weiß ich bisher nicht. Falls es möglich ist, wäre das Optimum vermutlich, dass der Freeradius-Server beides bedient, also sowohl die Gruppenzugehörigkeit zu p_wifi als auch zu teachers. Ob das so einfach umsetzbar, steht aber auf einem anderen Blatt. Daher bin ich auch weiterhin an der Lösung in Sachen freeRADIUS + LDAP interessiert, die ja im Parallelthread schon diskutiert wurde.
mach doch einfach einen zweiten RADIUS-Server der als Gruppenzugehörigkeit die Gruppenzugehörigkeit teachers abfragt. Ist zwar nicht elegant, aber funktioniert.
Hallo Thomas,
daran habe ich auch schon gedacht aber ich dachte bisher, dass das aufgrund der nicht vorhandenen Eleganz der letzte Weg ist, den man einschlagen sollte
Im Unifi-Controller ist das mit unterschliedlichen RADIUS-Servern ja auch alles easy über die Profile regelbar. Da unser freeRADIUS-Server (entgegen der Empfehlung aus den docs) im Moment noch auf dem v7-Server läuft, habe ich schon mal einen Proxmox-Container mit freeRADIUS 3.2 hochgezogen.
Ich hänge mich für alles weitere dann mal an diesen Thread: