Firewall 1

Du kannst gerne unter meinem GitHub mithelfen.

Dieses Projekt zeigt, wie man moderne Firewall 1-Systeme aufsetzt.

Du lernst die drei Firewall-Generationen, praktischen Aufbau mit Proxmox und OpenSense, VPN-Lösungen, IDS/IPS, und Spam-Schutz.

I. Was ist eine Firewall 1?

Eine Firewall 1 ist ein Sicherheitssystem, das zwischen zwei Netzwerken steht.

Sie filtert Datenpakete und lässt nur bestimmte Verbindungen durch oder blockiert sie.

   Internet (Gefahr!)
        │
        ▼
    ┌───────┐
    │FIREWALL│ ← Wie ein Türsteher
    └───────┘
        │
        ▼
   Dein Netzwerk

Grundkonzept

Hauptaufgaben:

Firewall 1 vs. Router

    Router                 Firewall
      │                       │
      ▼                       ▼
 "Wohin geht              "Darf das
  das Paket?"              durch?"
      │                       │
      ▼                       ▼
 ┌─────────┐           ┌──────────┐
 │Postbote │           │Türsteher │
 │Leitet   │           │Prüft     │
 │weiter   │           │Regeln    │
 └─────────┘           └──────────┘
Eigenschaft Router Firewall 1
Hauptaufgabe Pakete weiterleiten Pakete filtern
Entscheidung Wohin soll das Paket? Darf das Paket durch?
Sicherheit Grundlegend Erweitert
Regeln Routing-Tabellen Firewall-Regeln
Merksatz

  • Router = Postbote (bringt Pakete ans Ziel)
  • Firewall 1 = Türsteher (kontrolliert, wer rein darf)

II. Firewall-Arten


Nach Einsatzort

Personal Firewall (Host-based)

Läuft direkt auf einem Computer und schützt nur diesen Computer.

Internet
   │
   ▼
┌────────────┐
│  Computer  │
│    mit     │ ← Firewall läuft hier
│  Firewall  │
└────────────┘
    ✓ Schützt nur diesen PC

Beispiele:

Vorteile: Einfach, kostenlos, gut für einzelne Geräte
Nachteile: Schützt nur ein Gerät, nutzt PC-Ressourcen

Network Firewall (Netzwerk-Firewall)

Steht zwischen zwei Netzwerken und schützt alle Geräte dahinter.

Internet
   │
   ▼
┌─────────┐
│ Firewall│ ← Zentral für alle
└─────────┘
   │
   ├──► PC 1 ✓
   ├──► PC 2 ✓
   ├──► Server ✓
   └──► Handy ✓

   Schützt ganzes Netzwerk

Beispiele:

Vorteile: Schützt ganzes Netzwerk, zentrale Verwaltung
Nachteile: Teurer, komplexere Konfiguration


Nach Funktionsweise (OSI-Modell)

1. Packet Filter Firewall (Generation 1)

Filtert nach Quell-IP, Ziel-IP, Port und Protokoll.

Arbeitet auf OSI-Schicht 3 und 4.

Paket kommt an
     │
     ▼
┌──────────┐
│ Firewall │ Prüft:
│  prüft   │ ✓ IP erlaubt?
└──────────┘ ✓ Port erlaubt?
     │
  ┌──┴──┐
  ▼     ▼
Pass  Block

Vorteile: Schnell, einfach, geringer Ressourcen-Bedarf
Nachteile: Kein Zustandswissen, anfällig für bestimmte Angriffe

Beispiele: Alte Router-Firewalls, einfache iptables-Regeln, ACLs

2. Stateful Inspection Firewall (Generation 2)

Erkennt den Zustand von Verbindungen (z.B. ob die Verbindung aktiv ist).

Mehr Sicherheit als Packet Filter Firewall, da Verbindungsstatus geprüft wird.

Paket kommt an
     │
     ▼
┌──────────────┐
│   Firewall   │ Prüft:
│    merkt     │ ✓ IP + Port
│ Verbindungen │ ✓ Zustand (NEW/ESTABLISHED)
└──────────────┘ ✓ Verbindung gültig?
     │
  ┌──┴────────┐
  ▼           ▼
NEW        ESTABLISHED
(Prüfen)   (Durchlassen)

Zustände einer TCP-Verbindung:

Vorteile: Versteht Verbindungs-Kontext, kann SYN-Flood-Angriffe erkennen
Nachteile: Höherer Ressourcen-Bedarf, kann Anwendungs-Layer-Angriffe nicht erkennen

