OPNsense

Open-Source Firewall

OPNsense ist eine freie Firewall-Distribution auf Basis von FreeBSD auf der 64-Bit-x86-Architektur (x64). Bis 2021 wurde dabei mit HardenedBSD das offizielle FreeBSD (bis Version 12.x) u. a. um Address Space Layout Randomization (ASLR) erweitert.[8][9]

OPNsense

WebUI von OPNsense 15.1 (RRD Graphen)
EntwicklerAd Schellevis, Franco Fichtner, Shawn Webb, Jos Schellevis[1][2]
Lizenz(en)

2-Klausel-BSD-Lizenz[3]
Erstveröff.2. Januar 2015[4]
Akt. Version24.1.9[5][6] vom 18. Juni 2024
BasissystemFreeBSD (bzw. HardenedBSD[7])
KernelMonolithischer Kernel
AbstammungUnix
↳ BSD
↳ 386BSD
↳ FreeBSD
↳ m0n0wall
↳ pfSense
↳ OPNsense
Architektur(en)x64 (64-Bit-x86); bis Version 20.1 auch IA-32 (32-Bit-x86)
SonstigesSprache: Englisch, Deutsch, Japanisch
OPNsense.org

Die OPNsense-Software steht unter der FreeBSD-Lizenz („2-clause BSD license“) und darf frei kopiert, verändert und verbreitet werden, auch für kommerzielle Projekte.

Grundlegende Eigenschaften

Die Distribution kann kostenlos heruntergeladen werden.[10]

OPNsense kann auf Festplatten und CompactFlash-Karten installiert, sowie von Live-CDs gestartet werden. OPNsense läuft auf einer Reihe von eingebetteten (embedded) Systemen, gewöhnlichen Personal Computern und als virtuelle Maschine.

Typische Anwendungen sind stateful Perimeter-Firewalls, Router, Wireless Access Points, DHCP-Server, DNS-Server und VPN-Endpunkte. Hierfür bietet OPNsense Eigenschaften, die oftmals nur von teuren kommerziellen Firewalls geboten werden.Mit Hilfe einer Webschnittstelle (Webinterface) kann OPNsense leicht konfiguriert werden und Updates sind komfortabel einzurichten, ohne dass genaue Kenntnisse des unterliegenden FreeBSD Betriebssystems erforderlich werden. Im Gegensatz zu vergleichbarer Open Source Firewall Software wie IPFire und pfSense bietet OPNsense Zwei-Faktor-Authentisierung.[11]

OPNsense basiert auf FreeBSD und nutzte zwischen Version 16.7 und 21.7 dessen gehärtete Variante HardenedBSD, die gemeinsam mit der FreeBSD-Gemeinde entwickelt, jedoch mit FreeBSD Version 13 wieder aufgegeben wurde,[12] da die gehärteten Funktionen inzwischen auch in FreeBSD verfügbar sind. Das OPNsense-Projekt ist auf Code-Qualität, einfache Code-Entwicklung und freien Zugang zu den Build-Werkzeugen ausgelegt.[13][14] Es wendet das Model View Controller Paradigma an.[15]

OPNsense erlaubte in den Version von 15.7 bis 22.7 die Benutzung der freien Kryptobibliothek LibreSSL, alternativ zum Standard OpenSSL (wählbar im WebUI).[16]

Name

Der Name ist vom Suffix des Namens seines Vorläufers pfSense[17] und open abgeleitet und steht für: Open Source ergibt Sinn[1].

Geschichte

Das Projekt wurde am 2. Januar 2015 ins Leben gerufen.[4] Es ist eine Abspaltung (Fork) von pfSense, welches im Jahr 2004[18] selbst als Projektabspaltung von m0n0wall begann.[19]

Das Projekt führt drei Gründe für seine Abspaltung an:[1]

  • Technische Gründe – klare, strukturierte Code-Basis, die von Entwicklern benutzt und gepflegt werden kann, soll entstehen
  • Community (Gemeinschaft) – eine aktive, tragende Gemeinschaft von Anwendern und Entwicklern wird angestrebt
  • Lizenz – OPNsense soll auf der bewährten 2-Klausel BSD-Lizenz aufgebaut werden, die flexibel im gewerblichen und freien Umfeld eingesetzt werden kann

Das OPNsense-Projekt wird von der niederländischen „Deciso B.V. finanziell und sachkundig unterstützt.[20] Deciso B.V. tritt schon seit längerer Zeit als Sponsor und Co-Entwickler von anderen freien, quelloffenen Softwareprojekten auf, namentlich für pfSense, m0n0wall, Askozia[21] und Zen Load Balancer.[22]

