Zurück zu Netzwerk & Sicherheit
Firewall Fortgeschritten

pfSense: Firewall & Router einrichten

Aus einem 2-NIC-Mini-PC wird mit pfSense CE eine vollwertige Firewall samt Router — Installation, sichere Default-Regeln und Aussperr-Schutz inklusive.

Auf eigene Gefahr: Falsche WAN/LAN-Zuweisung, ein gelöschtes „Allow LAN to any" oder eine deaktivierte Anti-Lockout-Regel können dich aus der Web-GUI aussperren. Schutz: 1) Halte immer physischen Konsolenzugang (Monitor + Tastatur) bereit — über das Konsolenmenü kannst du Interfaces neu zuweisen (Option 1), die GUI/Passwort zurücksetzen oder per Option 4 auf Werk zurücksetzen. 2) Lade vor jeder Regeländerung unter Diagnostics > Backup & Restore die XML-Config herunter. 3) Öffne niemals die Firewall-/SSH-Verwaltung Richtung WAN (keine Allow-Regel am WAN für Port 443/80/22). 4) Prüfe beim dd-Befehl das Zielgerät (lsblk), damit du nicht versehentlich deine Systemplatte überschreibst.

Was du baust

pfSense CE (Community Edition) verwandelt einen kleinen Mini-PC in eine ausgewachsene Firewall und einen Router mit Stateful Packet Filter, NAT, DHCP und DNS. In dieser Anleitung installierst du pfSense vom USB-Stick, weist über die Konsole die Interfaces zu (WAN/LAN), meldest dich erstmalig in der Web-GUI an, durchläufst den Setup-Wizard und richtest saubere Firewall-Regeln ein: WAN per Default-Deny dicht, LAN kontrolliert offen.

Hardware

Du brauchst mindestens zwei physische Netzwerkkarten — eine für WAN (Richtung Internet/Modem), eine für LAN. Bewährt sind lüfterlose Mini-PCs mit Intel N100 und Intel-i226-V-2.5-GbE-Ports. Intel-NICs (igc/igb-Treiber) laufen mit pfSense ohne Gefrickel; Realtek-Chips sind möglich, aber unter BSD historisch zickig.

KomponenteEmpfehlung
CPUIntel N100 (4 Kerne, AES-NI vorhanden)
RAM8 GB (4 GB reichen ohne Pakete wie Suricata)
Storage32 GB+ SSD/NVMe (pfSense schreibt Logs)
NICs2x Intel i226-V (2.5GbE), Treiber igc
InstallerUSB-Stick ab 2 GB

Installer auf USB schreiben

Lade von pfsense.org das AMD64 Memstick-Installer-Image (Konsole: Serial oder VGA — für Mini-PC mit Monitor nimm VGA). Entpacke das .img.gz und schreibe es 1:1 auf den Stick. Unter Linux (Gerät vorher mit lsblk sicher identifizieren — falsches Ziel löscht deine Platte):

gunzip pfSense-CE-memstick-*-amd64.img.gz
sudo dd if=pfSense-CE-memstick-*-amd64.img of=/dev/sdX bs=4M status=progress conv=fsync

Achtung: dd überschreibt das Zielgerät unwiderruflich. Bestimme mit lsblk zweifelsfrei den USB-Stick (Größe vergleichen!) und setze /dev/sdX exakt darauf — ein falsches Ziel löscht deine Systemplatte ohne Rückfrage.

Prüfe vorher die SHA256-Summe der Datei gegen den Wert auf der Download-Seite (sha256sum pfSense-CE-*.img.gz). So schließt du beschädigte oder manipulierte Images aus.

Installation

Stick einstecken, Mini-PC im BIOS auf USB-Boot stellen, starten. Im Installer akzeptierst du den ZFS-Standard (oder Auto UFS bei sehr kleiner SSD), wählst die Zielplatte und lässt durchlaufen. Am Ende „Reboot" wählen und den USB-Stick ziehen.

Interfaces an der Konsole zuweisen

Nach dem Boot fragt pfSense in der Konsole nach VLANs (mit n ablehnen) und dann nach der Zuordnung. Du musst wissen, welche Buchse welcher Treibername ist (z. B. igc0, igc1). Wenn unklar: Kabel nur in WAN stecken und „Auto-detection" nutzen — pfSense erkennt das aktive Interface beim Einstecken.

Enter the WAN interface name: igc0
Enter the LAN interface name: igc1
Do you want to proceed [y|n]? y

