Thomas-Krenn OPNsense LES Firewall Performance

Aus Thomas-Krenn-Wiki
Zur Navigation springen Zur Suche springen

Die freie Firewall-Lösung OPNsense kann auf vielen unterschiedlichen Geräten und Servern eingesetzt werden. Um die passende Hardware für Ihren Einsatzzweck zu finden, werden die Systeme umfassenden Leistungstests unterzogen. Dieser Artikel zeigt tabellarisch diese Ergebnisse der Thomas-Krenn Low Energy Server (LES) Geräten und weiteren lüfterlosen Geräten auf. Die Tabelle wird laufend um weitere Systeme erweitert, wenn diese getestet wurden. Eine Übersicht über Leistungsdaten zu Rack-Server finden Sie ebenso im Thomas-Krenn-Wiki.

Wichtiger Hinweis: Diese Tests wurden unter Laborbedingungen durchgeführt, Realwerte in Produktivumgebungen können abweichen. Die getesteten Modelle können mittlerweile schon von neuen Versionen abgelöst worden sein. Die aktuelle Hardware-Auswahl finden Sie im Onlineshop von Thomas-Krenn.

Hier geht es zu unseren OPNsense Firewalls im Onlineshop von Thomas-Krenn

Testergebnisse

Die folgende Tabelle zeigt die bisher verfügbaren Ergebnisse:

Server invalid id

(Anmerkung: Tests mit OPNsense 19.7)

Edge 4L

(Anmerkung: Tests mit OPNsense 22.7.2)

LES v4

(Anmerkung: Tests mit OPNsense 22.7.10_2, außer WireGuard)

LES network 6L

(Version 1, Intel Core i5-8250U)

(Anmerkung: Tests mit OPNsense 22.7_4-amd64)

LES network 6L

(Version 2, Intel Core i5-10210U)

(Anmerkung: Tests mit OPNsense 23.1)

LES network 6L

(Version 4, Intel Core i5-1235U)

(Anmerkung: Tests (bis auf Zenarmor Test) mit OPNsense 25.1.6_4-amd64)

FWA-1112VC-4CA1S

(Intel Atom C3558)

(Anmerkung: Tests mit OPNsense 25.1.5_5-amd64)

Hardware Ausstattung im Test RAM 2 GB RAM 2 GB RAM 32 GB (RAM Bedarf war maximal bei 11 GB (IPS Test)) RAM 4 GB RAM 16 GB RAM 16 GB RAM 8 GB
Einstellung

(genaue Testeinstellungen weiter unten aufgelistet)

Leistung Last (CPU Time in %) Leistung Last (CPU Time in %) Leistung Last (CPU Time in %) Leistung Last (CPU Time in %) Leistung Last (CPU Time in %) Leistung Last (CPU Time in %) Leistung Last (CPU Time in %)
Upload Download Upload Download Upload Download Upload Download Upload Download Upload Download Upload Download Upload Download Upload Download Upload Download Upload Download Upload Download Upload Download
Routing
  • NAT deaktiviert
  • reines Routing
nicht getestet nicht getestet nicht getestet nicht getestet 2,35 Gbit/s 2,35 Gbit/s 10 11 nicht getestet nicht getestet
(Anmerkung: 2,5 Gbit/s NIC ausgereizt)
Firewall
  • NAT aktiv
  • Spamhaus DROP und EDROP Listen (seit 2025 nur noch DROP Liste) auf WAN und LAN Interface
nicht getestet 942 Mbit/s 942 Mbit/s 31 29 2,35 Gbit/s 2,35 Gbit/s 19 20 940 Mbit/s 941 Mbit/s 15 18 2,35 Gbit/s 2,35 Gbit/s 17 18 2,35 Gbit/s 2,36 Gbit/s 12 13 8,3 Gbit/s 6,6 Gbit/s 96,8 74,4
(Anmerkung: 1 Gbit/s NIC ausgereizt) (Anmerkung: 2,5 Gbit/s NIC ausgereizt) (Anmerkung: 1 Gbit/s NIC ausgereizt) (Anmerkung: 2,5 Gbit/s NIC ausgereizt) (Anmerkung: 2,5 Gbit/s NIC ausgereizt, deswegen Routing nicht getestet) (Anmerkung: Sehr hoher Durchsatz, aber CPU nahezu ausgelastet)
Firewall und IDS
  • Grundeinstellungen wie Firewall Test
  • Zusätzlich dazu Intrusion Detection (IDS) auf dem WAN Interface aktiv
  • Anzahl der Regeln (fehlt)
