'Datenbanken' lautet der Schwerpunkt der Dezember-Ausgabe des IT-Administrator. Darin werfen wir einen Blick auf den Firewall-Schutz und das ... (mehr)

Automatisches Blacklisting krimineller IP-Netzwerke

Das "URL-Table"-Alias bietet in Kombination mit den DROP/EDROP-Listen von Spamhaus einen interessanten Anwendungsfall. Denn diese Listen enthalten die Adressen von IP-Netzen, die bekanntermaßen für Spam, Malware-Verteilung oder andere kriminelle Aktivitäten genutzt werden – das Akronym DROP steht dabei übrigens für "Don't route or peer".

Blacklist für den Web-Proxy

Der Web-Proxy von OPNSense bringt einen kategoriebasierten Web-Filter mit. In Kombination mit verschiedenen Blacklists kann der Admin damit Zugriffe auf bestimmte URL- Kategorien wie zum Beispiel Pornografie, Gewalt, Drogen unterbinden. Das ist nicht nur für Unternehmen interessant, sondern auch überall dort, wo Jugendlichen ein Zugang zum Internet zur Verfügung gestellt werden soll (Jugendschutzgesetz). OPNSense arbeitet mit folgenden Blacklists-Anbietern zusammen: UT1-Blacklist der Universität von Toulouse (kostenfrei, Creative Commons license), Shallalist.de (für private und kommerzielle Nutzung kostenfrei, kommerzielle Benutzer müssen sich registrieren). URLBlacklist.com (kostenpflichtig), Squidblacklist.org (kostenpflichtig).Um die UT1-Blacklist in Ihren Web-Proxy einzubinden, klicken Sie im Dialog "Services / Proxy Server / Administration" auf den Karteireiter "Remote Access Control Lists" und dort auf das Pluszeichen rechts unten. Als Filename tragen Sie beispielsweise "UT1" ein und fügen dann die Download URL [6] für die Liste in das URL-Feld ein. Um die Liste erstmals herunterzuladen, klicken Sie nun auf den Button "Download ACLs & Apply". Nach Abschluss des Downloads öffnen Sie den Dialog wieder mit dem Stiftsymbol, per Default sind nun alle in der Liste verfügbaren Kategorien auf der Blacklist. Löschen Sie entweder alle Kategorien, die Sie nicht blockieren möchten, durch einen Klick auf das X-Zeichen. Alternativ entfernen sie mit einem Klick auf "Clear List" einfach zunächst alle Kategorien und fügen manuell dann jene wieder hinzu, die für die Benutzer gesperrt werden sollen.

Bild 4: Die integrierte 2-Faktor-Authentifizierung sichert Firewall-Dienste wie die Konfigurationsoberfläche, VPN oder das Captive Portal und arbeitet reibungslos zum Beispiel mit dem Google Authen­ticator zusammen.

OPNSense kann mit Hilfe des URL-Table-Alias regelmäßig die aktuellen (E)DROP-Listen von Spamhaus beziehen und je­gliche Kommunikation mit den darin ent­haltenen Netzen per Firewall-Regel unterbinden (Bild 2). Dazu legen Sie unter "Firewall / Aliases / View" für jede Liste zunächst ein eigenes Alias vom Typ "URL-Table (IPs)" an und tragen im jeweiligen URL-Feld die Download-Adressen für die Listen von Spamhaus ein:

https://www.spamhaus.org/drop/drop.txt
https://www.spamhaus.org/drop/edrop.txt

Anschließend erstellen Sie für jedes Alias Firewall-Regeln, jeweils für den ein- und den ausgehenden Datenverkehr:

Action: Block
Interface: WAN (LAN)
TCP/IP Version: IPv4
Source: spamhaus_drop (spamhaus_edrop)
Category: Blacklists
Description: Block DROP / EDROP

Unter "Firewall / Diagnostics / pfTables" lassen Sie sich anzeigen, welche Netzwerke durch den Einsatz der DROP- beziehungsweise EDROP-Liste geblacklistet wurden. Wenn Sie nun versuchen, mit einer der dort gelisteten IP-Adressen zu kommunizieren, zum Beispiel indem Sie einen Ping absetzen, wird der Traffic von der Firewall geblockt. Dasselbe gilt natürlich auch umgekehrt: Pakete aus einem dieser Netze, die am externen Interface der Firewall eintreffen, werden sofort verworfen.

Nutzung des Web-Proxy erzwingen

Ein anderer häufig benötigter Anwendungsfall ist die Durchsetzung eines "Zwangs-Proxy" für die Clients hinter der Firewall (Bild 3). Der Web-Proxy von OPNSense basiert auf Squid und bietet die folgenden Funktionen:

- Caching von Webseiten.

- Traffic Management (Bandbreitenbeschränkung, Beschränkung der maximalen Up- oder Downloadgröße von Dateien).

- Access Control Lists (Einschränkungen für bestimmte Netze- und/oder IP-Adressen).

- ICAP: Internet Content Adaptation Protocol, zur Einbindung externer Viren-scanner, URL-Filter und so weiter.