Danach vergibt pfSense LAN standardmäßig 192.168.1.1/24 und startet DHCP nur auf LAN. WAN holt sich per DHCP eine Adresse vom Modem/Provider. Schließe deinen Verwaltungs-PC an den LAN-Port an.

Aussperr-Schutz Nr. 1: Behalte immer physischen Zugang zur Konsole (Monitor + Tastatur). Über das Konsolenmenü kannst du jede Fehlkonfiguration rückgängig machen — Option 4 setzt Werkseinstellungen zurück, Option 11 startet die GUI neu, Option 8 öffnet eine Shell. Solange du an die Konsole kommst, kannst du dich nicht dauerhaft aussperren.

Erste GUI-Anmeldung — Passwort sofort ändern

Öffne vom LAN-PC im Browser https://192.168.1.1. Das Zertifikat ist selbstsigniert (Warnung bestätigen). Die Werks-Zugangsdaten lauten:

Benutzer:  admin
Passwort:  pfsense

Sofort als Erstes: Ändere das Passwort direkt nach dem ersten Login (allererster Wizard-Schritt), bevor du irgendetwas anderes konfigurierst. Ein unverändertes admin/pfsense ist das größte Risiko an einer frischen Firewall — öffentlich bekannt. Vergib ein langes, einzigartiges Passwort.

Setup-Wizard

Der Wizard führt dich durch: Hostname & Domain, DNS-Server (z. B. 9.9.9.9 Quad9 oder dein Provider; „Override DNS" abwählen, wenn du eigene DNS willst), Zeitzone Europe/Berlin, WAN-Typ (meist DHCP), LAN-IP (Standard 192.168.1.1 belassen oder eigenes Subnetz) und schließlich das Admin-Passwort. Im WAN-Schritt sind „Block private networks" und „Block bogon networks" aktiviert — so lassen.

Config sichern, BEVOR du Regeln änderst

Gehe zu Diagnostics > Backup & Restore und lade die XML-Config herunter. Tu das jetzt und nach jeder größeren Änderung. Eine kaputte Regel ist in Sekunden zurückgespielt.

Firewall-Regeln: WAN dicht, LAN kontrolliert

pfSense ist von Haus aus default-deny am WAN: ohne explizite Regel kommt von außen nichts rein, und die Block-private/bogon-Regeln sind aktiv. Lass das so. Lege am WAN keine Allow-Regel für die GUI an.

Am LAN existiert die Default-Regel „Anti-Lockout" (erlaubt Zugriff auf die Firewall selbst) plus „LAN to any". Für mehr Kontrolle ersetzt du „LAN to any" durch gezielte Regeln (Firewall > Rules > LAN), z. B. nur HTTP/HTTPS/DNS erlauben. Die Logik:

InterfaceDefault-AktionDeine Regel
WANDeny (implizit)nichts öffnen — keine Mgmt-Freigabe
LANAnti-Lockout aktivAllow zu erlaubten Ports, Rest Deny
Aussperr-Schutz Nr. 2: Lass die Anti-Lockout-Regel (System > Advanced > Admin Access) aktiviert. Deaktiviere sie erst, wenn du eine eigene, getestete Allow-Regel für GUI/SSH vom LAN hast — sonst sperrst du dich aus der Web-Oberfläche aus.

Logging aktivieren

Jede Block-Regel kannst du beim Bearbeiten mit „Log packets that are handled by this rule" protokollieren. Standardmäßig loggt pfSense die Default-Deny-Treffer. Ansehen unter Status > System Logs > Firewall. Aktiviere Logging gezielt für interessante Regeln statt pauschal alles — sonst läuft die SSD voll.

Updates

Unter System > Update siehst du die verfügbare Version und spielst Updates ein. Mache vorher immer ein Config-Backup. Pakete (Suricata, pfBlockerNG, WireGuard) installierst du über System > Package Manager.

pfSense vs. OPNsense — kurz

OPNsense ist ein 2015 entstandener Fork von pfSense. Funktional sehr ähnlich (beide FreeBSD-basiert, gleicher pf-Packetfilter). OPNsense bringt eine modernere UI, ein festes Release-Modell (zwei Major-Releases/Jahr) und WireGuard/Plugins out-of-the-box. pfSense CE hat die größere Community, mehr Tutorials und Netgate-Backing. Beide sind solide — wer eine aufgeräumtere Oberfläche und schnellere Feature-Zyklen will, schaut sich OPNsense an; die hier gezeigten Konzepte (Interface-Zuweisung, Default-Deny, Anti-Lockout) gelten sinngemäß für beide.