Tags: Firewall, Open Source
OPNsense ist eine Open-Source-Firewall auf Basis des gehärteten Betriebssystems HardenedBSD. Sie lässt sich direkt auf der Hardware oder als virtuelle Appliance betreiben. Ihr Funktionsumfang steht kommerziellen Produkten in nichts nach. Diese Anleitung erläutert die ersten Schritte beim Einsatz von OPNsense.
Im Jahr 2014 hat sich OPNsense von der pfsense und m0n0wall abgespalten, das Projekt wird seitdem getrennt weiterentwickelt. Für die Entwickler von OPNsense steht der Open-Source-Gedanke im Mittelpunkt. Ihrer Meinung nach konzentriert sich pfsense zu stark auf die Vermarktung.
Die wichtigsten Funktionen
Zu den Fähigkeiten gehören ein automatisches Backup, Quality of Service (QoS), Zwei-Faktor-Authentifizierung (2FA), OpenVPN, IPSec, Hochverfügbarkeit mittels Common Address Redundancy Protocol (CARP), Captive Portal, Proxy, Webfilter, Intrusion Detection & Prevention (IDPS) sowie Netflow. Die Konfiguration erfolgt über ein aufgeräumtes Web-Dashboard oder den Konsolenzugriff über SSH. Die Funktionen der Software werden im Detail auf dieser Seite beschrieben.
Für diesen Artikel erstellen wir eine Installation mit Hyper-V als Basis. Eine solche Konfiguration eignet sich besonders gut für ein Lab zur Evaluierung der Firewall. Weitere Hilfe bei der Installation gibt es im offiziellen Wiki.
Virtuelle Maschine erstellen
Beim Anlegen der neuen VM für OPNsense entscheiden wir uns für den Typ Generation 2. Beim RAM liegt das Minimum bei 1GB, bei einem geringeren Wert schlägt die Installation fehl. Für einen Basisbetrieb (im Lab) ist 1GB ausreichend, wenn jedoch ressourcenintensive Funktionen verwendet werden, dann braucht man mehr. Die Empfehlung liegt bei 4GB.
Wir verbinden dann noch den Netzwerkadapter mit dem virtuellen Switch.
Anschließend erstellen wir eine virtuelle Disk mit 32GB Speicherkapazität. Sollen ausführliche Logs geschrieben werden, kann man die Größe entsprechend erhöhen oder einen separaten Syslog-Server verwenden. Das Laufwerk ist standardmäßig auf dynamisch eingestellt. Im produktiven Einsatz kann es aber von Vorteil sein, die VHD als fixed zu konfigurieren.
Schließlich weisen wir noch das ISO-Image mit den OPNsense-Dateien der VM als virtuelles DVD-Laufwerk zu. Von diesem kann die virtuelle Maschine dann starten.
Virtuelle Maschine anpassen
Um von einem ISO-Image zu booten, empfiehlt es sich, Secure Boot für die Installation auszuschalten.
Außerdem fügen eine zweite Netzwerkkarte hinzu. Möchte man, dass die virtuelle OPNsense-Firewall zusammen mit dem Host automatisch startet, dann konfiguriert man die Startaktion entsprechend.
Da das WAN in unserem Beispiel von der deutschen Telekom zur Verfügung gestellt wird, geben wir als VLAN Tag (ID) 7 an. Somit wird der Port als Access-Port konfiguriert.
Installation von OPNSense vorbereiten
Die Basiskonfiguration erfolgt bereits bei der Installation und beginnt direkt beim ersten Systemstart. Das Setup erkennt in unserer Konfiguration die beiden zuvor definierten Netzwerkadapter (hn0 und hn1).
Danach können wir mit der Eingabe von "y" bereits das VLAN definieren. Man muss hier die Netzwerkkarte, auf dem das VLAN betrieben wird, festlegen. Als VLAN tag (ID) für das WAN geben wir erneut 7 an. Mit Bestätigen ohne weitere Angaben kann die Erstellung des VLAN abgeschlossen werden.
Um zu bestimmen, welche Interfaces für LAN, WAN und OPT zugeordnet werden, startet man eine automatische Ermittlung mit Eingabe eines "a". Für ein dediziertes Interface kann man dessen Namen angeben, in diesem Beispiel nehmen wir das zuvor erstellte VLAN 7.
Als LAN-Interface wählen wir die erste Netzwerkkarte. Das OPT-Interface überspringen wir, da unser virtueller Server nur zwei Netzwerkadapter hat, und fahren mit der Konfiguration fort.
Installationsroutine ausführen
Ist die Basiskonfiguration abgeschlossen, dann beginnt die eigentliche Installation. Die Kennung, unter der man sich anmeldet, entscheidet, ob OPNsense installiert oder im Live-Modus verwendet werden soll.
Wählt man root als Login-Name, dann startet der Live-Modus. Dieser verliert allerdings die gesamte Konfiguration beim nächsten Herunterfahren oder Neustart. Durch Anmelden unter installer startet die Installationsroutine. Das Passwort ist in beiden Fällen "opnsense".
Gleich am Anfang legt man das Tastaturlayout und Schriftarten fest.
Danach besteht die Möglichkeit, eventuell vorhandene Konfigurationen und config files von pfsense zu importieren. Im nächsten Schritt wählen wir den Datenträger aus, auf den das System installiert werden soll.
Es folgt danach die Entscheidung zwischen MBR und UEFI.
Bei älteren Systemen kann es sinnvoll sein, mbr mode zu wählen, um eine möglichst hohe Kompatibilität zu gewährleisten.
Auf das Anlegen der Swap-Partition folgt das Ändern des Standardpassworts. Dabei wird das zuvor eingestellte Tastatur-Layout verwendet.
Mit dem Reboot endet die Installationsroutine.
Konfiguration des Netzwerks
Die Standardanmeldedaten nach der Installation sind "root" als Username und "opnsense" als Passwort. Den User "installer" gibt es an diese Stelle nicht mehr. Per Vorgabe hat das Interface "LAN" die IP Adresse 192.168.1.1.
Zum Ändern der IP-Konfiguration bietet sich das Menü der Konsole an. Unter Punkt 2 kann man die IP-Adresse der Adapter, die IPv6-Unterstützung sowie DHCP-Optionen anpassen.
Nun haben wird die grundlegenden Einstellungen gesetzt und die Browser-Konsole ist auf der konfigurierten IP-Adresse erreichbar.
Abschliessende Konfiguration auf der GUI
Beim ersten Start der GUI (http://<IP-Adresse>) kann man weitere Einstellungen per Wizard festlegen.
Hier bestimmt man den Hostname, die Domain, die DNS-Server und Sprache. "Override DNS" ermöglicht es, die DNS-Server vom DHCP-Lease des WAN-Anschlusses zu übernehmen.
OPNsense kommt bereits mit einem Pool an NTP-Servern. Alternativ kann man hier auch seinen eigenen angeben.
Die folgenden Dialoge erlauben noch das Anpassen des WAN- und LAN-Interface, außerdem erhält man nochmals die Gelegenheit, das Passwort zu ändern.
Die OPNsense-Firewall ist nun einsatzbereit und filtert bereits Pakete.
Täglich Know-how für IT-Pros mit unserem Newsletter
Benjamin Bürk ist Senior Systems Engineer und betreut seit 2002 IT-Infrastrukturen von Unternehmen. Sein Schwerpunkt liegt im Aufbau und Betrieb von Server-Systemen und Microsoft 365-Umgebungen. Er ist ITIL4 Foundation, dreifach als MCSA sowie als MCSE Productivity zertifiziert..
// E-Mail, LinkedIn, Podcast //
Verwandte Beiträge
Weitere Links