- Authentifizierung über lokale Benutzerdatenbank, LDAP, RADIUS, Captive Portal.

- Remote Access Control Lists: kategoriebasierter Webfilter/Blacklists.

Möchten Sie sicherstellen, dass die Clients in Ihrem Netzwerk nur über den integrierten Web-Proxy auf das Internet zugreifen können, gehen Sie wie folgt vor: Aktivieren Sie den Web-Proxy unter "Services / Web Proxy / Administration / General Proxy Settings / Enable Proxy" und klicken Sie auf "Apply", die Dienstanzeige für den Web Proxy rechts oben wechselt dann auf grün. Auf dem Karteireiter "Forward Proxy" stellen Sie als Proxy-Interface "LAN" ein. Wenn Sie "Enable SSL Mode" aktivieren, werden auch HTTPS-Verbindungen über den Proxy geleitet. In diesem Fall sollten Sie allerdings Banking-Websites in die Ausnahmeliste unter "SSL no bumb sites" aufnehmen, wenn auch Dritte (zum Beispiel Arbeitnehmer) den Proxy nutzen sollen. Natürlich beherrscht der Web-Proxy auch die Authentfizierung der Benutzer gegen unterschiedliche Backends. Zur Auswahl stehen LDAP (inklusive Microsoft Active Directory), RADIUS, Lokale Benutzerdatenbank oder keine Authentifizierung. In unserem Beispiel betreiben wir den Proxy ohne Authentifizierung.

Bild 4: Die integrierte 2-Faktor-Authentifizierung sichert Firewall-Dienste wie die Konfigurationsoberfläche, VPN oder das Captive Portal und arbeitet reibungslos zum Beispiel mit dem Google Authen­ticator zusammen.

Damit die Benutzer den Web-Proxy nicht einfach umgehen können, benötigen wir nun noch zwei Firewall-Regeln. Klicken Sie unter "Firewall / Rules / LAN" auf das Pluszeichen und definieren Sie je eine Regel für das HTTP- und das HTTPS-Protokoll:

Action: Block
Interface: LAN
Protocol: TCP/UDP
Source: LAN net
Destination Port Range: HTTP
Category: Block Proxy Bypass
Description: Web-Proxynutzung erzwingen
 
Action: Block
Interface: LAN
Protocol: TCP/UDP
Source: LAN net
Destination Port Range: HTTPS
Category: Block Proxy Bypass
Description: Web-Proxynutzung erzwingen

Verschieben Sie die Regeln dann unter die zuvor angelegten Spamhaus-(E)­DROP-Regeln. Beachten Sie, dass Sie alle Änderungen am Firewall-Regelwerk abschließend noch über den Button "Apply changes" bestätigen müssen, damit sie aktiv werden.

Die wirklich hervorragende Dokumentation von OPNSense [5] bietet für praktisch alle weiteren Anwendungsfälle wie zum Beispiel die Einrichtung der Hochverfügbarkeit mit CARP, die Konfiguration von VPN-Verbindungen oder die Nutzung von FreeRADIUS als Accounting-Server passende Howtos an.

Backup & Restore

OPNSense verfügt über einen sehr leistungsfähigen Backup- und Restore-Mechanismus. Im Dialog "System / Configuration / Back-ups" wird die Konfiguration dabei in eine – optional auch verschlüsselte – XML-Datei geschrieben. Die Datei kann dann heruntergeladen und auf einem lokalen oder externen Datenträger gespeichert werden. Alternativ kann OPNsense Konfigurationsbackups auch automatisch erstellen und mit Hilfe der Google API auf einem Google Drive ablegen. Die Backups werden dabei mit dem selben Algorithmus verschlüsselt wie bei den lokalen Sicherungen. Die Einrichtung der Google-API für das Online-Backup ist in einem eigenen Howto [7] beschrieben und schnell durchgeführt. Zum Restore einer Konfiguration laden Sie die Backup-Datei dann über das Webinterface hoch und geben das Passwort zur Entschlüsselung an. Dabei muss nicht immer ein vollständiges Backup zurückgespielt werden, denn über das Menü im Backup-Dialog können auch Teile der Konfiguration, zum Beispiel nur die Firewall-Regeln oder die IPSec-Konfiguration, wiederhergestellt werden.

Ähnliche Artikel

comments powered by Disqus

Artikel der Woche

Eigene Registry für Docker-Images

Wer selber Docker-Images herstellt, braucht auch eine eigene Registry. Diese gibt es ebenfalls als Docker-Image, aber nur mit eingeschränkter Funktionalität. Mit einem Auth-Server wird daraus ein brauchbares Repository für Images. (mehr)
Einmal pro Woche aktuelle News, kostenlose Artikel und nützliche ADMIN-Tipps.
Ich habe die Datenschutzerklärung gelesen und bin einverstanden.

Konfigurationsmanagement

Ich konfiguriere meine Server

  • von Hand
  • mit eigenen Skripts
  • mit Puppet
  • mit Ansible
  • mit Saltstack
  • mit Chef
  • mit CFengine
  • mit dem Nix-System
  • mit Containern
  • mit anderer Konfigurationsmanagement-Software

Ausgabe /2021