OPNsense - FreeRADIUS für WLAN, 802.1X und VPN
Auf einen Blick
| Gilt für | OPNsense 26.1/26.7 mit Plugin os-freeradius 1.10 (FreeRADIUS 3.2) |
|---|---|
| Bereich | IT-Security |
| Dauer | ca. 45 Minuten (Grundeinrichtung mit WLAN-Enterprise), weitere Szenarien je 15–30 Minuten |
| Rechte | Administrator (OPNsense-WebUI), Zugriff auf Access Points und Switches |
| Stand | Oktober 2026 |
FreeRADIUS ist der weltweit meistgenutzte RADIUS-Server – Grundlage zahlloser WLAN-Netze mit WPA2/WPA3-Enterprise, kabelgebundener Zugangskontrolle nach IEEE 802.1X und VPN-Anmeldungen. Mit dem Plugin os-freeradius läuft er direkt auf der OPNsense: Access Points, Switches, VPN-Gateways und die Firewall selbst fragen bei der Anmeldung eines Benutzers oder Geräts den RADIUS-Server, ob der Zugang erlaubt ist – und in welches VLAN das Gerät gehört.
Dieser Artikel erweitert die Kurzanleitungen OPNsense - Radius und OPNsense - WLAN-Authentifizierung mittels EAP-TLS um alle wichtigen Szenarien, Einstellungen und Sicherheitsempfehlungen.
Einsatzszenarien
| Szenario | Wer fragt an (RADIUS-Client) | Verfahren |
|---|---|---|
| WLAN mit WPA2/WPA3-Enterprise | Access Points bzw. WLAN-Controller | EAP-PEAP, EAP-TTLS oder EAP-TLS |
| Kabelgebundenes 802.1X mit dynamischen VLANs | Switches | EAP; VLAN per RADIUS-Attribut |
| MAC-Authentifizierung (MAB) für Drucker, Telefone, IoT | Switches/APs | MAC-Adresse als Benutzername |
| VPN-Anmeldung (OpenVPN, IPsec) | OPNsense selbst | PAP über RADIUS |
| Admin-Login auf Netzwerkgeräten | Switches, Router, APs | PAP/CHAP, ggf. Service-Type |
| Captive Portal mit Zeitlimits | OPNsense-Captive-Portal | PAP, Session-Limits |