Im November 2017 stellte ein Schiedsgericht der Weltorganisation für geistiges Eigentum fest, dass Netgate, der Urheber von pfSense, die Domain opnsense.com in böswilliger Absicht benutzt hatte, um OPNsense zu diskreditieren, und verpflichtete Netgate, die Domain an Deciso zu übertragen. Die Netgate-Partei versuchte, sich auf die Fair-Use-Klausel zu berufen und behauptete, dass der Domainname „für eine Parodie-Website verwendet wurde“; dies wurde mit der Begründung abgelehnt, dass die Meinungsfreiheit die Registrierung von Domainnamen nicht abdeckt.[23]

Plugins

OPNsense bietet neben den Grundfunktionen einer Firewall auch eine Reihe von Plugins an, die einfach über das WebUI nachinstalliert werden können, um weitere Funktionen hinzuzufügen. Die meisten Plugins sind sogenannte "Community Plugins", welche frei verfügbar / verwendbar sind.[24] Einige wichtige Plugins sind zum Beispiel (nach Kategorie):

  • DNS
    • Dynamic DNS (auch RFC2136)
    • BIND
  • VPN
    • OpenVPN
    • WireGuard
    • Tinc
  • Routing
    • frr
    • tor
  • Web
    • Reverse Proxy and Webserver
    • nginx
    • HAProxy
    • ACME Client
  • Postfix mail relay
  • Antivirus (c-icap, ClamAV, rspamd)
  • Sonstige
    • Zabbix Proxy und Agent
    • diverse Treiber und Guest Agents (VMware, Quemu, Realtek, VirtualBox)
    • Intrustion Detection / Intrustion Prevention
    • IGMP Proxy
    • SNMP
    • iperf
    • SMART-Tools

Es gibt auch einige Plugins, die nur über das Business-Repository (kostenpflichtig) verfügbar sind, zum Beispiel:[25][26]

  • Central Management (OPNCentral)
  • GeoIP Datenbank
  • OPNWAF (Web Application Firewall)

Die Firma "m.a.x. it" aus München bietet ebenfalls kostenpflichtige Plugins und Support für OPNsense an.[27][28]

Business Repository

Deciso bietet ein Business-Repository an, welches über ein kostenpflichtiges Abo erworben werden kann.[29][30][31] Im Vergleich zur Community / Free Edition gibt es hier unter anderem getestete Updates, Zugriff auf das offizielle OPNsense OVA Image, diverse Business Plugins (siehe Plugins) oder ein kostenloses E-Book. Des Weiteren unterstützt man die aktive Entwicklung mit der Lizenzgebühr.

Versionstabelle

Die Versionsnummern von OPNsense spiegeln nicht die Signifikanz der Veränderungen, sondern das Veröffentlichungsdatum wider (z. B. Veröffentlichung im Januar 2015 entspricht Version 15.1).[32]

