{{tag> opnsense voucher captive-portal}} ====== Firewall OPNsense mit einem Captive-Portal und Voucher einrichten ====== Das Captive Portal der OPNsense kann mehrere Authentifizierungswege bündeln, z.B: * Abfrage eines Vouchers * Abfrage von Login + Passwort einer LDAP-Datenbank * Direkter Zugang für zuvor registrierte Geräte mit MAC+IP. Die Installation gliedert sich in 6 Abschnitte. Als Voraussetzung dient eine OPNsense-Firewall von linuxmuster.net mit den Standardeinstellungen und einer vorhandenen Schnittstelle OPT1 für das blaue Netzwerk. Als IP-Range wird hier 172.16.32.0/24 mit der Domain "linuxmuster.lan" verwendet. - Schnittstelle OPT1 konfigurieren - DHCP auf OPT1 konfigurieren - Firewall Regeln erstellen - Voucher-Server konfigurieren - Captive-Portal konfigurieren - Vouchers erstellen Die Captive-Portal-Seite wird per https mit einem selbstsignierten Zertifikat ausgeliefert, es erscheint deshalb eine Zertifikatswarnung. Zum Ausloggen kann man mit der URL https://firewall.linuxmuster.lan:8000 den Logout-Button erhalten. ===== 1.) Schnittstelle OPT1 konfigurieren ===== Schnittstellen -> OPT1 * //Aktivieren// * IPv4: **Statisches IPv4** * IPv4-Adresse: **172.16.32.1 / 24** //Alle weiteren Optionen auf Default lassen.// -> [Speichen] ===== 2.) DHCP auf OPT1 konfigurieren ===== Dienste -> DHCPv4 -> [OPT1] * //Aktivieren// * Bereich von **172.16.32.100** bis **172.16.32.199** * DNS-Server: **172.16.32.1** * Gateway: **172.16.32.1** //Alle weiteren Optionen auf Default lassen.//-> [Speichern] ===== 3.) Firewall Regeln erstellen ===== Es müssen fünf Firewallregeln erstellt werden. Die Regel Nr. 5 erlaubt den uneingeschränkten Zugriff aufs Internet.\\ Firewall -> Regeln -> OPT1\\ {{:anwenderwiki:firewall_lmn7:opt1-regeln.jpg?800|}}\\ //Alle Regeln speichern und abschließend// -> [Anwenden] ===== 4.) Voucher-Server konfigurieren ===== System -> Zugang -> Servers -> [+ Hinzufügen]\\ {{:anwenderwiki:firewall_lmn7:voucher-server.jpg?400|}}\\ //Die Optionen (hier sehr einfach, zu Testzwecken) den eigenen Sicherheitsanforderungen anpassen!// ===== 5.) Captive-Portal konfigurieren ===== Dienste -> Captive Portal -> Verwaltung -> [ + ]\\ * //Aktiviert// * Schnittstellen: **OPT1** * Authentifizieren mit: **Gastnetz-Vouchers** * Leerlaufzeit: **0** * Harte Gültigkeitsdauer: **0** * Host: **firewall.linuxmuster.lan** * Gleichzeitige Anmeldungen: //deaktivieren// * SSL-Zertifikat: **linuxmuster-firewall** * Beschreibung: **Gast-Netzwerk** //Der Host-Eintrag kann leergelassen werden, dann erscheint das Captive-Portal Login unter der OPT1-IP der Firewall.//\\ //Ohne SSL-Zertifikat wird das Captive-Portal Login als http-Seite ausgeliefert.//\\ //Alle weiteren Optionen auf Default lassen// -> [Speichern] -> [Anwenden] ===== 6.) Vouchers erstellen ===== Dienste -> Captive Portal -> Voucher-> [+ Voucher erstellen]\\ {{:anwenderwiki:firewall_lmn7:vouchers_generieren.jpg?500|}}\\ Nun wird eine csv-Liste der Voucher erzeugt und zum Herunterladen angeboten:\\ {{:anwenderwiki:firewall_lmn7:voucher-liste-calc.jpg?500|}} ===== 7.) Testen ===== Jetzt sich mit dem WLAN verbinden und im Browser eine beliebige Seite aufrufen. Man erhält dann eine Umleitung auf die Login-Seite und kann dann die Zugangsdaten eines Vouchers eingeben. Die Login-Seite wird mit einem selbstsignierten Zertifikat ausgeliefert, es erscheint deshalb eine Zertifikatswarnung.\\ {{:anwenderwiki:firewall_lmn7:login.jpg?400|}} ===== 8.) Erweiterungen ===== * Login-Seite individuell der Schule anpassen * Leerlaufzeit / Gültigkeitsdauer festlegen * Traffic Shaping ===== 9.) Benutzern der Gruppe wifi des LDAP-Servers Zugang gewähren ===== Zuerst eine neue LDAP-Serverabfrage für die Gruppe wifi erstellen.\\ Das Passwort des global-binduser erhält man an der Serverkonsole mit dem Befehl: # sohphomorix-admin -i -a global-binduser | grep -A2 PASSWORD System -> Server -> [+ Hinzufügen] * Name: **linuxmuster-wifi** * Typ: **LDAP** * Hostname:** server.linxmuster.lan** * Port-Wert:**636** * Transport: **SSL-Verschlüsselt** * Protokoll: **3** * Bind Zugangsdaten: **CN=global-binduser,OU=Management,OU=GLOBAL,DC=linuxmuster,DC=lan** * Passwort: ........ * Suchbereich: **Kompletter Unterbaum** * Basis DN: **DC=linuxmuster,DC=lan** * Authentifizierungscontainer: **OU=GLOBAL,DC=linuxmuster,DC=lan;OU=SCHOOLS,DC=linuxmuster,DC=lan** * Erweiterte Abfrage: **&(objectClass=organizationalPerson)(memberOf=CN=wifi,OU=Management,OU=default-school,OU=SCHOOLS,DC=linuxmuster,DC=lan)** * Benutzerbenennungsattribut: **sAMAccountName** Jetzt die Authentifizierung umstellen:\\ Dienste -> Captive Portal -> Verwaltung -> //edit// Gast Netzwerk (Stift-Icon)\\ Folgende Option bearbeiten -> [Speichern] -> [Anwenden]: * Authentifizierung mit: **Gastnetz-Vouchers, linuxmuster-wifi** Dadurch kann jetzt eine Anmeldung auch mit den Benutzern der linuxmuster-LDAP-Datenbank erfolgen, die in der Gruppe wifi sind. ===== 10.) Geräten Zugriff ohne Captive-Portal Login erlauben ===== Dienste -> DHCPv4 -> OPT1 -> Statische DHCP-Zuweisung -> [ + ]\\ {{:anwenderwiki:firewall_lmn7:dhcp-statisch.jpg?800|}}\\ -> [Speichern] -> [Anwenden] Dienste -> Captive Portal -> Verwaltung -> //edit// Gast Netzwerk (Stift-Icon)\\ {{:anwenderwiki:firewall_lmn7:erl-addr.jpg?600|}}\\ -> [Speichern] -> [Anwenden] ===== x) Links ===== Originalanleitung -> [[https://docs.opnsense.org/manual/captiveportal.html]]