Freeradius läuft nicht nach Update 7.1 -> 7.2

Hallo Tobi,

danke für deinen Zuspruch.
Ich habe das Update nochmals gemacht und jetzt läuft der Server wieder. Es gab ein Problem bei Samba. Die Rechte von /var/lib/samba/ntp_signd waren auf 0640 und mussten 0750 sein.

Aber: Mein Freeradius läuft nicht. Ich habe die Paketquellen aktualisiert (FreeRADIUS Packages | NetworkRADIUS) und auch die Einstellungen der Anleitung überprüft. Ebenfalls habe ich schon auf 7.1 Radius 3.2 im Einsatz gehabt.

Wenn ich mich mit Radius anmelden will, z.B. mit dem Handy, dann kommt „Zeitüberschreitung“ als Fehlermeldung.

Kann jemand helfen?

VG Daniel

Versuch mal
freeradius -X
Dann startet der im Debug Mode und gibt Fehlermeldungen aus….

Nett gemeinter Denkanstoß:

Ist eine Glaubens-/Philosophiefrage: aber aus solchen Gründen sollten nicht mehr alle Dienste auf dem Schulserver konsolodiert werden, sondern pro Dienst eine extra VM oder einen extra Container haben. So wäre man etwas undabhängiger von größeren Änderungen in den Paket-Abhängigkeiten, etc … :slight_smile:

Werd ich morgen früh anschauen. Danke für den Tipp.

Hallo Michael,

ich habe Probleme mit dem mschap-Modul vom freeradius.
Das ist die relevante Fehlermeldung (glaube ich zumindest).

Could not parse linuxmuster.lanwifi into separate domain/name parts!
free(): invalid pointer
===============================================================
INTERNAL ERROR: Signal 6: Aborted in pid 4678 (4.15.13-Ubuntu)
If you are running a recent Samba version, and if you think this problem is not                                                                                                                  yet fixed in the latest versions, please consider reporting this bug, see https:                                                                                                                 //wiki.samba.org/index.php/Bug_Reporting
===============================================================
PANIC (pid 4678): Signal 6: Aborted in 4.15.13-Ubuntu
BACKTRACE: 15 stack frames:
 #0 /lib/x86_64-linux-gnu/libsamba-util.so.0(log_stack_trace+0x34) [0x7f5cdfedd8                                                                                                                 74]
 #1 /lib/x86_64-linux-gnu/libsamba-util.so.0(smb_panic+0xd) [0x7f5cdfedde2d]
 #2 /lib/x86_64-linux-gnu/libsamba-util.so.0(+0x1dec5) [0x7f5cdfeddec5]
 #3 /lib/x86_64-linux-gnu/libc.so.6(+0x42520) [0x7f5cdf9c6520]
 #4 /lib/x86_64-linux-gnu/libc.so.6(pthread_kill+0x12c) [0x7f5cdfa1a9fc]
 #5 /lib/x86_64-linux-gnu/libc.so.6(raise+0x16) [0x7f5cdf9c6476]
 #6 /lib/x86_64-linux-gnu/libc.so.6(abort+0xd3) [0x7f5cdf9ac7f3]
 #7 /lib/x86_64-linux-gnu/libc.so.6(+0x89676) [0x7f5cdfa0d676]
 #8 /lib/x86_64-linux-gnu/libc.so.6(+0xa0cfc) [0x7f5cdfa24cfc]
 #9 /lib/x86_64-linux-gnu/libc.so.6(+0xa2a44) [0x7f5cdfa26a44]
 #10 /lib/x86_64-linux-gnu/libc.so.6(free+0x73) [0x7f5cdfa29453]
 #11 /usr/bin/ntlm_auth(main+0xc1d) [0x558272e812cd]
 #12 /lib/x86_64-linux-gnu/libc.so.6(+0x29d90) [0x7f5cdf9add90]
 #13 /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0x80) [0x7f5cdf9ade40]
 #14 /usr/bin/ntlm_auth(_start+0x25) [0x558272e815e5]
Can not dump core: corepath not set up
(28) mschap: ERROR: Program returned code (1) and output '\? (0xc000000d)'
(28) mschap: External script failed
(28) mschap: ERROR: External script says: \? (0xc000000d)
(28) mschap: ERROR: MS-CHAP2-Response is incorrect
(28) eap_mschapv2:     [mschap] = reject
(28) eap_mschapv2:   } # authenticate = reject

Die Fehlermeldungen gehen dann sinngemäß weiter, dass ich abgelehnt wurde. Das sollte aber alles nur eine Folge des obigen Fehlers ein…

Kann mir jemand helfen?