nicht getestet 941 Mbit/s 941 Mbit/s 51 58 2,35 Gbit/s 2,35 Gbit/s 51 52 942 Mbit/s 942 Mbit/s 15 18 2,35 Gbit/s 2,35 Gbit/s 19 20 2,35 Gbit/s 2,36 Gbit/s 14,5 12,5 6,7 Gbit/s 5,2 Gbit/s 99 87,8
(Anmerkung: 1 Gbit/s NIC ausgereizt, aber deutlich erhöhte Last im Vergleich zu reinem Firewalling) (Anmerkung: 2,5 Gbit/s NIC ausgereizt, aber deutlich erhöhte Last im Vergleich zu reinem Firewalling) (Anmerkung: 1 Gbit/s NIC ausgereizt) (Anmerkung: 2,5 Gbit/s NIC ausgereizt, nur minimal erhöhte Last im Vergleich zu reinem Firewalling) (Anmerkung: 2,5 Gbit/s NIC ausgereizt, nur minimal höhere Last als beim Firewalling Test mit Blocklisten) (Anmerkung: Sehr hoher Durchsatz, aber CPU nahezu ausgelastet)
Firewall und IPS
  • Grundeinstellungen wie Firewall Test
  • Zusätzlich dazu Intrusion Prevention (IPS) auf dem WAN Interface aktiv
  • Anzahl der Regeln (fehlt)
nicht getestet (nicht empfohlen, CPU zu schwach) 606 Mbit/s 420 Mbit/s 62 41 770 Mbit/s 630 Mbit/s 44 33,5 942 Mbit/s 942 Mbit/s 21 19 2,35 Gbit/s 2,30 Gbit/s 23 18 2,35 Gbit/s 2,37 Gbit/s 10 12 - -
(Anmerkung: CPU und Software nun der limitierende Faktor, nicht mehr die 1 Gbit/s NIC) (Anmerkung: 1 Gbit/s NIC ausgereizt, Last leicht höher als bei IDS) (Anmerkung: 2,5 Gbit/s NIC im Upload ausgereizt, Download minimal weniger Durchsatz, leicht erhöhte Last im Vergleich zu IDS) (Anmerkung: 2,5 Gbit/s NIC ausgereizt) (Anmerkung: Testergebnisse nicht plausibel, schneller als IDS)
Firewall und Zenarmor
  • Grundeinstellungen wie Firewall Test
  • Zusätzlich dazu Zenarmor auf dem LAN Interface aktiv
nicht getestet (nicht empfohlen, CPU zu schwach) 769 Mbit/s 825 Mbit/s 36 47 893 Mbit/s 941 Mbit/s 32 33 940 Mbit/s 942 Mbit/s 17 19 2,35 Gbit/s 2,35 Gbit/s 16 21 2,35 Gbit/s 2,37 Gbit/s 10 8,5 nicht getestet
(Anmerkung: 1 Gbit/s NIC ausgereizt, Last leicht höher als bei IDS) (Anmerkung: 2,5 Gbit/s NIC ausgereizt, Einstellungen: MongoDB Datenbank, Routed Mode with native netmap) (Anmerkung: 2,5 Gbit/s NIC ausgereizt, Test mit OPNsense 25.1.7)
OpenVPN Tunnel
  • Grundeinstellungen wie Firewall Test
  • Zusätzlich dazu ein OpenVPN Tunnel zwischen den beiden Firewalls
