Firewall & NAT

Was ist eine Firewall?

Stell dir vor, dein Netzwerk ist ein Gebäude. Jeder der rein oder raus will, muss durch einen einzigen kontrollierten Eingang – den Türsteher. Der Türsteher prüft jeden Besucher anhand einer Liste: Wer darf rein? Wer muss draußen bleiben? Genau diese Rolle übernimmt eine Firewall im Netzwerk.

Eine Firewall ist ein Sicherheitssystem das den Netzwerkverkehr überwacht und anhand von Regeln entscheidet welche Pakete passieren dürfen und welche blockiert werden. Sie schützt ein Netzwerk oder ein einzelnes Gerät vor unerwünschtem Zugriff von außen – und kann auch ausgehenden Verkehr kontrollieren.

Firewalls gibt es als Hardware (dediziertes Gerät im Netzwerk) und als Software (z.B. die Windows-Firewall oder iptables unter Linux). In professionellen Umgebungen werden meist dedizierte Hardware-Firewalls eingesetzt.

Paketfilter – Die einfachste Form

Die grundlegendste Art einer Firewall ist der Paketfilter. Er prüft jedes einzelne Paket anhand fixer Kriterien:

  • Quell-IP-Adresse: Woher kommt das Paket?

  • Ziel-IP-Adresse: Wohin soll das Paket?

  • Protokoll: TCP, UDP, ICMP?

  • Quell-Port: Von welchem Port kommt das Paket?

  • Ziel-Port: An welchen Port soll das Paket?

Anhand dieser Informationen werden Regeln abgearbeitet – von oben nach unten. Die erste Regel die passt, wird angewendet. Am Ende jeder Regelkette steht meist eine implizite Deny-All-Regel: Alles was nicht explizit erlaubt ist, wird blockiert.

Beispiel Regelset (vereinfacht):

Nr.  Protokoll  Quell-IP       Ziel-IP        Ziel-Port  Aktion
1    TCP        any            192.168.1.10   80         ALLOW   ← HTTP erlaubt
2    TCP        any            192.168.1.10   443        ALLOW   ← HTTPS erlaubt
3    TCP        10.0.0.5       any            any        ALLOW   ← Admin-PC erlaubt
4    ICMP       any            any            any        ALLOW   ← Ping erlaubt
5    any        any            any            any        DENY    ← alles andere blockiert

Der Nachteil des einfachen Paketfilters: Er betrachtet jedes Paket isoliert – ohne Kontext. Er weiß nicht ob ein eingehendes Paket zu einer bestehenden Verbindung gehört oder ein neuer unerwünschter Verbindungsversuch ist.

Stateful Firewall – Mit Verbindungsgedächtnis

Die Stateful Firewall (zustandsbehaftete Firewall) ist deutlich intelligenter. Sie führt eine State Table – eine Tabelle aller aktiven Verbindungen. Wenn dein PC eine Verbindung zu einem Webserver aufbaut, merkt sich die Firewall diese Verbindung. Antwortpakete des Servers werden automatisch als Teil dieser erlaubten Verbindung erkannt und durchgelassen – ohne separate Regel.

State Table Beispiel:

Quell-IP       Quell-Port  Ziel-IP         Ziel-Port  Protokoll  Status
192.168.1.10   52341       93.184.216.34   443        TCP        ESTABLISHED
192.168.1.15   48291       8.8.8.8         53         UDP        NEW
192.168.1.10   52100       151.101.1.67    80         TCP        TIME_WAIT

Das ist heute der Standard. Praktisch jede moderne Firewall – ob Hardware oder Software – arbeitet stateful.

Next-Generation Firewall (NGFW)

Moderne Next-Generation Firewalls gehen noch weiter. Sie analysieren nicht nur Ports und IP-Adressen, sondern schauen direkt in den Inhalt der Pakete:

  • Deep Packet Inspection (DPI): Analyse des tatsächlichen Inhalts – erkennt Anwendungen unabhängig vom Port

  • Application Awareness: Kann bestimmte Anwendungen erlauben oder blockieren (z.B. YouTube erlaubt, BitTorrent blockiert)

  • Intrusion Prevention System (IPS): Erkennt und blockiert bekannte Angriffsmuster

  • SSL-Inspection: Kann auch verschlüsselten HTTPS-Traffic analysieren

Was ist NAT?

NAT steht für Network Address Translation. Es ist ein Verfahren bei dem ein Router die IP-Adressen (und oft auch Ports) in Paketen beim Weiterleiten verändert.

Der häufigste Anwendungsfall kennst du aus dem Heimnetzwerk: Dein Router hat eine einzige öffentliche IP-Adresse die dein Internetanbieter dir zugewiesen hat. Zu Hause hast du aber viele Geräte – PC, Smartphone, Tablet, Smart-TV – die alle gleichzeitig ins Internet wollen. NAT macht das möglich indem es alle ausgehenden Verbindungen unter der einen öffentlichen IP-Adresse „versteckt".