OPNsense Community Edition (die Business Edition hat meist andere Versionsnummern)
Version[7]Codename[7], mögl. ÜbersetzungVeröffentlichung[7]Anmerkung
Ältere Version; nicht mehr unterstützt: 15.1Ascending Albatross[33], aufsteigender Albatros2. Januar 2015[4]erste Version nach der Abspaltung von pfSense, FreeBSD 10 als Basis[4]
Ältere Version; nicht mehr unterstützt: 15.7Brave Badger[34], mutiger Dachs2. Juli 2015[35]bietet mit Suricata ein NIDS; inkludiert neben OpenSSL nun auch LibreSSL und erlaubt einen einfachen Wechsel[35]
Ältere Version; nicht mehr unterstützt: 16.1Crafty Coyote[36], listiger Kojote28. Januar 2016[37]FreeBSD 10.2, verbesserte Übersetzungen für Deutsch, Japanisch, Chinesisch und Französisch.[37]
Ältere Version; nicht mehr unterstützt: 16.7Dancing Dolphin[38], tanzender Delfin28. Juli 2016[39]HardenedBSD auf Basis von FreeBSD 10.3, Unterstützung für UEFI, Sprachunterstützung verbessert[39]
Ältere Version; nicht mehr unterstützt: 17.1Eclectic Eagle[40], vielseitiger Adler31. Januar 2017[41]FreeBSD 11.0 (HardenedBSD), weitere Übersetzungen ins Italienische, Tschechische und Portugiesische[41]
Ältere Version; nicht mehr unterstützt: 17.7Free Fox[42], offenherziger Fuchs31. Juli 2017[43]mehr Plugins, Übersetzungen Tschechisch, Chinesisch, Japanisch, Portugiesisch und Deutsch nun komplett[43]
Ältere Version; nicht mehr unterstützt: 18.1Groovy Gecko[44], fetziger Gecko29. Januar 2018[45]FreeBSD 11.1 (HardenedBSD), weitere Plugins; an Patches gegen Spectre und Meltdown wurde nach der ersten Veröffentlichung gearbeitet[45]
Ältere Version; nicht mehr unterstützt: 18.7Happy Hippo[46], fröhliches Flusspferd6. August 2018[47]FreeBSD 11.2 (HardenedBSD)[47]
Ältere Version; nicht mehr unterstützt: 19.1Inspiring Iguana[48], begeisternder Leguan31. Januar 2019[49]die Integration von HardenedBSD 11.2 wurde vervollständigt und das Firewall-API wurde finalisiert[49]
Ältere Version; nicht mehr unterstützt: 19.7Jazzy Jaguar[50], toller Jaguar17. Juli 2019[51]selbständiges Logging mit syslog-ng, Übersetzung ins Spanische, weitere Plugins: Netdata und WireGuard VPN[51]
Ältere Version; nicht mehr unterstützt: 20.1Keen Kingfisher[52], verwegener Eisvogel30. Januar 2020[53]letzte Version für 32-Bit-x86 (IA-32) „i386“[53]
Ältere Version; nicht mehr unterstützt: 20.7Legendary Lion[54], sagenhafter Löwe30. Juli 2020[55]HardenedBSD 12.1 und nur noch 64-Bit-x86 (x64, IA-32 mit 64-Bit-Erweiterung) „amd64“; Suricata 5[55]
Ältere Version; nicht mehr unterstützt: 21.1Marvelous Meerkat[56], fantastisches Erdmännchen28. Januar 2021[57]Verbesserungen der Firewall-Regeln und der Web-Oberfläche[57]
Ältere Version; nicht mehr unterstützt: 21.7Noble Nightingale[58], edle Nachtigall28. Juli 2021[59]Verbesserte Traffic Graphen sowie Update auf PHP 7.4, Python 3.8 sowie OpenVPN 2.5[59]; native ZFS-Unterstützung im Installer: bei den Installations-Medien dvd, vga und serial kann zwischen dem Unix File System (UFS2) und ZFS (OpenZFS) gewählt werden; letzte Version, die auf HardendBSD aufbaut.[60]
Ältere Version; nicht mehr unterstützt: 22.1Observant Owl[61], wachsame Eule27. Januar 2022[61]Upgrade auf FreeBSD 13 (HardenedBSD als gehärtete Variante von FreeBSD wird nicht mehr gesondert weiterentwickelt).[59] Durch diese große Änderung am Unterbau empfehlen die Entwickler vor der Aktualisierung eine Sicherung zu erstellen. Auch fehlt dadurch der bisherige Treiber für modernere Realtek-Netzwerkkarten (2.5G-Modelle). Als unsicher eingestufte ältere Kryptographieoptionen wurden entfernt, sodass bestehende IPsec-Einstellungen eventuell angepasst werden müssen.[62]
Ältere Version; nicht mehr unterstützt: 22.7Powerful Panther[63], kraftvoller Panther28. Juli 2022[63]Upgrade auf FreeBSD 13.1 und PHP 8.0. Die Version beinhaltet zahlreiche Detailverbesserungen. Als Neuerung ist nun eine Funktion zum Schutz vor DDoS (Distributed Denial of Service) enthalten.[64] LibreSSL wird hingegen nicht mehr gepflegt und wird ab der nächsten Version nicht mehr in OPNsense enthalten sein.
Ältere Version; nicht mehr unterstützt: 23.1Quintessential Quail[65], typische Wachtel26. Januar 2023[65]Upgrade auf FreeBSD 13.2 und PHP 8.1. LibreSSL wurde entfernt.
Ältere Version; nicht mehr unterstützt: 23.7Restless Roadrunner[66], ruheloser Wegekuckuck23. Juli 2023[66]OpenVPN-Verbesserungen, Upgrade auf PHP 8.2.
Aktuelle Version: 24.1Savvy Shark[67], gerissener Hai30. Januar 2024[67]
Vorabversion: 24.724. Juli 2024 (geplant)Die erste Beta-Version wurde am 13. Juni 2024 verfügbar gemacht.[68]
Legende:
Alte Version
Ältere Version; noch unterstützt
Aktuelle Version
Aktuelle Vorabversion
Zukünftige Version

Siehe auch

BSD-basiert:
Linux-basiert:

Einzelnachweise