84 Mbit/s 114 Mbit/s 33 33 145 Mbit/s 175 Mbit/s 36 34 435 Mbit/s 436 Mbit/s 28 27 470 Mbit/s 462 Mbit/s 17 16 997 Mbit/s 788 Mbit/s 17 14 986 Mbit/s 632 Mbit/s 9,9 7 188 Mbit/s 252 Mbit/s 32,7 33,6
IPsec VPN Tunnel
  • Grundeinstellungen wie Firewall Test
  • Zusätzlich dazu ein IPsec VPN Tunnel zwischen den beiden Firewalls
403 Mbit/s 324 Mbit/s 70 53 746 Mbit/s 479 Mbit/s 75 48 1,77 Gbit/s 1,3 Gbit/s 64 43 825 Mbit/s 847 Mbit/s 17 19 1,87 Gbit/s 1,74 Gbit/s 20 21 2,03 Gbit/s 2,01 Gbit/s 16,2 15,3 1,26 Gbit/s 1,3 Gbit/s 80,1 75,9
WireGuard VPN Tunnel
  • Grundeinstellungen wie Firewall Test
  • Zusätzlich dazu ein WireGuard VPN Tunnel zwischen den beiden Firewalls
178 Mbit/s 171 Mbit/s 89 86 296 Mbit/s 331 Mbit/s 82 80 896 Mbit/s 849 Mbit/s 70 74 865 Mbit/s 889 Mbit/s 48 45 1,35 Gbit/s 1,26 Gbit/s 49 50 2,25 Gbit/s 2,25 Gbit/s 23,5 23 1,15 Gbit/s 1,6 Gbit/s 87 98,6
(Anmerkung: Die WireGuard Tests wurden mit OPNsense 22.7.11-amd64 durchgeführt) (Anmerkung: Es wurde mit wireguard-go und OPNsense-23.1.1_2 getestet) (Anmerkung: 2,5 Gbit/s NIC ausgereizt, Overhead des WireGuard Protokolls beachten) (Anmerkung: Ergebnisse sehr stark, aber mit extrem hoher CPU Auslastung)

Setup Performancetests

Die nachfolgende Tabelle zeigt die weiteren Komponenten der Firewall Tests, die zu testende Firewall ist immer als Firewall Site 2 gekennzeichnet. Um die maximale Leistung testen zu können, wurde als performante Gegenstelle (Firewall Site 1) ein Server basierend auf einem Supermicro H12SSL-NT Mainboard ausgewählt:

Einsatzzweck Hardware BIOS Informationen Software
Firewall Site 1
  • Mainboard: Supermicro H12SSL-NT
  • CPU: AMD EPYC 72F3 (8 Kerne)
  • RAM: 32 GB
  • Version: 2.3
  • BIOS Einstellungen
    • default
  • Immer mit der jeweils aktuellen Community Version von OPNsense getestet
Firewall Site 2
  • wechselnde zu testende Firewall
Clients bis 2023
Client Site 1
  • Mainboard: Supermicro X11SSH-LN4F
  • CPU: Intel Xeon CPU E3-1230 v6 (3.50GHz, 4 Kerne)
  • RAM: 4 GB
  • Version: 2.7
  • Ubuntu Server 22.04.1
Client Site 2
  • Mainboard Supermicro X10SLH-F
  • CPU: Intel Xeon CPU E3-1220 v3 (3.10GHz, 4 Kerne)
  • RAM: 4 GB
  • Version: 3.4
Clients seit 2024 (Es wurden zwei neue identische und wesentlich performantere Last-Clients beschafft)
Client Site 1 und 2
  • Mainboard Asus P12R-M/10G-2T
  • CPU: Intel Xeon E-2378 (2,60 GHz, 8 Kerne, 16 MB)
  • RAM: 32 GB
  • Version: 1201
  • Ubuntu Server 24.04.2 LTS

Benchmark Tools

Die Performancetests wurden mit iperf durchgeführt.

  • Das Tool iperf wurde mit folgendem Kommando auf der Serverseite gestartet: iperf -p 5000 -f m -s
  • Die Clientseite hat sich per folgendem Kommando zum iperf Server verbunden: iperf -p 5000 -f m -c <IP-de-Servers> -t 180 -P 10
  • Mit dem Kommando "vmstat -w 180 -c 2" wurde die Last auf den Firewalls gemessen.

