Netzwerkanalyse, Fehlersuche, Testberichte
Home / News
Netzwerkanalyse
Grundlagen
Verkabelung
Erste Schritte
Baselining
Let's sniff
Tools
Auswerten/Filtern
Typische Probleme 1
Typische Probleme 2
Sicherheit
Bücher
Tutorials
Cacti
DSL einrichten
DynDNS einrichten
m0n0wall | pfSense
Nmap
VirtualBox
Wireshark
FAQ
Know How
Testberichte
Hardware-DB
Netzwerklexikon
Links / Service
Suche
Kontakt
Impressum
Feedback
Sitemap
Tutorials

Captive Portal mit pfSense

Teil 4 - Hot Spot mit Captive Portal einrichten

Mit der freien Software pfSense lassen sich Router, Firewalls, VPN-Gateways, Proxys und Hot Spots realisieren. In diesem Teil des Tutorials beschreibe ich die Einrichtung eines Wireless Hotspots mit dem Captive Portal von pfSense.

Funktionsweise eines Captive Portals

Die pfSense verbindet als Router das WLAN mit dem Internet. Ohne Captive Portal hätten alle Clients im WLAN freien Zugriff auf das Internet. Das Captive Portal gibt den Zugriff auf das Internet erst nach einer erfolgreichen Anmeldung frei. Dazu muss sich jeder Benutzer mit einem Benutzernamen und einem Kennwort anmelden.

Netzwerkaufbau für den Hotspot
Netzwerk mit pfSense und drei Access Points

Alle HTTP-Zugriffe werden auf die Anmeldeseite des Captive Portals umgeleitet. Das Captive Portal steuert den Zugriff auf alle Dienste. Auch für die Nutzung von Email (POP3, IMAP) oder VPN ist zuerst eine Anmeldung im Browser erforderlich.

pfSense kennt neben der Anmeldung mit Benutzernamen auch Gutscheine (Voucher). Jeder Gutschein-Code berechtigt den Besitzer des Vouchers das Internet für eine bestimmte Zeit zu nutzen.

Optionen des Captive Portals

Das Portal wird im Webinterface unter Services / Captive Portal aktiviert und konfiguriert. Die Funktionen des Portals können über die folgenden Parameter gesteuert werden.

Option Beschreibung
Enable captive portal Diese Option aktiviert das Captive Portal von pfSense.
Interface Hier können Sie festlegen, auf welchem Interface das Portal aktiv sein soll. Denkbar wäre eine Lösung mit verschlüsselten Access Point auf einem Interface ohne Captive Portal und offenen WLAN-APs auf einem Interface mit Captive Portal.

Auch eine Lösung mit Multi-SSID und Aufteilung auf VLANs ist mit pfSense umsetzbar.

Maximum concurrent connections Dieser Wert gibt an, wie viele User gleichzeitig die Anmeldeseite des Portals aufrufen können.
Idle timeout Benutzer die für die hier angegebene Zeit keine Daten übertragen werden abgemeldet.
Hard timeout Nach dem Hard timeout werden auch aktive Nutzer abgemeldet. In der Praxis sollte immer ein Idle oder Hard Timeout eingestellt werden. Ansonsten sammeln sich viele alte Sessions im Portal an.
Logout popup window Mit dieser Option blendet pfSense ein Abmeldefenster in den Browser des Clients ein.
Redirection URL Wird hier eine URL eingetragen, wird jeder Benutzer nach der Anmeldung auf diese Seite geleitet. Vorstellbar wäre eine Seite mit Hinweisen zur Nutzung des Internetzuganges.
Concurrent user logins Normalerweise kann sich ein Benutzer auch mehrfach anmelden. Wird die Option "Disable concurrent logins" aktiviert, führt eine zweite Anmeldung zur Abmeldung der ersten Session.
MAC filtering pfSense überprüft die MAC-Adresse jedes Clients. Befinden sich die Clients nicht im selben Layer-2-Netz wie die pfSense (hinter einem Router) sollte "Disable MAC filtering" aktiviert werden.
Per-user bandwidth restriction Hier können Sie die maximale Bandbreite pro Benutzer festlegen. Mit entsprechenden Einstellungen kann ein einzelner Benutzer nicht die Internetverbindung blockieren.
Authentication Für die Überprüfung der Anmeldedaten kann ein RADIUS-Server oder die lokale Benutzerdatenbank (Local User Manager) abgefragt werden. In diesem Beispiel legen wir lokale Benutzer auf der pfSense an.
HTTPS login Bei Bedarf kann pfSense die Anmeldeseite auch per HTTPS verschlüsseln. Dazu muss auch das entsprechende SSL-Zertifikat in die Firewall geladen werden.
Portal page contents Die Anmeldeseite des Captive Portals kann in HTML selber gestaltet werden. Hier kann die Seite in die Firewall geladen werden.
Authentication error page contents Hier können Sie das Aussehen der Fehlerseite bei Anmeldefehlern festlegen.