Schritt 1: Plugin installieren
System → Firmware → Plugins: os-freeradius installieren und die Seite neu laden. Das Menü befindet sich unter Services → FreeRADIUS mit General, Users, Clients, DHCP, DHCP Leases, EAP, LDAP, LDAP Group, Proxy und Log File.
Schritt 2: Allgemeine Einstellungen
Services → FreeRADIUS → General:
| Feld | Empfehlung |
|---|---|
| Enable | aktivieren |
| Enable VLAN assignment | aktivieren, wenn Benutzer/Geräte dynamisch einem VLAN zugeordnet werden sollen |
| Enable VLAN fallback assignment | nur bewusst einsetzen – dann wird auch bei fehlgeschlagener Anmeldung ein Accept mit Fallback-VLAN (z. B. Gäste-/Quarantäne-VLAN) gesendet |
| Enable LDAP | nur aktivieren, wenn die LDAP-Seite vollständig konfiguriert ist – sonst startet FreeRADIUS nicht |
| Log to File or Syslog | Syslog, wenn Anmeldungen zentral ausgewertet werden sollen |
| Log Authentication Request | aktivieren (protokolliert Anmeldungen inkl. MAC-Adresse) |
| Log Authentication Bad/Good Password | aus – sonst landen Passwörter im Klartext im Log |
| Herstellerattribute (EXOS, WISPr, ChilliSpot, Mikrotik) | nur bei Bedarf für die jeweilige Hardware |
Schritt 3: RADIUS-Clients anlegen
Jedes Gerät, das Anfragen stellt, ist ein Client mit gemeinsamem Geheimnis. Services → FreeRADIUS → Clients → +:
| Feld | Beispiel |
|---|---|
| Name | ap-buero
|
| Secret | langer, zufälliger Wert (z. B. 32 Zeichen); muss auf dem AP identisch eingetragen werden |
| IP Address or Network with CIDR | einzelner AP 192.168.99.21 oder Management-Netz 192.168.99.0/24
|
| Require Message-Authenticator | aktivieren, sofern die Clients es unterstützen |
Für Anfragen der OPNsense selbst (VPN, Captive Portal) zusätzlich einen Client localhost mit 127.0.0.1 anlegen.
Schritt 4: Benutzer anlegen (lokale Benutzerdatenbank)
Services → FreeRADIUS → Users → +:
| Feld | Hinweis |
|---|---|
| Username / Password | Zugangsdaten des Benutzers |
| Password Encryption | NT-Password (pre-hashed) statt Cleartext-Password, wenn nur PEAP-MSCHAPv2/MSCHAPv2 genutzt wird – dann steht das Passwort nicht im Klartext in der Konfiguration. Für PAP/TTLS-PAP ist Klartext nötig. |
| VLAN ID | VLAN, in das der Benutzer bzw. das Gerät nach erfolgreicher Anmeldung kommt (z. B. 20)
|
| IP Address / Routes | feste Tunneladressen und Routen, z. B. für VPN-Benutzer (Framed-IP-Address, Framed-Route) |
| Simultaneous-Use | maximale gleichzeitige Anmeldungen |
| Login-Time / Max Daily Session | zeitliche Einschränkungen, z. B. für Gäste oder das Captive Portal |
| Tunnel-Password | für Private PSK (PPSK) bei unterstützten WLAN-Systemen |
MAC-Authentifizierung (MAB) für Geräte ohne 802.1X
Drucker, Telefone oder IoT-Geräte, die kein 802.1X beherrschen, meldet der Switch bzw. AP mit ihrer MAC-Adresse als Benutzername und Passwort an. Dafür einen Benutzer mit der MAC-Adresse im vom Switch verwendeten Format (z. B. 001122aabbcc oder 00-11-22-AA-BB-CC) anlegen und das passende VLAN zuweisen. MAC-Adressen lassen sich fälschen – MAB nur für Geräte-VLANs mit eingeschränkten Rechten nutzen.
Schritt 5: EAP für WLAN und 802.1X
Services → FreeRADIUS → EAP:
| Feld | Standard | Empfehlung |
|---|---|---|
| Default EAP Type | MD5 | PEAP (Benutzer/Passwort, Windows-Standard), TTLS (z. B. mit LDAP) oder TLS (Zertifikate). MD5 ist für WLAN ungeeignet. |
| Use own certificates | aus | aktivieren und eigene CA sowie Serverzertifikat wählen |
| Root Certificate / Server Certificate | – | interne CA aus System → Trust und ein Serverzertifikat (Typ Server, z. B. CN radius.firma.local)
|
| CRL | – | Sperrliste für EAP-TLS; nach jeder Änderung FreeRADIUS neu starten |
| Check TLS Common-Name | aus | bei EAP-TLS aktivieren, wenn Benutzername und Zertifikats-CN übereinstimmen sollen |
| TLS Minimum Version | 1.0 | 1.2 |
| TLS Maximum Version | 1.3 | 1.3; bei Problemen mit alten Clients 1.2 |
| Elliptic Curve | prime256v1 | Standard |
Access Point konfigurieren
Auf dem AP bzw. WLAN-Controller: SSID mit WPA2-Enterprise oder WPA3-Enterprise, RADIUS-Server = IP der OPNsense, Port 1812 (Authentifizierung) und 1813 (Accounting), Secret wie im Client-Eintrag, dynamisches VLAN aktivieren. Switches für kabelgebundenes 802.1X werden analog konfiguriert (Port-Authentifizierung, RADIUS-Server, Gast-/Fallback-VLAN).
Schritt 6: Active Directory per LDAP anbinden
Services → FreeRADIUS → LDAP (danach unter General Enable LDAP aktivieren):
| Feld | Beispiel |
|---|---|
| Protocol Type / Server / Server Port | LDAPS, dc01.firma.local, 636 (oder 389 mit Start TLS)
|
| Certificate | CA der Domain-Controller-Zertifikate |
| Bind User / Bind Password | Dienstkonto mit Leserechten, z. B. CN=svc-radius,OU=Dienste,DC=firma,DC=local
|
| Base DN | DC=firma,DC=local
|
| User Filter | für AD: (sAMAccountName=%{%{Stripped-User-Name}:-%{User-Name}}) (Standard verwendet uid für OpenLDAP)
|
| Group Filter | für AD: (objectClass=group) (Standard (objectClass=posixGroup) passt nur für OpenLDAP/POSIX)
|
| Group Membership Mode | member filter (Active Directory / Samba 4 nested groups) – berücksichtigt auch verschachtelte Gruppen |
| Inner-Tunnel LDAP | aktivieren, damit LDAP auch innerhalb von EAP-Tunneln (802.1X) genutzt wird |
VLAN je AD-Gruppe: Unter LDAP Group den vollständigen DN einer Gruppe (z. B. CN=VLAN-Technik,OU=Gruppen,DC=firma,DC=local) mit einer VLAN ID verknüpfen.
Schritt 7: Firewall-Regeln und Test
- Firewall → Rules auf dem Management-Interface: UDP 1812 und 1813 von den Access Points/Switches (bzw. deren Netz) auf This Firewall erlauben – nicht aus Benutzer- oder Gästenetzen.
- Test auf der Firewall (Shell):
radtest testuser 'Passwort' 127.0.0.1 0 'SecretVonLocalhost'
# Erwartet: Received Access-Accept ... (inkl. Tunnel-Private-Group-Id bei VLAN-Zuweisung)
- Log: Services → FreeRADIUS → Log File zeigt Login OK bzw. Login incorrect mit Grund.
Weitere Funktionen
OPNsense-Dienste gegen FreeRADIUS authentifizieren
Unter System → Access → Servers einen Server vom Typ Radius mit 127.0.0.1, Port 1812 und dem localhost-Secret anlegen. Er steht dann für OpenVPN (siehe OPNsense - OpenVPN Site-to-Site und Client-VPN), das Captive Portal oder die Anmeldung an der Weboberfläche zur Verfügung.
Proxy: Anfragen weiterleiten
Unter Proxy (Home Servers, Home Server Pools, Realms) leitet FreeRADIUS Anfragen bestimmter Realms (z. B. benutzer@partner.de) oder als Fallback an andere RADIUS-Server weiter – etwa an einen MFA-Server wie privacyIDEA oder einen Partner-RADIUS.
Accounting
Mit Enable SQLite (lokal) oder Enable Remote MySQL werden Sitzungsdaten (Start, Ende, Datenvolumen) gespeichert – Grundlage für Session-Limits und Auswertungen.
Sicherheitsempfehlungen
- Require Message-Authenticator für alle Clients, RADIUS nur im Management-Netz.
- Lange, eindeutige Secrets pro Client bzw. Netz.
- TLS 1.2 als Minimum, eigene CA, Serverzertifikatsprüfung auf allen Clients erzwingen.
- EAP-TLS für verwaltete Geräte, PEAP/TTLS nur mit sauber verteilter CA.
- Keine Passwörter loggen; Anmeldeprotokolle an ein SIEM übergeben, z. B. ein Open-Source-SIEM auf Wazuh-Basis.
- Redundanz: Fällt der RADIUS-Server aus, kommt niemand mehr ins WLAN – bei Bedarf einen zweiten RADIUS-Server (z. B. zweite OPNsense im CARP-Verbund) in den APs hinterlegen.
Typische Probleme
| Symptom | Ursache und Lösung |
|---|---|
| FreeRADIUS startet nicht | Enable LDAP ohne vollständige LDAP-Konfiguration; Zertifikat/CA fehlt; Syntax in Benutzerfeldern – Log prüfen. |
| Ignoring request from unknown client | Client-IP bzw. -Netz nicht angelegt oder AP sendet von anderer Adresse. |
| Login incorrect bei korrektem Passwort | Secret falsch (führt zu falsch entschlüsselten Passwörtern), falsche EAP-Methode, PEAP-MSCHAPv2 mit LDAP-Benutzern. |
| Windows/Android verbindet nicht | Serverzertifikat wird nicht vertraut oder Servername stimmt nicht; Android verlangt Angabe von CA und Domain. |
| VLAN wird nicht zugewiesen | Enable VLAN assignment aus, dynamisches VLAN am AP/Switch nicht aktiviert oder VLAN dort nicht vorhanden. |
| Anfragen werden abgelehnt nach Aktivieren von Message-Authenticator | Client sendet das Attribut nicht – Firmware aktualisieren. |
Fazit
Mit os-freeradius wird die OPNsense zum zentralen Authentifizierungsserver für WLAN, kabelgebundenes 802.1X, VPN und Netzwerkgeräte – inklusive dynamischer VLANs, Active-Directory-Anbindung und Zertifikatsanmeldung. Entscheidend für die Sicherheit sind moderne EAP-Verfahren mit Zertifikatsprüfung, TLS 1.2+, der Message-Authenticator gegen BlastRADIUS und ein abgeschottetes Management-Netz.
Unterstützung von m.a.x. it
Sie möchten WLAN mit WPA3-Enterprise, 802.1X am Switch-Port oder dynamische VLANs einführen und an Ihr Active Directory anbinden? m.a.x. it unterstützt Sie mit OPNsense-Firewall-Services von m.a.x. it und Cybersecurity-Leistungen von m.a.x. it.
Siehe auch
- OPNsense - Radius
- OPNsense - WLAN-Authentifizierung mittels EAP-TLS
- OPNsense - OpenVPN Site-to-Site und Client-VPN
- privacyIDEA – Open-Source-Mehr-Faktor-Authentifizierung
- Layer2 Filterung ohne 802.1X
- RADIUS
- 802.1X
- EAP
- VLAN
- WPA3
Links und Quellen
- FreeRADIUS – offizielle Dokumentation
- Quellcode und Changelog des Plugins os-freeradius
- BlastRADIUS (CVE-2024-3596) – Hintergrund
- m.a.x. it – Cybersecurity-Services
Über m.a.x. it Die m.a.x. Informationstechnologie AG ist seit über 30 Jahren IT-Partner mittelständischer und großer Unternehmen in München und bietet maßgeschneiderte Lösungen und Services in den Bereichen Cloud, Cybersecurity, Netzwerk, Windows, Linux und Softwareentwicklung. Sie haben eine Frage zu diesem Artikel oder brauchen Unterstützung?
