FHEMWEB basicAuth gegen einen Radius-Server

Begonnen von betateilchen, 23 Dezember 2025, 13:06:53

Vorheriges Thema - Nächstes Thema

betateilchen

defmod web2 FHEMWEB 8085 global

defmod allowed4web2 allowed
attr allowed4web2 basicAuth {radius($user,$password)}
attr allowed4web2 validFor web2

sub radius {
  use Authen::Radius; #apt install libauthen-radius-perl
  my ($user,$password) = @_;
  my $clientPassword = getKeyValue("clientPassword");
  my $r = new Authen::Radius(Host => '192.168.123.152', Secret => $clientPassword);
  return $r->check_pwd($user,$password);
}

  • 192.168.123.152 ist die IP Adresse des Radius Servers
  • das Client-Password wurde mit setKeyValue("clientPassword","geheimesPassword") in den FHEM-keystore abgelegt

Warum? Weil in meinem Netzwerk eh ein Radius Server läuft.
Mich hatte einfach interessiert, ob das funktioniert und wie aufwändig es wird.
Dank der perl Library Authen::Radius ist das Ganze aber sehr einfach umzusetzen.

-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

JudgeDredd

Hallo betateilchen,

ja ist denn heute schon Weihnachten ? 😃
Die Idee ist echt prima, das werde ich über die Feiertage definitiv mal ausprobieren.

Ich hatte vor vielen Weihnachten mal das LDAP-Modul (keine Ahnung ob das im SVN ist) ausprobiert, aber dazu hätte ich Änderungen am LDAP-Schema vornehmen müssen, an die ich nicht ran wollte.

So kann ich nun die Auth gegen mein AD machen.

hab Dank für Deinen Vorschlag und ein frohes Fest,
JudgeDredd
Router: Eigenbau (pfSense)
FHEM: Proxmox (DELL R720) | Debian 12 (VM)

CoolTux

Shöne Lösung. Auch nice wäre ein OAuth2 oder besser gleich OIDC. Mein Keycloak würde sich da freuen   ;D
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

betateilchen

Beschreibe mir doch mal das Szenario, das Dir da vorschwebt.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!