Jede Änderung der Einstellung meldet alle aktiven Benutzer vom Portal ab. An produktiven Systemen ist also etwas Vorsicht angesagt.

Beispielkonfiguration

Vor der Aktivierung des Captive Portals sollte das Netzwerk mit der pfSense fertig eingerichtet sein. Alle Clients sollten Zugriff auf das Internet haben. Für einen ersten Test machen wir unter Services / Captive Portal die folgenden Einstellungen:

Option Beschreibung
Enable captive portal aktiviert
Interface LAN
Idle timeout 5 Minuten
Hard timeout 10 Minuten
Authentication Local User Manager

Jetzt benötigen wir noch einen Benutzer. Dieser wird im Menü System / User Manager angelegt. Greifen Sie nun mit einem Client aus dem LAN auf www.google.de zu. Es wird die Anmeldeseite der Captive Portals angezeigt. Geben Sie die Anmeldedaten des gerade angelegten Benutzers ein.

Standardseite des Captive Portals
Anmeldeseite des Captive Portals von pfSense

Nach einer erfolgreichen Anmeldung werden Sie zu Google weitergeleitet. Sollte die Anmeldung nicht erfolgreich sein, zeigt pfSense diese Fehlerseite an:

Anmeldeprobleme am Captive Portal
Anmeldung war nicht erfolgreich

Monitoring und Fehlersuche

Im Menü Status / Captive Portal werden alle aktiven Session angezeigt. Sie sehen die MAC-Adresse, IP-Adresse und den Benutzernamen der Session.

Status Captive Portal
Übersicht der aktiven Sessions

Unter Status / System logs / Portal Auth protokolliert ein Log alle Aktionen des Captive Portals. Hier werden auch Anmeldefehler aufgezeichnet. Ein Widget zur Anzeige der aktiven Sessions des Captive Portals lässt sich auf dem Dashboard einblenden.

Alle Teile des pfSense-Tutorials

Weiterführende Informationen zu pfSense

Aktuelle Artikel
Offene Ports - was ist das eigentlich?
Grundlagen zu UDP- und TCP-Port, offenen Ports und der Nutzung von netstat unter Linux und Windows

Iperf als Service konfigurieren
Der Artikel beschreibt wie sich Iperf3 auf einem Linux-System als Dienst einrichten lässt, um so einen permanenten Iperf-Server zu betreiben.

JPerf - grafische Oberfläche für iperf
Mit iperf kann die Übertragungsgeschwindigkeit von Netzwerken gemessen werden. JPerf ist eine grafische Oberfläche für iperf. Der Artikel beschreibt die Messung mit TCP und UDP und gibt Anregungen zur Fehlersuche bei Performanceproblemen.

Alle Artikel...
Neue Tutorials
Prometheus Node Exporter
Mit dem Prometheus Node Exporter lassen sich viele interessante Metriken von Linux-Servern auslesen. Die so gewonnenen Daten können in Prometheus gespeichert werden und mit Grafana in Dashboards anschaulich visualisiert werden.

VPN mit der FritzBox
Die Fritz!Box von AVM unterstützt den Aufbau von VPN-Verbindungen mit dem Protokoll IPsec. AVM stellt dafür die Windows-Software FRITZ!Fernzugang zur Verfügung. Das Tutorial beschreibt die Konfiguration eines VPNs mit der AVM FRITZ!Box Fon WLAN 7270.

Virtuelle Netze mit VMware Server
VMware Server bietet drei Arten der virtuellen Vernetzung für ein Gastsystem an: Bridged Networking, Network Address Translation (NAT) und Host-only Networking. Das Tutorial beschreibt die Möglichkeiten der einzelnen Betriebsarten und deren Konfiguration.

Alle Tutorials...
Neue Testberichte
Net Optics iBypass Switch
Der iBypass von Net Optics ist Bypass Switch zum unterbrechungsfreien Einschleifen eines Intrusion Prevention Systems.

ePowerSwitch-4
Der ePowerSwitch-4 ist eine Schuko-Steckdosenleiste mit Ethernet-Interface und integriertem Webserver. Über einen Browser lassen sich die vier Schuko-Steckdosen über das Netzwerk schalten.

Alle Testberichte...

 

 
© 2004-2023, network lab - we make your net work - Netzwerkforum
aktualisiert am 22.03.2012