WPA2 Enterprise mit freeradius auf Server/Docker

Ich verschiebe das Thema in einen neuen Thread:

Fortsetzung der Diskussion von Unifi: WLAN abschalten über Schulkonsole:

Wer hat die Konfiguration Radius auf Server/Docker erfolgreich am Laufen so wie es hier beschrieben ist? Und mit welchen Accesspoints/Controller?

Ich verbringe nun schon ein paar Tage erfolglos damit das zu implementieren.

Danke!

Klaus

Hallo Klaus,

im anderen Thread hast du geschrieben, dass du Probleme hast, aber radtest Access-Accept als Antwort bekommt? Da sollte doch eigentlich ein Access-Reject kommen, oder? Oder meinst du, dass der radtest vom Server aus erfolgreich ist, aber nicht bei einer Anfrage vom AP? Kannst du mal die komplette Debugausgabe schicken, also vom Start der Anfrage bis zum Ende?

Ich habe mich noch zusätzlich hier entlang gehangelt (stimmt aber mit der Doku überein in fast allen Punkten): http://deployingradius.com/documents/configuration/active_directory.html

Bei uns klappt es, sowohl bei Anfragen vom Cisco WLC als auch über das Captive Portal der pfSense.

vG Stephan

Hallo Stephan,

vielen Dank für Deine Unterstützung! Auch an @Michael im anderen Thread für die Linksammlung. Gut zu wissen, daß man bei Problemen hier nicht alleine ist :slight_smile:

Ich habe nun nochmal von vorne begonnen und mich strikt an die Anleitung in der Dokumentation mit der Installation auf dem Server/Dockerhost gehalten.

Mein Fehler war, daß ich die Samba Konfiguration in meinen vorhergehenden Versuchen in der /etc/samba/smb.conf.admin gemacht hatte, weil man ja die /etc/samba/smb.conf nicht bearbeiten sollte, da die durch ein Update überschrieben werden könnte.

Also hatte ich vorher in /etc/samba/smb.conf.admin

[global]
ntlm auth = mschapv2-and-ntlmv2-only

root@server:~# testparm -v |grep ntlm

...
Press enter to see a dump of your service definitions

	ntlm auth = mschapv2-and-ntlmv2-only

Sieht also so aus, als ob Samba die Konfiguration übernimmt. Ist aber nicht so, weil die WPA2 Enterprise Authentifizierung dann scheitert.

Schreibe ich die ntlm auth Definition in die /etc/samba/smb.conf funktioniert die WPA2 Enterprise Authentifizierung. Hmm, muss ich nicht verstehen.

Jedenfalls nochmals vielen Dank!

Klaus

Hallo!

Also hier tuts.

smb.conf:

# /etc/samba/smb.conf.setup
#
# Don't edit this file!!!
# Add your stuff in /etc/samba/smb.conf.admin.
#
# thomas@linuxmuster.net
# 20200722
#

[global]
workgroup = LINUXMUSTER
realm = LINUXMUSTER.LAN
netbios name = SERVER
server role = active directory domain controller
dns forwarder = 10.0.0.254
registry shares = yes
host msdfs = yes
tls enabled = yes
tls keyfile = /etc/linuxmuster/ssl/server.key.pem
tls certfile = /etc/linuxmuster/ssl/server.cert.pem
tls cafile = /etc/linuxmuster/ssl/cacert.pem
tls verify peer = ca_and_name
ldap server require strong auth = no
rpc_server:spoolss = external
rpc_daemon:spoolssd = fork
spoolss:architecture = Windows x64
printing = cups
printcap name = cups
time server = yes

[netlogon]
path = /var/lib/samba/sysvol/linuxmuster.lan/scripts
read only = No
acl allow execute always = yes

[sysvol]
path = /var/lib/samba/sysvol
read only = No

[printers]
browseable = No
path = /var/spool/samba
printable = Yes
read only = No

[print$]
path = /var/lib/samba/printers
read only = No

# including custom admin stuff
include = /etc/samba/smb.conf.admin

smb.conf.admin:

# /etc/samba/smb.conf.admin
#
# thomas@linuxmuster.net
# 20180713
#
# add here your custom admin stuff
#

[global]
ntlm auth = mschapv2-and-ntlmv2-only

testparm -s:

Load smb config files from /etc/samba/smb.conf
rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384)
Processing section "[netlogon]"
Processing section "[sysvol]"
Processing section "[printers]"
Processing section "[print$]"
Processing section "[default-school]"
Processing section "[linuxmuster-global]"
Loaded services file OK.
WARNING: You have some share names that are longer than 12 characters.
These may not be accessible to some older clients.
(Eg. Windows9x, WindowsMe, and smbclient prior to Samba 3.0.)
Server role: ROLE_ACTIVE_DIRECTORY_DC

# Global parameters
[global]
	dns forwarder = 10.0.0.254
	ldap server require strong auth = No
	ntlm auth = mschapv2-and-ntlmv2-only
	passdb backend = samba_dsdb
	printcap name = cups
	realm = LINUXMUSTER.LAN
	registry shares = Yes
	server role = active directory domain controller
	time server = Yes
	tls cafile = /etc/linuxmuster/ssl/cacert.pem
	tls certfile = /etc/linuxmuster/ssl/server.cert.pem
	tls keyfile = /etc/linuxmuster/ssl/server.key.pem
	tls verify peer = ca_and_name
	workgroup = LINUXMUSTER
	rpc_server:tcpip = no
	rpc_server:winreg = embedded
	rpc_server:ntsvcs = embedded
	rpc_server:eventlog = embedded
	rpc_server:srvsvc = embedded
	rpc_server:svcctl = embedded
	rpc_server:default = external
	winbindd:use external pipes = true
	spoolss:architecture = Windows x64
	rpc_daemon:spoolssd = embedded
	rpc_server:spoolss = embedded
	idmap config * : backend = tdb
	map archive = No
	map readonly = no
	store dos attributes = Yes
	vfs objects = dfs_samba4 acl_xattr


