Docker für Freeradius

Hallo zusammen,
ich habe mich in Korrespondenz mit @baumhof daran gemacht eine kursierende Anleitung von @foer für die Freeradius-Integration in die LMN7 in einen Docker-Container zu integrieren. Das wichtigste zuerst, hier liegt er:

Allerdings sind auf dem Weg ein paar Probleme aufgetaucht bei denen ich nicht weiterkomme. DIe Kurzfassung: Da Freeradius meines Wissens nach nur mit einer lokalen Samba-Instanz sprechen kann tritt der Docker beim ersten Start der Domain bei, wahlweise als DC, RODC oder Memberserver. Als DC funktioniert die Anleitung auch (die beschrieb die Installation auf dem eigentlichen Server), als RODC oder Member sagt Radius dass die Anmeldedaten inkorrekt wären. Nachteilig beim DC-Betrieb ist die Zeit für die Replikation, sprich bis das System mitbekommt dass ein Benutzer in der Wifi Gruppe ist. Mit winbind-Authentifizierung funktioniert alles auch als Member und damit unverzüglich, allerdings weiß ich nicht wie da eine Gruppeneinschränkung umzusetzen wäre. Vielleicht wäre auch eine direkte LDAP-Abfrage sinnvoller? Falls sich jemand gut mit Radius auskennt wäre ich über Hilfestellung dankbar, ich bin da mit meinem Latein am Ende.

Hallo r.rosenberger,

ich möchte mich bedanken dass du dich der Sache annimmst. Leider kann ich nicht helfen, aber mit diesem Post pushen wir es nochmal an oben.

Beste Grüße

Thorsten

Hallo Robin,

wir betreiben einen Freeradius-Server der weder DC noch RODC ist. Ein Domainjoin hat da ausgereicht und auch wir nutzen hier winbind. Letztlich prüft der Radius im mschap-Modul und im ntlm_auth die Gruppenzugehörigkeit der Benutzer.

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

ntlm_auth = „/usr/bin/ntlm_auth --request-nt-key --domain=DOMÄNE --require-membership-of=DOMÄNE\wifi --username=%{%{Stripped-User-Name}:-%{%{User-Name}:-None}} --challenge=%{%{mschap:Challenge}:-00} --nt-response=%{%{mschap:NT-Response}:-00}“

/etc/freeradius/3.0/mods-enabled/ntlm_auth
exec ntlm_auth {
wait = yes

eine Zeile

program = „/usr/bin/ntlm_auth --request-nt-key --domain=DOMÄNE --require-membership-of=DOMÄNE\wifi --username=%{mschap:User-Name} --password=%{User-Password}“
}

Mehr brauchts nicht.

Gruß
Thomas

Hallo Thorsten und Thomas,
danke für den Bump :slight_smile:
Die ntlm-Zeilen sehen bei mir genauso aus, den Join als Member habe ich zugegebenermaßen recht rudimentär gemacht (ohne windbind in shadow/groups oder nss). Da der Fehler beim DC in der gleichen Konstellation nicht auftritt, beim RODC aber schon habe ich da ehrlich gesagt nicht weiter untersucht.
Mit windbind-Auth meine ich im mschap die ntlm-Zeile ganz rauszunehmen und stattdessen die winbind-Zeilen der Standard-Config zu entkommentieren, damit klappts immer. Denkbar dass das mit der Dockerisierung zu tun hat…

FYI für alle: Ich bin mit @baumhof überein gekommen, dass wir wegen der Komplexität des Docker+Domainjoin auf eine Scriptbasierte Installation wechseln, ein Entwurf des Scripts liegt im github. Es sollte auf den Server (meine Präferenz) oder eine gejointe Maschine angewendet werden und die nötigen Einstellungen selbst vornehmen. Gerne auch mal gegen eine VM testen :slight_smile:

Hi zusammen,
die Scriptvariante ist schon länger im Github und hat jetzt zwei Praxistests hinter sich, ich denke dass Sie recht stabil funktioniert. Sie ist komplett reversibel, so dass sie meiner Ansich nach auf dem Server selbt am besten aufgehoben ist.
Ich bin nicht 100% zufrieden mit der Radius-Konfiguration (sie wirkt recht redundant auf mich…), falls hier jemand nachholfen kann würde ich mich freuen, funktionieren tut sie allerdings auch so.
Grüße,
Robin

Hi :slight_smile:
Super! Danke für deine Arbeit!

Das RODC-Problem gibt es hier auch:

Ich denke das ist sehr ähnlich gelagert.

LG Jesko