Brauche Hilfe mit FreeRADIUS und Watchguard Firewall!

Hi zusammen

ich hoffe, es geht euch gut. Ich hab’ da ‘ne kleine Baustelle und hoffe, jemand von euch kann mir helfen. Also, ich hab’ Pidea installiert und das Ding läuft mit dem Active Directory super smooth. Die User aus der bestimmten Organizational Unit werden korrekt in Pidea angezeigt. Ich hab’ sogar erfolgreich Richtlinien erstellt und kann mich mit meinem AD-Benutzer, inklusive MFA (TOTP, HTOP, Email OTP), über Pidea im Web anmelden.

Die FreeRADIUS-Konfiguration hab’ ich nach der Anleitung durchgezogen, inklusive Anpassungen an der Radius-Konfiguration und dem Eintragen meines Radiusclients (unsere Watchguard-Firewall). In der Firewall hab’ ich den Radius-Server mit dem Secret eingetragen. Hab auch extra eine Gruppe “grmfa” im Active Directory erstellt, vorerst zum Testen mit nur “kleinbuchstaben”

Aber jetzt kommt der Haken – ich scheitere beim Anmelden an der Firewall. Die Logdatei zeigt irgendwie auf den FreeRADIUS-Server als Übeltäter. Ich hab die relevanten Logdateien von FreeRADIUS und der Firewall angehängt.

Wir sind bisher echt beeindruckt von der Lösung und überlegen, das Ding mit 'ner aktiven Lizenz bei uns zu implementieren. Aber dazu muss das System natürlich laufen. Deshalb: Könnte jemand 'nen Blick drauf werfen und mir vielleicht helfen?

Danke schon mal für eure Unterstützung!

Grüße, fabian

freeradius log:

Wed Dec 6 15:52:15 2023 : Info: rlm_perl: user sent to privacyidea: fhe2
Wed Dec 6 15:52:15 2023 : Info: rlm_perl: realm sent to privacyidea:
Wed Dec 6 15:52:15 2023 : Info: rlm_perl: resolver sent to privacyidea:
Wed Dec 6 15:52:15 2023 : Info: rlm_perl: client sent to privacyidea: 192.168.1.1
Wed Dec 6 15:52:15 2023 : Info: rlm_perl: state sent to privacyidea:
Wed Dec 6 15:52:15 2023 : Info: rlm_perl: urlparam user
Wed Dec 6 15:52:15 2023 : Info: rlm_perl: urlparam client
Wed Dec 6 15:52:15 2023 : Info: rlm_perl: urlparam pass
Wed Dec 6 15:52:15 2023 : Info: rlm_perl: Request timeout: 10
Wed Dec 6 15:52:15 2023 : Info: rlm_perl: Not verifying SSL certificate!
Wed Dec 6 15:52:15 2023 : Info: rlm_perl: elapsed time for privacyidea call: 0.255751
Wed Dec 6 15:52:15 2023 : Info: rlm_perl: privacyIDEA access granted for fhe2 realm=‘’
Wed Dec 6 15:52:15 2023 : Info: rlm_perl: ++++ Parsing group: Attribute
Wed Dec 6 15:52:15 2023 : Info: rlm_perl: +++++ Found member ‘Attribute Filter-Id’
Wed Dec 6 15:52:15 2023 : Info: rlm_perl: ++++++ Attribute: IF ‘user’->‘group’ == ‘regex = CN=(.*),OU=TEST-FHE,OU=Benutzer,OU=PuP,DC=kanzlei,DC=local’ THEN ‘Filter-Id’
Wed Dec 6 15:52:15 2023 : Info: rlm_perl: ++++++ searching in directory user
Wed Dec 6 15:52:15 2023 : Info: rlm_perl: +++++++ User attribute is a list: ARRAY(0x7f38bc44fc48)
Wed Dec 6 15:52:15 2023 : Info: rlm_perl: +++++++ trying to match CN=grmfa,OU=TEST-FHE,OU=Benutzer,OU=PuP,DC=kanzlei,DC=local
Wed Dec 6 15:52:15 2023 : Info: rlm_perl: ++++++++ Result: No match, no RADIUS attribute Filter-Id added.
Wed Dec 6 15:52:15 2023 : Info: rlm_perl: +++++ Found member ‘Attribute otherAttribute’
Wed Dec 6 15:52:15 2023 : Info: rlm_perl: ++++++ Attribute: IF ‘’->‘’ == ‘’ THEN ‘otherAttribute’
Wed Dec 6 15:52:15 2023 : Info: rlm_perl: ++++++ no directory
Wed Dec 6 15:52:15 2023 : Info: rlm_perl: +++++++ User attribute is a string:
Wed Dec 6 15:52:15 2023 : Info: rlm_perl: +++++++ trying to match
Wed Dec 6 15:52:15 2023 : Info: rlm_perl: ++++++++ Result: No match, no RADIUS attribute otherAttribute added.
Wed Dec 6 15:52:15 2023 : Info: rlm_perl: +++++ Found member ‘Attribute Class’
Wed Dec 6 15:52:15 2023 : Info: rlm_perl: ++++++ Attribute: IF ‘’->‘’ == ‘’ THEN ‘Class’
Wed Dec 6 15:52:15 2023 : Info: rlm_perl: ++++++ no directory
Wed Dec 6 15:52:15 2023 : Info: rlm_perl: +++++++ User attribute is a string:
Wed Dec 6 15:52:15 2023 : Info: rlm_perl: +++++++ trying to match
Wed Dec 6 15:52:15 2023 : Info: rlm_perl: ++++++++ Result: No match, no RADIUS attribute Class added.
Wed Dec 6 15:52:15 2023 : Info: rlm_perl: ++++ Parsing group: Mapping
Wed Dec 6 15:52:15 2023 : Info: rlm_perl: +++++ Found member ‘Mapping user’
Wed Dec 6 15:52:15 2023 : Info: rlm_perl: return RLM_MODULE_OK