3. Next Generation Firewall (NGFW, Generation 3)

Prüft auch den Anwendungsdatenverkehr (z.B. HTTP, FTP) und blockiert verdächtige Inhalte.

Arbeitet auf OSI-Schicht 7 (Anwendungsschicht).

Paket kommt an
     │
     ▼
┌─────────────────┐
│  Next-Gen FW    │ Prüft ALLES:
│                 │ ✓ IP + Port
│ Deep Packet     │ ✓ Zustand
│ Inspection      │ ✓ Inhalt
│                 │ ✓ Malware
│ IDS/IPS         │ ✓ Anwendung
│ SSL Inspect     │ ✓ User
└─────────────────┘
     │
  ┌──┴──┐
  ▼     ▼
 Safe  Threat
(Pass) (Block)

Funktionen:

Vorteile: Höchste Sicherheit, erkennt moderne Angriffe
Nachteile: Teuer, hoher Ressourcen-Bedarf, komplexe Konfiguration

Beispiele: Palo Alto Networks, Fortinet FortiGate, OpenSense mit Suricata

4. WAF (Web Application Firewall)

Spezielle Firewall 1 für Webanwendungen.

Schützt vor SQL-Injection, XSS, CSRF, etc.

Beispiele: ModSecurity, Cloudflare WAF, AWS WAF

III. Die drei Firewall-Generationen


Entwicklung von einfacher Port-Filterung zu intelligenter Anwendungs-Analyse.

Generation 1      Generation 2         Generation 3
    │                 │                    │
    ▼                 ▼                    ▼
┌─────────┐      ┌─────────┐         ┌─────────┐
│ Packet  │──►   │Stateful │──►      │  Next   │
│Filtering│      │Inspection│         │   Gen   │
└─────────┘      └─────────┘         └─────────┘
   1990s            2000s               2010s+

IP+Port         +Verbindung         +DPI+IDS/IPS
Generation Technologie Zeitraum Hauptmerkmal
Generation 1 Packet Filter Firewall 1990er IP/Port-Filterung
Generation 2 Stateful Inspection Firewall 2000er Connection Tracking
Generation 3 Next Generation Firewall 2010+ Deep Packet Inspection, IDS/IPS

IV. firewalld (Linux Firewall)


firewalld ist eine moderne Firewall-Lösung für Linux-Systeme.

Einfacher als iptables durch Zonen-Konzept und dynamische Konfiguration.

Zonen-Konzept

      Interfaces
          │
    ┌─────┼─────┐
    │     │     │
    ▼     ▼     ▼
┌──────┬─────┬───────┐
│ drop │block│public │
├──────┼─────┼───────┤
│ home │work │trusted│
└──────┴─────┴───────┘
   ↓      ↓      ↓
 Streng  Mittel  Offen

Standard-Zonen:

Dienste und Ports erlauben

# Dienst dauerhaft erlauben
sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https

# Port öffnen
sudo firewall-cmd --permanent --zone=public --add-port=8080/tcp

# Konfiguration neu laden
sudo firewall-cmd --reload

V. Praktischer Aufbau mit Proxmox und OpenSense


Proxmox ist eine Virtualisierungs-Plattform für VMs und Container.

OpenSense ist eine Open-Source-Firewall mit professionellen Funktionen.

Proxmox VE

Hauptfunktionen:

OpenSense Firewall

Features:

Netzwerk-Topologie

Internet
   │
   ▼
Proxmox Host
   │
   ├─► OpenSense VM (Firewall)
   │    ├─► WAN Interface
   │    ├─► LAN Interface
   │    └─► VLANs (10, 20, 30, 111)
   │
   ├─► Server VMs
   └─► Container (Docker)

VLANs in OpenSense

VLAN = Virtual LAN. Teilt ein physisches Netzwerk in mehrere logische Netzwerke auf.

Vorteile:

Beispiel-Setup:

VI. IPv6 Grundlagen


IPv6 ist die neueste Version des Internet Protocols.

340 Sextillionen Adressen statt nur 4 Milliarden bei IPv4.

    IPv4                    IPv6
     │                       │
     ▼                       ▼
192.168.1.1           2001:db8::1
     │                       │
   32 Bit                 128 Bit
     │                       │
4 Milliarden     340 Sextillionen
     │                       │
Braucht NAT          Kein NAT