VG Daniel

PS:

radtest name passwort server 1812 secret

ergibt

Sent Access-Request Id 112 from 0.0.0.0:36213 to 10.0.0.1:1812 length 75
        User-Name = "..."
        User-Password = "..."
        NAS-IP-Address = 10.0.0.1
        NAS-Port = 1812
        Message-Authenticator = 0x00
        Cleartext-Password = "...."
Received Access-Reject Id 112 from 10.0.0.1:1812 to 10.0.0.1:36213 length 38
        Message-Authenticator = 0x805d2fb31529549e5636a98d72782a8f
(0) -: Expected Access-Accept got Access-Reject

Hallo zusammen,

stimmt das so:
root@server:~# ls -l /usr/bin/ntlm_auth
-rwxr-xr-x 1 root root 88448 Jan 5 2024 /usr/bin/ntlm_auth

Wenn ich in der mschap-Datei vom Radius die Zeile mit ntlm_auth auskommentiere und stattdessen etwas weiter unten winbind aktiviere, dann kann ich mich anmelden.

Sollte aber nicht so sein, oder?

VG Daniel

Das ist bei mir identisch.
Wir nutzen auch ntlm_auth aber bei Dir scheint das Problem ja direkt ganz oben in der Meldung zu stecken: Could not parse linuxmuster.lanwifi – gibt es diese Datei bei Dir?

Hallo Michael,

das ist keine Datei. Sondern das kommt von dem Kommando, welches die Gruppenzugehörigkeit abfrägt. (–require-member-of=linuxmuster.lan\wifi) Das wird nicht richtig erkannt.

ntml_auth kommuniziert ja mit dem Samba. Denke da passt irgendwas nicht bei mir. Ich habe aber keine Idee was?

VG Daniel

Hallo,

in der Regel wird bei Linux und insbesondere auf Kommandozeile mit \ ein Sonderzeichen maskiert. Es könnte sein, dass du dort entweder den Wert „linuxmuster.lan\wifi“, der ja vermutlich die Bedeutung Domain\Usergroup innehaben soll, entweder als Zeichenkette markieren musst, z.B. mit Anführungszeichen oder Hochkomma, oder du musst \ als Sonderzeichen mit \ maskieren. Probiere es einfach mal aus:

  • –require-member-of=„linuxmuster.lan\wifi“
  • –require-member-of=linuxmuster.lan\\wifi

MfG
Buster

Ich habe gerade danach gesucht:

locate ntlm_auth
cat /etc/freeradius/3.0/mods-enabled/ntlm_auth

Es kann sein, dass dort nicht der FQDN sondern nur der Samba-Domain-Name eingetragen werden muss?!!

In Deinem Fall also nur
--require-membership-of=LINUXMUSTER\wifi und nicht das .lan dazu. Bei uns ist das so und es funktioniert. Direkt vor dem Eintrag steht bei uns unter domain= ebenfalls nur der kurze Name … ist das bei Dir anders?

Wenn meine Vermutung zutrifft, stimmt der Abschnitt in der Anleitung nicht:
https://docs.linuxmuster.net/de/latest/systemadministration/network/radius/index.html
Chris (@cweikl) – wie siehst Du das?

Viele Grüße,
Michael

hth,
Michael

Hallo Michael, hallo Buster,

wenn ich … linuxmuster.lan\ \wifi in der entsprechenden Datei eintrage, dann erkennt er in der debug-Ausgabe linuxmuster.lan\wifi.

In der Doku von radius steht, dass nach --require-membership-of ein String-Argument erwartet wird.
Bei mir steht da beides Male linuxmuster.lan. Ich werde deinen Vorschlag testen Michael.

VG Daniel

Hallo Daniel,

ich weiß nicht, ob Dich das gerade weiterbringt, aber bei mir sieht das (anonymisiert) so aus (und funktioniert):

Datei /etc/samba/smb.conf

[global]
workgroup = LMN7
realm = LMN7.MEINE-DOMAIN.DE

Datei /etc/freeradius/3.0/mods-enabled/mschap

ntlm_auth = "/usr/bin/ntlm_auth --allow-mschapv2 --request-nt-key --domain=LMN7 --require-membership-of=LMN7\wifi --username=%{%{Stripped-User-Name}:-%{%{User-Name}:-None}} --challenge=%{%{mschap:Challenge}:-00} --nt-response=%{%{mschap:NT-Response}:-00}"

Viel Erfolg!
Jens

Hallo Jens,
danke fürs mitdenken.

Das mit dem LMN7 bzw. LINUXMUSTER umschreiben habe ich gemacht, hat mich noch nicht weiter gebracht, ist aber vermutlich jetzt richtig.