[netlogon]
	acl allow execute always = Yes
	path = /var/lib/samba/sysvol/linuxmuster.lan/scripts
	read only = No


[sysvol]
	path = /var/lib/samba/sysvol
	read only = No


[printers]
	browseable = No
	path = /var/spool/samba
	printable = Yes
	read only = No


[print$]
	include = /etc/samba/smb.conf.admin
	path = /var/lib/samba/printers
	read only = No


[default-school]
	comment = Share for default-school
	hide unreadable = Yes
	path = /srv/samba/schools/default-school
	read only = No
	strict allocate = Yes
	valid users = LINUXMUSTER\administrator @LINUXMUSTER\SCHOOLS


[linuxmuster-global]
	comment = Share for school global
	hide unreadable = Yes
	path = /srv/samba/global
	read only = No
	strict allocate = Yes
	valid users = LINUXMUSTER\administrator @LINUXMUSTER\SCHOOLS

VG, Thomas

Theoretisch schon, aber praktisch nicht:

Bei mir (und Klaus) klappt es nur, wenn es direkt in der smb.conf drin steht (warum auch immer…)

Dann sollte das als Bug an Samba gemeldet werden.

VG, Thomas

Abgesehen davon, diese Option wird für WPA2 Enterprise also zwingend benötigt? Spricht etwas dagegen das per default zu setzen?

VG, Thomas

Ja, wenn der Freeradius auf dem LMN Server läuft.

Nicht das ich wüsste.

Das spielt sicher auch eine Rolle, wenn man den OPNsense Freeradius benutzt. Ich werde das im nächsten Release einbauen.

VG, Thomas

1 Like

Super, danke Thomas!

Wg. Samba Bug Report werde ich sehen, wann ich dazukomme.

Viele Grüße
Klaus

Erledigt:

https://bugzilla.samba.org/show_bug.cgi?id=14453

Viele Grüße
Klaus

2 Like

@thomas
Die Option ntlm auth = mschapv2-and-ntlmv2-only hattest Du zwischenzeitlich in der smb.conf. Irgendwann ist das dann anscheinend bei einem Update wieder rausgeflogen. Da habe ich jetzt einen halben Tag gesucht, warum die Radius Authentifizierung nicht mehr klappt :frowning:

Nochmal:
Bitte auf keinen Fall Systemdateien bei einem Update ungefragt überschreiben!
Das Verhalten dahingehend bitte dringend ändern.

Danke und viele Grüße
Klaus

1 Like

Hallo Klaus,

Bitte auf keinen Fall Systemdateien bei einem Update ungefragt
überschreiben!
Das Verhalten dahingehend bitte dringend ändern.

das passiert normalerweise nicht.
Dass uns das gerade alle so trifft hat drei Gründe, denke ich:

  1. die smb.conf.admin, die nicht überschrieben wird, funktioniert nicht
    so wie sie soll (ntlm auth in der admin Datei hat keinen Effekt)
  2. eigentlich hatte Thomas in das update der smb.conf den Parameter
    ntlm auth = mschapv2-and-ntlmv2-only
    reingeschrieben, wie er hier schreibt:


hätte das geklappt, dann hätte uns das nicht in den Hintern gekniffen …
Warum das bei mir nicht ankam (ich habe am Dienstag das update gemacht)
weiß ich nicht

  1. dass die smb.conf überhaupt getauscht wurde hatte, meine ich,
    außergewöhnliche Gründe: es war wichtig, dass jeder die neue smb.conf
    auch bekommt: eine Nachfrage hätte dazu geführt, dass manche „nein“
    sagen … und dann geht bei denen was anderes nicht … das hätte
    wahrscheinlich mehr Leute betroffen.

Aber du hast recht: so sollte es nciht laufen … wir achten drauf :slight_smile:

LG

Holger

Hallo Holger,

danke für Deine Einschätzung!

Mit Nachfrage meine ich, daß die Debian Pakete so konfiguriert werden sollte, daß das Debian postinst Skript erkennt(md5sum) wenn die Originaldatei des Paketerstellers vom Anwender modifiziert wurde. Wenn das der Fall ist, sollte im Installationsprozess nachgefragt werden, ob die Datei überschrieben werden soll, oder man kann sich den diff ansehen, oder später anpassen. Das ist Debian/Ubuntu Standard. Bei den Linuxmuster Debian Paketen vermisse ich diesen Standard.

Viele Grüße
Klaus

Hallo Klaus,

du hast natürlich Recht. Wir hebeln da den Debian way aus. Das ist
historisch bedingt und sollte sicher stellen, wenn benötigte Optionen
nachgereicht werden müssen, dass das „anwenderfreundlich“ ohne
Interaktion gepatcht wird. Das Paketsystem erkennt halt nicht, wenn
unsere Templates geändert werden. Das hat jetzt wegen aus verschiedenen
Gründen vernachlässigter Sorgfalt (Zeitdruck, Arbeit über wacklige
Mobilfunkverbindung auf Remotedateisystem etc.) zum Crash geführt. Sorry
for the inconvenience. Werde das im nächsten Release rausnehmen und die
Konfigurationsverwaltung danach schrittweise auf ansible umstellen. Ein
Update der Konfiguration soll dann spezifisch und on demand gemacht
werden können.

VG, Thomas

Hallo Thomas,

herzlichen Dank für Deine Rückmeldung, die Verbesserungen und Deine Arbeit am Projekt!

Viele Grüße
Klaus