Virtualisierung & Firewall 22. Januar 2026 • 15 Min. Lesezeit

OPNsense auf Proxmox VE: Vollständiges Setup von ISO-Download bis Hardening & DNSmasq

In einer virtualisierten Serverumgebung ist eine dedizierte Firewall unverzichtbar. Dieser Leitfaden führt dich wie ein technischer Waschzettel durch jeden Einzelschritt: vom Download des Installations-Images über die Proxmox-KVM-Parameter bis hin zum feingranularen Regelwerk und Performance-Tuning.

1. OPNsense ISO herunterladen und in Proxmox bereitstellen

OPNsense stellt seine Images als komprimierte .iso.bz2-Archive bereit. Proxmox benötigt zur Installation das entpackte .iso.

Offizielle Download-Quelle: opnsense.org/download
Wähle dort folgende Einstellungen aus:

  • Architecture: amd64
  • Image Type: dvd (wichtig für ISO-Installationen in virtuellen Maschinen)
  • Mirror: Einen Server in deiner Nähe (z. B. Deutschland / LeaseWeb oder RWTH Aachen)

Der schnellste Weg direkt über die Proxmox-Shell:
Logge dich per SSH auf deinem Proxmox-Host ein oder öffne die Node-Shell im Web-UI und lade das Image direkt in deinen Storage:

cd /var/lib/vz/template/iso
# Beispiel-Download der aktuellen Version
wget https://pkg.opnsense.org/releases/26.1/OPNsense-26.1-dvd-amd64.iso.bz2

# Archiv entpacken (.bz2 -> .iso)
bzip2 -d OPNsense-26.1-dvd-amd64.iso.bz2

# Prüfen, ob das ISO im Storage liegt
ls -lh *.iso

Alternativ im Proxmox Web-UI: Navigiere links im Baum zu local (pve) > ISO Images > Download from URL, füge den Link ein und klicke auf Query URL.

2. Virtuelle Maschine in Proxmox VE anlegen (Optimale KVM-Werte)

Klicke oben rechts in Proxmox auf Create VM und trage die Parameter exakt so ein:

  • General: VM ID: 100, Name: opnsense-firewall, Haken bei Start at boot setzen.
  • OS: Wähle Use CD/DVD disc image file (iso), Storage: local, Image: OPNsense-...-dvd-amd64.iso, Guest OS Type: Other.
  • System: Machine: q35, BIOS: OVMF (UEFI) (oder Default SeaBIOS), Qemu Agent: Aktivieren.
  • Disks: Bus/Device: SCSI (0), Storage: local-zfs oder local-lvm, Disk size: mind. 32 GB, Cache: Write back, Discard: Aktivieren (wichtig für TRIM bei SSDs).
  • CPU: Sockets: 1, Cores: 2 bis 4, Type: host (Essenziell: Reicht AES-NI Befehlssätze der CPU für VPN- und SSL-Kryptografie 1:1 durch).
  • Memory: 4096 MB fester RAM (Ballooning für FreeBSD deaktivieren!).
  • Network (Interface 1 = WAN): Bridge: vmbr0, Model: VirtIO (paravirtualized), Firewall-Checkbox: Deaktivieren.

Zweite Netzwerkkarte (LAN) hinzufügen:
Nach dem Erstellen der VM vor dem Start auf VM 100 > Hardware > Add > Network Device klicken: Bridge: vmbr1, Model: VirtIO, Firewall: Deaktivieren.

3. Installation durchführen

  1. Starte die VM und öffne die Console.
  2. Warte, bis der Live-Boot abgeschlossen ist. Melde dich an mit User: installer | Passwort: opnsense.
  3. Wähle dein Tastaturlayout (z. B. German).
  4. Installationsmodus: Install (ZFS) > Stripe (No Redundancy) > Festplatte da0 auswählen > Bestätigen.
  5. Am Ende der Installation ein neues Root-Passwort setzen und Reboot wählen.
  6. Nach dem Neustart im Proxmox Hardware-Tab das CD-Laufwerk aushängen.

4. Essentielles FreeBSD/VirtIO-Tuning (Hardware Offloading deaktivieren)

FreeBSD-Treiber unter KVM haben bekannte Probleme mit Hardware-Checksummen. Logge dich im OPNsense Web-UI (https://10.0.0.1) ein und navigiere zu Interfaces > Settings:

  • Disable Hardware Checksum Offload (Haken setzen)
  • Disable Hardware TCP Segmentation Offload (TSO) (Haken setzen)
  • Disable Hardware Large Receive Offload (LRO) (Haken setzen)

Klicke unten auf Save und starte die Firewall einmal neu.

5. Web-UI Hardening: Unverschlüsseltes HTTP deaktivieren

Navigiere zu System > Settings > Administration:

  • Protocol: Ausschließlich HTTPS auswählen.
  • HTTP Redirect: Disable HTTP redirect aktivieren. Dadurch schließt die Firewall Port 80 vollständig und reagiert erst gar nicht auf Klartext-Scans.
  • Listen Interfaces: Nur LAN anhaken (WAN niemals aktivieren!).

6. DNS & DHCP mit Dnsmasq statt Unbound

  1. Unter Services > Unbound DNS > General den Haken bei Enable Unbound entfernen und speichern.
  2. Unter Services > Dnsmasq DNS > Settings:
    • Enable Dnsmasq
    • Register DHCP Leases & Register DHCP Static Mappings (ermöglicht lokale Namensauflösung im LAN)
    • DNS Forwarder: 1.1.1.1, 9.9.9.9 eintragen.
  3. Unter Services > DHCPv4 > [LAN] den DHCP-Pool aktivieren (z. B. Range 10.0.0.100 - 10.0.0.200).

7. Spamhaus DROP Blockliste für das WAN-Interface einrichten

Schütze deine Infrastruktur vor bekannten Botnetzen:

  1. Gehe zu Firewall > Aliases > Klicke auf +.
  2. Name: Spamhaus_DROP, Type: URL Table (IPs).
  3. URL: https://www.spamhaus.org/drop/drop.txt, Update Frequency: 1 (Tag).
  4. Gehe zu Firewall > Rules > WAN > Neue Regel ganz oben anlegen:
    • Action: Block | Interface: WAN | Direction: In | Source: Spamhaus_DROP | Destination: Any.
💡 Support & Consulting: Du benötigst Unterstützung bei der Einrichtung deiner Infrastruktur? 👉 tessmann-digital.de