Vergleich:

Eigenschaft IPv4 IPv6
Adress-Länge 32 Bit 128 Bit
Schreibweise 192.168.1.1 2001:db8::1
NAT notwendig Ja Nein

IPv6 Adress-Typen

VII. SSL/TLS-Zertifikate mit Let's Encrypt


SSL/TLS-Zertifikate verschlüsseln die Verbindung zwischen Client und Server.

Let's Encrypt stellt kostenlose Zertifikate automatisiert aus.

ACME-Protokoll

ACME (Automatic Certificate Management Environment) ist das Protokoll von Let's Encrypt.

Server           Let's Encrypt
  │                    │
  ├─► Zertifikat?      │
  │   anfordern        │
  │                    │
  │      Challenge ◄───┤
  │   (HTTP/DNS)       │
  │                    │
  ├─► Beweis ─────────►│
  │   bereitstellen    │
  │                    │
  │    Zertifikat ◄────┤
  │       ✓            │
  └──────────────────────
     Auto-Renewal
     alle 60 Tage

Challenge-Methoden:

In OpenSense:

  1. ACME Plugin installieren (os-acme-client)
  2. Account erstellen
  3. Challenge konfigurieren
  4. Zertifikat erstellen
  5. Automatische Erneuerung (alle 60 Tage)

VIII. VPN-Lösungen


VPN = Virtual Private Network. Erstellt einen verschlüsselten Tunnel über ein unsicheres Netzwerk.

Client               Internet            Server
  │                     │                  │
  │  [Verschlüsselter Tunnel]              │
  ├═════════════════════════════════════►│
  │     Niemand kann mitlesen! ✓           │
  │◄═════════════════════════════════════┤
  │                                        │

VPN-Protokolle im Vergleich

Protokoll Geschwindigkeit Sicherheit Komplexität Port
WireGuard Sehr schnell Sehr hoch Einfach UDP 51820
OpenVPN Mittel Sehr hoch Mittel UDP 1194 / TCP 443
IPsec Schnell Sehr hoch Komplex UDP 500, 4500
PPTP nicht verwenden!

PPTP ist unsicher und sollte NICHT mehr verwendet werden.

A. WireGuard VPN

WireGuard ist ein modernes VPN-Protokoll.

Einfacher, schneller und sicherer als OpenVPN oder IPsec.

Vorteile:

Split Tunneling vs. Full Tunnel

Split Tunneling:              Full Tunnel:
Client                        Client
  │                             │
  ├─► Work ──► VPN ──► Server   └─► Alles ──► VPN ──► Server
  └─► Privat ──► Internet direkt           └─► Internet

  Schneller                     Sicherer

Split Tunneling: Nur bestimmter Traffic über VPN, Rest direkt ins Internet
Full Tunnel: Gesamter Traffic über VPN

B. OpenVPN

OpenVPN ist ein etabliertes VPN-Protokoll.

Sehr flexibel und läuft auf fast allen Plattformen.

Vorteile:

Nachteile:

IX. Firewall-Regeln und Best Practices


Gute Firewall-Regeln folgen klaren Prinzipien.

Grundprinzipien

1. Default Deny

Alles blockieren, was nicht explizit erlaubt ist.

Alle Pakete
     │
     ▼
┌──────────┐
│ Default: │
│  DENY ❌  │  ← Alles blockiert
└──────────┘
     │
     │ Nur explizit erlaubte Dienste
     ▼
   HTTP ✓
   HTTPS ✓
   SSH ✓

Warum wichtig:

2. Stateful Firewall

Firewall 1 merkt sich Verbindungszustände.

Vorteil: Antworten auf ausgehende Anfragen werden automatisch erlaubt.

3. Least Privilege

Nur die notwendigsten Zugriffe erlauben.

4. Segmentierung

Netzwerk in Zonen aufteilen (z.B. DMZ, Server-VLAN, Client-VLAN).

NAT (Network Address Translation)

Source NAT (Masquerading)

Interne IPs werden beim Verlassen des Netzwerks in öffentliche IP übersetzt.

Internes Netzwerk       Firewall        Internet
192.168.1.10  ────►  (NAT)  ────►  203.0.113.50
192.168.1.11  ────►  übersetzt ──►  203.0.113.50
192.168.1.12  ────►  zu Public IP   203.0.113.50

Alle sehen gleiche öffentliche IP

Destination NAT (Port Forwarding)