watchguard log:

2023-12-06 14:55:24 admd receive rqst [fhe2@pi] client=2 result=0 Debug
2023-12-06 14:55:24 admd rc_pack_list() vp->strvalue=fhe2 Debug
2023-12-06 14:55:24 admd RqstId=0x30a state=1 user=fhe2@pi rslt=4 Debug
2023-12-06 14:55:25 admd wgadmGetUserLoginSettings(): checkOption = 0 for mobile VPN user fhe2 Debug
2023-12-06 14:55:25 admd Authentication failed: user fhe2@pi isn’t in the authorized SSLVPN group/user list! Debug
2023-12-06 14:55:25 admd Authentication of SSLVPN user [fhe2@pi] from 88.152.185.113 was rejected, user isn’t in the right group msg_id=1100-0005 Event
2023-12-06 14:55:25 wgcgi SSL VPN user fhe2@pi from 88.152.185.113 was rejected - Unspecified. Debug

Moin,

es sieht so aus, als ob privacyIDEA den Benutzer korrekt authentifiziert:

Wed Dec 6 15:52:15 2023 : Info: rlm_perl: elapsed time for privacyidea call: 0.255751
Wed Dec 6 15:52:15 2023 : Info: rlm_perl: privacyIDEA access granted for fhe2 realm=‘’

Watchguard scheint aber noch weitere Informationen zu benötigen:

2023-12-06 14:55:25 admd Authentication failed: user fhe2@pi isn’t in the authorized SSLVPN group/user list!
2023-12-06 14:55:25 admd Authentication of SSLVPN user [fhe2@pi] from 88.152.185.113 was rejected, user isn’t in the right group msg_id=1100-0005
2023-12-06 14:55:25 wgcgi SSL VPN user fhe2@pi from 88.152.185.113 was rejected - Unspecified.

Vermutlich fehlt die Policy add_user_in_response:
https://privacyidea.readthedocs.io/en/v3.8.1/application_plugins/rlm_perl.html#mapping-privacyidea-return-values-to-radius-attribute-value-pairs

Hi,

die Watchguard benötigt in der Regel RADIUS Attribut 11 (FilterID) mit der richtigen Gruppe. Der Fehler ist nachzulesen unter: Watchguard Help

Erweiterte Szenarien kann man schön mit den User/Group-Rechten der Watchguard und der Mapping-Funktionalität (s. Link von plettich) steuern.