Heimnetzwerk mit NAT:

Geräte (private IPs)          Router              Internet
192.168.1.10 (PC)    ──┐
192.168.1.11 (Phone) ──┤── NAT ── 80.120.15.33 ──── Internet
192.168.1.12 (TV)    ──┘   (öffentliche IP)

Von außen sieht man nur 80.120.15.33
Die privaten Adressen sind unsichtbar

Wie funktioniert NAT genau? – PAT/Masquerading

Die in der Praxis fast ausschließlich verwendete Form ist PAT (Port Address Translation), auch Masquerading genannt. Dabei werden nicht nur IP-Adressen, sondern auch Port-Nummern übersetzt.

PAT-Beispiel – drei Geräte surfen gleichzeitig:

Intern                          Router (NAT-Tabelle)              Extern
192.168.1.10:52000 → google.com  →  80.120.15.33:10001 → google.com
192.168.1.11:48000 → google.com  →  80.120.15.33:10002 → google.com
192.168.1.12:61000 → google.com  →  80.120.15.33:10003 → google.com

Antwort von google.com an Port 10001 → Router weiß: gehört zu 192.168.1.10:52000
Antwort von google.com an Port 10002 → Router weiß: gehört zu 192.168.1.11:48000
Antwort von google.com an Port 10003 → Router weiß: gehört zu 192.168.1.12:61000

Der Router führt eine NAT-Tabelle die jede Verbindung mit internem Gerät, internem Port, externem Port und Ziel speichert. Anhand dieser Tabelle kann eingehender Traffic dem richtigen internen Gerät zugeordnet werden.

NAT-Typen im Überblick

NAT-Typ

Beschreibung

Typischer Einsatz

Static NAT

Eine private IP wird fest einer öffentlichen IP zugeordnet (1:1)

Server die von außen erreichbar sein sollen

Dynamic NAT

Private IPs werden dynamisch aus einem Pool öffentlicher IPs zugeordnet

Unternehmen mit mehreren öffentlichen IPs

PAT / Masquerading

Viele private IPs teilen sich eine öffentliche IP – unterschieden durch Ports

Heimnetzwerke, Unternehmen – der Normalfall

Port Forwarding – Server hinter NAT erreichbar machen

NAT hat einen Nachteil: Von außen kann niemand eine Verbindung zu einem Gerät hinter dem Router aufbauen – der Router weiß nicht wohin er eingehende Verbindungen schicken soll.

Die Lösung heißt Port Forwarding (auch DNAT – Destination NAT): Der Router leitet Verbindungen die an einem bestimmten Port ankommen, gezielt an ein internes Gerät weiter.

Port Forwarding Beispiel:

Eingehende Verbindung auf 80.120.15.33:80
→ Router leitet weiter an 192.168.1.20:80 (interner Webserver)

Eingehende Verbindung auf 80.120.15.33:22
→ Router leitet weiter an 192.168.1.10:22 (interner SSH-Server)

Konfiguration (typisch):
Extern-Port 80  →  intern 192.168.1.20:80
Extern-Port 443 →  intern 192.168.1.20:443
Extern-Port 22  →  intern 192.168.1.10:22

Firewall und NAT zusammen

In der Praxis sind Firewall und NAT oft im selben Gerät vereint – zum Beispiel in deinem Heimrouter. NAT hat dabei einen angenehmen Nebeneffekt: Da interne Geräte von außen nicht direkt erreichbar sind, bietet NAT eine gewisse natürliche Schutzwirkung. Es ist jedoch kein Ersatz für eine echte Firewall – NAT schützt nicht vor Angriffen die über erlaubte Verbindungen kommen.

Zusammenfassung

  • Eine Firewall überwacht Netzwerkverkehr und entscheidet anhand von Regeln was passieren darf

  • Paketfilter prüfen Quell-/Ziel-IP, Protokoll und Ports – ohne Verbindungskontext

  • Stateful Firewalls führen eine State Table und erkennen ob Pakete zu bestehenden Verbindungen gehören

  • Next-Generation Firewalls analysieren Paketinhalte (DPI) und erkennen Anwendungen und Angriffsmuster

  • NAT übersetzt IP-Adressen (und Ports) beim Weiterleiten von Paketen

  • PAT/Masquerading erlaubt vielen internen Geräten das Teilen einer einzigen öffentlichen IP-Adresse

  • Port Forwarding (DNAT) macht interne Server von außen erreichbar

  • NAT bietet einen gewissen Schutz, ist aber kein vollwertiger Ersatz für eine Firewall