Eingehende Verbindungen zu öffentlicher IP werden an interne IP weitergeleitet.

Internet            Firewall         Internes Netzwerk
     │                  │                    │
Port 80 ──────────► (Destination  ─────► 192.168.1.10:80
Port 443 ──────────► NAT leitet    ─────► 192.168.1.10:443
Port 22 ───────────► weiter)       ─────► 192.168.1.20:22
Achtung

Port Forwarding öffnet den Server nach außen! Immer mit Firewall-Regeln absichern.

Top 9 Best Practices

  1. Dokumentation: Jede Regel beschreiben
  2. Regelmäßige Reviews: Monatlich Logs prüfen
  3. Least Privilege: Nur notwendige Zugriffe
  4. Segmentierung: VLANs verwenden
  5. Default Deny: Alles blockieren außer Erlaubtem
  6. Logging: Wichtige Aktionen loggen
  7. Rate Limiting: Brute-Force-Schutz
  8. Updates: Firewall-Software aktuell halten
  9. Backups: Regelmäßig Konfiguration sichern

X. Intrusion Detection mit Suricata


Suricata ist eine Open-Source IDS/IPS-Engine.

Analysiert Traffic auf Angriffsmuster und blockiert Bedrohungen.

IDS vs. IPS

        IDS                      IPS
         │                        │
         ▼                        ▼
   ┌─────────┐              ┌─────────┐
   │Monitoring│              │ Active  │
   │ Passiv  │              │Blocking │
   └─────────┘              └─────────┘
         │                        │
    Nur Alert                 Blockiert
         ▼                        ▼
   "Gefahr!"                 Traffic ❌
    Admin                     stoppen

IDS (Intrusion Detection System)

Überwacht Traffic und alarmiert bei Bedrohungen. Passiv – greift nicht ein.

Eigenschaften:

IPS (Intrusion Prevention System)

Überwacht UND blockiert bösartigen Traffic. Aktiv – greift direkt ein.

Eigenschaften:

Firewall 1 vs. IDS/IPS

Traditional Firewall:
    - Prüft: Source IP, Destination IP, Port, Protocol
    - Entscheidung: Allow/Deny

IDS/IPS (Deep Packet Inspection):
    - Prüft: Packet-Inhalt, Traffic-Patterns, Signatures, Anomalien
    - Entscheidung: Alert/Drop

Suricata in OpenSense

Installation:

  1. Services → Intrusion Detection → Administration
  2. Enable IDS: ✓
  3. Pattern Matcher: ac-ks (empfohlen) oder Hyperscan
  4. Interfaces: WAN

Rule Sets

Verfügbare Quellen:

  1. Emerging Threats (ET): ~35.000 Regeln (kostenlos)
  2. abuse.ch: SSL Blacklist, URLhaus, Feodo Tracker (~1.000+ Regeln)

Download-Prozess:

  1. Rulesets aktivieren (ET Open, abuse.ch)
  2. "Download and Update Rules"
  3. Automatische Updates einrichten (täglich)

Alert Monitoring

Services → Intrusion Detection → Alerts

Zeigt:
- Timestamp
- SID (Signature ID)
- Message (Angriffs-Typ)

XI. Threat Intelligence mit abuse.ch


abuse.ch ist eine kostenlose Threat Intelligence Plattform.

Stellt Datenbanken von bekannten Bedrohungen bereit.

Services

      abuse.ch Platform
             │
    ┌────────┼────────┐
    │        │        │
    ▼        ▼        ▼
┌────────┬────────┬────────┐
│Malware │URLhaus │Feodo   │
│ Bazaar │        │Tracker │
├────────┼────────┼────────┤
│SSL     │        │        │
│Blacklist│       │        │
└────────┴────────┴────────┘
    │        │        │
    └────────┼────────┘
             ▼
        Suricata Rules
             ▼
         Blockieren

1. MalwareBazaar

Datenbank von Malware-Samples.

Verwendung:

2. URLhaus

Datenbank von Malware-URLs.

Verwendung in Firewall 1:

3. Feodo Tracker

Datenbank von Banking-Trojanern (Emotet, TrickBot, etc.).

Verwendung:

4. SSL Blacklist

Datenbank von bösartigen SSL-Zertifikaten.

Verwendung:

Integration mit Suricata

Suricata + abuse.ch:

Traffic wird gegen ALLE Rulesets geprüft
  ├─► ET Open Rules (Exploits, Malware)
  └─► abuse.ch Rules (URLhaus, Feodo, SSL Blacklist)

→ Bei Match: Alert oder Block (IPS)

XII. Spam-Schutz (Multi-Layer Defense)


Defense in Depth = Mehrere Sicherheitsschichten hintereinander.

Multi-Layer Spam Protection

Layer 1: DNS Blacklist (RBL)
     │ ← Blockiert bekannte Spam-IPs
     ▼
Layer 2: SPF/DKIM/DMARC
     │ ← Prüft E-Mail-Authentizität
     ▼
Layer 3: Greylisting
     │ ← Verzögert unbekannte Absender
     ▼
Layer 4: Content Filter (SpamAssassin)
     │ ← Analysiert E-Mail-Inhalt
     ▼
Layer 5: Attachment Filter
     │ ← Blockiert gefährliche Anhänge
     ▼
User Mailbox ✓

Warum mehrere Schichten:

Layer 1: RBL (DNS Blacklists)

Liste von IPs, die für Spam bekannt sind.

Beliebte RBLs:

Layer 2: SPF, DKIM, DMARC

SPF (Sender Policy Framework)

Definiert, welche Server E-Mails für eine Domain senden dürfen.

DKIM (DomainKeys Identified Mail)

Digitale Signatur für E-Mails.

DMARC (Domain-based Message Authentication)

Policy, was mit E-Mails passieren soll, die SPF/DKIM nicht bestehen.

Layer 3: Greylisting

Temporäres Ablehnen von E-Mails unbekannter Absender.

Funktionsweise:

  1. E-Mail von unbekanntem Server → Ablehnen (temporär)
  2. Legitimer Mailserver versucht später nochmal → Durchlassen ✓
  3. Spam-Bot versucht es NICHT nochmal → Wird nie zugestellt ✗

Layer 4: SpamAssassin

Content-basierter Filter mit Scoring-System.

Analysiert: E-Mail-Header, Body, Links, Anhänge, Spam-Charakteristiken

Layer 5: Attachment-Filter

Blockiert gefährliche Dateitypen (.exe, .bat, .js, .vbs, etc.).

DNS-basierte Werbeblocker: Pi-hole

Blockiert Werbung und Tracking auf DNS-Ebene.

Funktionsweise:

  1. Gerät fragt: "Was ist die IP von ads.example.com?"
  2. Pi-hole prüft Blacklist → Ja, auf Liste!
  3. Pi-hole antwortet: "0.0.0.0"
  4. Werbung wird nicht geladen ✓

Vorteile:

XIII. Zusammenfassung


Hauptprinzipien

  1. Default Deny: Alles blockieren, was nicht erlaubt ist
  2. Stateful Inspection: Verbindungsstatus verstehen
  3. Least Privilege: Nur notwendige Zugriffe
  4. Defense in Depth: Mehrere Sicherheitsschichten

Typische Infrastruktur

Internet
   │
   ▼
Proxmox Host (Virtualisierung)
   │
   ├─► OpenSense VM (Firewall)
   │    ├─► WAN Interface
   │    ├─► LAN Interface
   │    ├─► VLANs (10, 20, 30, 111)
   │    ├─► VPN (WireGuard, OpenVPN)
   │    ├─► IDS (Suricata)
   │    └─► Threat Intel (abuse.ch)
   │
   ├─► Server VMs
   ├─► Workstation VMs
   └─► Container (Docker)

Sicherheitsfunktionen

  1. Firewall-Regeln: Stateful Packet Filtering
  2. VPN: WireGuard (modern) oder OpenVPN (etabliert)
  3. SSL/TLS: Let's Encrypt Zertifikate (ACME)
  4. IDS/IPS: Suricata mit ET Open und abuse.ch Regeln
  5. Threat Intelligence: MalwareBazaar, URLhaus, Feodo Tracker
  6. Spam-Schutz: Multi-Layer (RBL, SPF/DKIM/DMARC, Greylisting, SpamAssassin)
  7. DNS-Filtering: Pi-hole für Werbung und Tracking

Weiterführende Themen

Nächste Schritte

  1. Eigene Test-Umgebung mit Proxmox aufsetzen
  2. OpenSense als Firewall 1 installieren
  3. VLANs konfigurieren
  4. VPN (WireGuard) einrichten
  5. IDS (Suricata) aktivieren
  6. Firewall-Regeln nach Best Practices erstellen