# OPNsense NAT: Port-Forwarding, Outbound & Reflection
TL;DR / Management Summary Network Address Translation (NAT) ist der Kleber, der private Netzwerke (RFC 1918) mit dem öffentlichen Internet verbindet. In OPNsense unterscheiden wir zwischen Port-Forwarding (DNAT) für eingehende Dienste, Outbound NAT (SNAT) für den Internetzugriff und NAT Reflection, damit interne User den Webserver unter seiner öffentlichen IP erreichen können. Ein Senior Admin nutzt “Pure NAT” Reflection und vermeidet “Port-Holes” durch den Einsatz von Aliases.
# 1. Einführung & Typen
Die IP-Manipulation.
NAT ändert die Quell- oder Ziel-IP eines Pakets während des Durchgangs durch die Firewall.
# 1. Port Forwarding (Destination NAT)
- Ziel: Ein Dienst im LAN (z.B. Webserver
10.0.1.50) soll unter der öffentlichen WAN-IP (80.x.y.z) erreichbar sein.
# 2. Outbound NAT (Source NAT)
- Ziel: Alle PCs im LAN nutzen die eine öffentliche IP der Firewall, um ins Internet zu gehen (Masquerading).
# 2. Port-Forwarding in der Praxis
Dienste sicher publizieren.
Firewall -> NAT -> Port Forward.
# Beispiel: Webserver (HTTPS)
- Interface: WAN.
- Protocol: TCP.
- Destination: WAN address.
- Destination Port:
HTTPS. - Redirect target IP:
10.0.1.50. - Redirect target port:
HTTPS. - Filter rule association:
Rule(erstellt automatisch die passende Firewall-Regel).
# 3. Deep Dive: NAT Reflection (Split-Horizon Ersatz)
Intern auf Extern zugreifen.
Wenn ein User im LAN https://www.meinefirma.de (öffentliche IP) aufruft, landet das Paket standardmäßig bei der Firewall und wird gedroppt, da die Firewall denkt, es sei für sie selbst bestimmt.
# Die Lösung: Pure NAT Reflection
Aktivieren Sie NAT Reflection in den Port-Forward-Regeln:
- NAT Reflection:
Enable. - Vorteil: User können intern die gleiche URL nutzen wie extern.
- Alternative: Split-Brain DNS (Artikel 493). Dies ist oft sauberer, da kein NAT-Overhead entsteht.
# 4. Day-2 Operations: Outbound NAT Tuning
Spezielle IPs für spezielle Dienste.
Standardmäßig nutzt OPNsense “Automatic Outbound NAT”.
- Szenario: Ein Mailserver soll über eine zweite öffentliche IP raussenden, um nicht als Spam markiert zu werden.
- Aktion: Modus auf Hybrid outbound NAT rule generation stellen und eine manuelle Regel für den Mailserver-Host oben einfügen.
# 5. Troubleshooting & “War Stories”
Wenn die Übersetzung hakt.
# Top 3 Fehlerbilder
-
Symptom: Port-Forwarding geht nicht.
- Ursache: Das Default Gateway am internen Server fehlt oder zeigt auf eine andere Firewall.
- Lösung: Gateway am Webserver prüfen (
ip routeoderroute print).
-
Symptom: FTP im Active-Mode funktioniert nicht hinter NAT.
- Ursache: NAT bricht die Inbound-Datenverbindung.
- Lösung: Auf Passiv-FTP wechseln oder FTP-Proxy Plugin in OPNsense nutzen.
-
Symptom: “Hairpinning” (NAT Reflection) funktioniert nur sporadisch.
- Lösung:
Firewall -> Settings -> Advanced -> Reflection for port forwardsglobal prüfen.
- Lösung:
# “War Story”: Der schweigende VoIP-Server
Ein Kunde migrierte seine Telefonanlage hinter eine OPNsense. Telefonate konnten aufgebaut werden, aber man hörte nichts (Einweg-Audio). Die Entdeckung: Das VoIP-Protokoll (SIP) schreibt die interne IP in den Header. Die Firewall übersetzt nur den Paket-Header, nicht den Inhalt. Lösung: Deaktivieren von SIP-ALG (oft ein Fehler-Treiber) und Erstellung einer statischen Port-Forwarding-Regel für den RTP-Portbereich ohne Port-Randomisierung (Static Port). Lehre: NAT und Echtzeit-Medien (UDP) erfordern oft “Static Port” Mappings, um den Source-Port beim Rausgehen nicht zu verändern.
# 6. Monitoring & Alerting
NAT-States tracken.
# State Table Analyse
Prüfen Sie unter Diagnostics -> Network -> States, ob Ihre NAT-Regeln korrekt übersetzen.
- Sicht:
10.0.1.50:443 (80.x.y.z:443) -> 1.2.3.4:56789.
# 7. Fazit & Empfehlung
NAT ist ein notwendiges Übel im IPv4-Zeitalter.
- Empfehlung: Nutzen Sie Port-Aliase (Artikel 555), um Port-Forwarding-Regeln übersichtlich zu halten.
- Sicherheit: Nutzen Sie Port-Forwarding nur für TLS-verschlüsselte Dienste. Für alles andere (RDP, SMB) nutzen Sie ein VPN (Artikel 567).
# Anhang: Cheatsheet
| Aufgabe | Pfad |
|---|---|
| Port Forwarding | Firewall -> NAT -> Port Forward |
| Outbound Regeln | Firewall -> NAT -> Outbound |
| 1:1 NAT | Firewall -> NAT -> One-to-One |
| Statische Ports | Outbound NAT -> Static Port Haken |