Wie sieht denn das bei euch aus?

root@server:~# ls -l /etc/samba/smb.conf -rw-r--r-- 1 root root 1250 Aug 31 10:41 /etc/samba/smb.conf

Wie sieht es mit weiteren Rechten von Dateien aus, auf die freeradius zugreift? Kann da noch etwas nicht stimmen?

Was mich halt so verwundert ist, dass es unter 7.1 alles stabil gelaufen ist und mit dem Update nicht mehr geht.

VG Daniel

Die Rechte stimmen so … kennst Du diesen Thread?

Vielleicht hilft das weiter — auch, wenn es da teilweise um Version 3.2 vom Freeradius-Server geht…

Hallo Michael,

kenne ich, danke. Habe ich auch befolgt, hat mich aber nicht weitergebracht.

Ich denke inzwischen, dass es läuft. radtest ist erfolgreich, also müsste es gehen :slight_smile: . (Test in der Schule steht noch aus.)

Ich habe mit apt purge freeradius freeradius-config eine komplette Deinstallation gemacht. Bei den Paketen bin ich zurück auf Version 3.0, war zuvor auf 3.2.
Danach habe ich nach Anleitung konfiguriert, als Domain in mschap und ntlm_auth nur LINUXMUSTER angegeben, wie von dir empfohlen.
Hatte noch nen Zombiprozess von der alten Installation, den musste ich erst killen und dann ist der freeradius gestartet und die Testanmeldung über die Konsole hat geklappt.

Danke für die Unterstützung!

VG Daniel

Hi.
Schön, dass es wieder läuft … @Tobias hatte vor einiger Zeit ja ebenfalls Probleme mit dem Upgrade auf Version 3.2

Ich nehme aber nochmal das auf, was @maxim oben gesagt hat: Vermutlich ist es sinnvoller, den freeradius-Server vom v7-Server abzudocken und ihn in eine eigene Umgebung zu packen. Wir haben das (Asche auf mein Haupt) zwar auch noch nicht umgesetzt aber über solche Updates stolpert man dann zwangsläufig.

Viele Grüße,
Michael

1 „Gefällt mir“

Hallo zusammen!

Da ich gerade das Update von 7.1 > 7.2 gemacht habe und auch Probleme mit dem Freeradius hatte, hier meine Lösung, die denke ich einiges zusammenfasst und hoffentlich für andere nützlich ist.

Ich hatte unter 7.1 Freeradius 3.2 aus den bekannten Gründen am Laufen. Also nach dieser Anleitung mit extra sources.list und extra Config-Verzeichnis /etc/freeradius/3.2.

Nach dem 7.1 > 7.2 Update war freeradius nicht installiert, vermutlich, weil noch die alten Packetquellen in der sources.list waren.

Also habe ich die neuen eingepflegt nach dieser Anleitung.

Und dann Freeradius installiert.

Leider lief er dann nicht, weil er die Config-Files in /etc/freeradius/ und nicht die alten in /etc/freeradius/3.2 verwendet, obwohl im Startskript das Verzeichnis 3.2 drin stand. Entscheidender Hinweis war dieser - vielen Dank dafür!

Dann habe ich alle config-Files von /etc/freeradius/3.2 nach /etc/freeradius kopiert und die Zertifikate nach Anleitung in /etc/freeradius/certs neu erstellt und auch gleich nochmal alle relevanten Config-Files mit der Anleitung abgeglichen.

Jetzt lief er schon fast - ich musste noch den zweiten Backslash in /etc/freeradius/mods-enabled/mschap einfügen, wie hier weiter oben beschrieben.

Auch, wenn es wohl keine Auswirkungen hatte, habe ich aus den Startscript /etc/default/freeradius das Config-Verzeichnis rausgenommen - dort steht jetzt wieder:
# Options for the FreeRADIUS daemon. FREERADIUS_OPTIONS=""

Und ich hatte beim Testen noch die Fehlermeldung, dass in /etc/freeradius/mods-enabled/eap die Zeile
dh_file = ${certdir}/dh
inzwischen obsolet sei und man sie auskommentiert werden soll.

Jetzt läuft er wieder. Eine Neuinstallation mit neuer Konfiguration wäre aber eventuell schneller gegangen…hoffe, er hält dem nächsten Update stand…!

Vielleicht sollte man die Doku gleich auf die 3.2 umschreiben und auch das Problem mit dem Doppel-Backslash dort nennen?!

Viele Grüße und danke an alle, die hierzu Hinweise gaben!

Grüße Noah