FreeRadius, Zertifikatsbasierende Authentifizierung und VLAN-Zuweisung?

Started by iamhermes, April 09, 2020, 08:48:32 PM

Previous topic - Next topic
Ist es möglich mit der zertifikatsbasierenden Authentifizierung (Benutzer mit Zertifikat in der OPNsense angelegt) zum WiFi-AP das VLAN zuweisen zu lassen?
Ich stochere hier bisher im Dunkeln.
Eine Authentifizierung mit Zertifikat auf dem Client geht bisher ohne weitere Probleme, allerdings mit dem falschen Netz am AP.


Einloggen mit Benutzername/Passwort geht ja ohne weiteres, da das VLAN im Radius zum Benutzer hinterlegt ist.
Aber wie geht das bei den System-Benutzern die ein Zertifikat haben?

Danke

Hast du Mal gegoogelt wie das mit Freeradius an sich geht? Also ohne OPNsense etc.?

Mit direkter Benutzerauthentifizierung im FreeRadius selbst geht dies ohne weiteres mit entsprechendem VLAN zum WiFi AP hin.

Wenn ich allerdings nur ein Zertifikat nutzen will (angelegter User in der OPNsense nebst erstellten Zertifikat zum User) habe ich allerdings keine weiteren Login Parameter für den FreeRadius zwecks VLAN, da ja die Authentifizierung anhand Zertifikat ohne eine VLAN Zugehörigkeit erfolgt und nicht per User/Passwort nebst VLAN vom FreeRadius.

Ich könnte im AP die MAC-Basierte Authentifizierung zusätzlich aktiv schalten, allerdings sehe ich dies nicht wirklich als sinnreich/sicher an, da keine Zugehörigkeit vom Zertifikat zum VLAN existiert und sich das nur auf die MAC-Adresse vom Client bezieht. Jeder mit einem gültigen Zertifikat könnte sich mit passender MAC in ein anderes VLAN verschieben.


Nach etwas längerer Suche bin ich zumindest zum Ergebnis gelangt, dass es anhand der Zertifikatsparameter möglich sei, weitere Infos im FreeRadius zum Auth hinzuzufügen.

In der post_auth Sektion von sites-enabled/default nach

update {
    &reply: += &session-state:
}


müsste für jedes Zertifikat folgendes Ergänzt werden:

if (TLS-Client-Cert-Serial== "...."){   // oder andere Eigenschaften vom Zertifikat, Expiration...Issuer...Subject
update reply {
    &Tunnel-Type = 13,
    &Tunnel-Medium-Type = 6,
    &Tunnel-Private-Group-Id = "...definiertes VLAN für Zertifikat..."
}
}



Interessant wäre jetzt die Erweiterung vom freeradius Plugin um diese Funktion.
Hier schwebt mir auch die automatische Erkennung aller Client-Zertifikate im opnsense vor, worauf direkt die VLAN Zuweisung definiert werden könnte.


Oder gibt es einen Punkt irgendwo, wo dieses jetzt bereits gemacht werden kann?

Danke

Kannst du in GitHub nen feature request erstellen? Ich würde mir das die Tage dann mal anschauen.