Upload-Test

Um einen Upload-Test zu simulieren wurde am Client Site 2 iperf im Clientmodus gestartert, am Client Site 1 wurde iperf mit dem Parameter -s im Servermodus gestartet.

Download-Test

Für einen Download-Test wurden die Richtungen umgedreht, Client Site 1 wurde per Parameter -c als Client gestartet und Client Site 2 mit -s im Servermodus.

Testdurchläufe

Generell sind die Werte in den Tabellen als Mittelwerte von bis zu 10 Durchläufen anzusehen. Bei manchen Tests (wenn die Netzwerkbuchse ausgelastet war) sind die Ergebnisse nicht in mehreren Durchläufen generiert worden, da die Ergebnisse immer identisch waren.

Einstellungen

Die folgenden Einstellungen wurden an den OPNsense Firewalls vorgenommen. Grundsätzlich wurden keine speziellen Optimierungsschritte durchgeführt, OPNsense wurde mit den Standardeinstellungen eingesetzt. Da auch die Einstellungen bei den einzelnen VPN-Technologien anspruchsvoll sind kann man die Messwerte durchaus als absolutes Minimum ansehen.

  • Firewall Test
    • Spamhaus DROP und EDROP Listen auf LAN und WAN Interface aktiviert
    • EDROP Liste nun in DROP integriert und nicht mehr verfügbar, bei Tests von FWA-1112VC-4CA1S und RI1102-SMXDFH nur DROP Liste verwendet.
  • OpenVPN Test (legacy Server/Client Methode)
    • Server Mode: Peer to Peer (SSL/TLS)
    • Protocol: UDP4
    • Device Mode: tun
    • TLS Authentication: Enabled - Authentication & encryption
    • TLS Shared Key: 2048bit OpenVPN static key
    • DH Parameters Length: 4096 bit
    • Encryption Algorithm: AES-256-GCM (256 bit key, 128 bit block, TLS client/server mode only)
    • Auth Digest Algorithm: SHA512 (512-bit)
    • Certificate Depth: Do Not Check
    • Compression: Enabled - LZO algorithm (--compress lzo)
  • OpenVPN Test (Instances Methode)
    • TLS static key crypt
    • 2048 bit Static Key
    • cipher AES-256-GCM,protocol-flags cc-exit tls-ekm dyn-tls-crypt,tun-mtu 1500
    • Data Channel: cipher 'AES-256-GCM', peer-id: 0
    • Protocol options: protocol-flags cc-exit tls-ekm dyn-tls-crypt
  • IPsec VPN Test (legacy Tunnel Settings Methode)
    • Phase 1
      • Authentication method: Mutual PSK
      • Pre-Shared Key: ja
      • Encryption algorithm: 256 bit AES-GCM with 128 bit ICV
      • Hash algorithm: SHA256
      • DH key group: 14 (heißt 2048 bits)
    • Phase 2
      • Protocol: ESP
      • Encryption algorithms: aes256gcm16
      • Hash algorithms: SHA256
      • PFS key group: 14 (2048 bits)
  • WireGuard VPN Test
    • Shared secret (PSK)
  • WireGuard VPN Test (Instances)
    • Public Keys
    • Zusätzlich Pre-shared key


Autor: Thomas Niedermeier

Thomas Niedermeier arbeitet im Product Management Team von Thomas-Krenn. Er absolvierte an der Hochschule Deggendorf sein Studium zum Bachelor Wirtschaftsinformatik. Seit 2013 ist Thomas bei Thomas-Krenn beschäftigt und kümmert sich unter anderem um OPNsense Firewalls, das Thomas-Krenn-Wiki und Firmware Sicherheitsupdates.

 

Das könnte Sie auch interessieren

Bootzeit OPNsense verkürzen
OPNsense Intrusion Detection und Intrusion Prevention konfigurieren
Windows 10 als OpenVPN Client konfigurieren