Öffentliche IPv4 Adresse trotz CGNAT (mit Sophos UTM RED Tunnel)

In diesem Beitrag erkläre ich dir, wie du Carrier-Grade Nat umgehen und somit eine öffentliche IPv4 nutzen kannst.

Öffentliche IPv4 Adresse trotz CGNAT (mit Sophos UTM RED Tunnel)
‼️
Es scheint so, dass das Produkt Sophos UTM Home nicht mehr heruntergeladen werden kann und nur noch bestehende Systeme mit Lizenzverlängerungen bis 30. Juni 2026 gepflegt werden.

Das bedeutet im Umkehrschluss, dass diese Anleitung nur anwendbar ist, sofern du noch eine ISO-Datei der Sophos UTM Home und eine laufende Lizenz hast.

Da ich nach langer Wartezeit (ca. 2 Jahre) endlich meinen Glasfaseranschluss ins Haus bekommen habe, stand ich vor einer bisher nicht gegenwärtigen Herausforderung: mit der Deutschen Glasfaser hatte ich nun einen 600/300 Mbit Internetanschluss und benötigte meinen rund 60 EUR teuren Hetzner Root-Server nicht länger. Die Deutsche Glasfaser vergibt aber leider keine öffentlichen IPv4 Adressen, sondern nutzt Carrier Grade NAT. DynDNS würde also nicht mehr funktionieren. Ich wollte aber meine Dienste nun unbedingt auf meinem heimischen Server betreiben (Mail, Webserver, Game Server, Chat Server, etc).

Was nun?

Ich habe zu Hause eine kostenlose und virtualisierte Sophos UTM Firewall auf meinem Proxmox Hypervisor laufen. Ich benötigte nun also einen günstigen virtuellen Server, welcher mir die Möglichkeit bietet, eigene ISO Images laden zu können, um eine weitere Sophos UTM in einem Rechenzentrum zu installieren. Denn mit diesem vServer und der dort installierten Sophos UTM, wäre ich in der Lage eine öffentliche IPv4 Adresse für meinen Internetzugang zu erhalten.

Ich habe die Idee eines Portmappers verworfen, weil ich mit einer 2. virtualisierten UTM deutlich mehr Möglichkeiten habe und ich auch davon ausging, möglicherweise Probleme mit meinem Mailserver zu bekommen (bezüglich blacklisting) oder es anderweitige Komplikationen in meinem Szenario geben könnte.

Ein vServer muss her!

Mit dem Server-Anbieter netcup GmbH habe ich eine gute Möglichkeit gefunden für wenig Geld eine virtualisierte Sophos UTM in einem Rechenzentrum betreiben zu können (sogar günstiger als die Portmapper Variante) und somit an eine statische und öffentliche IPv4 Adresse für meinen Server zu Hause zu gelangen. Ich habe mich hier für die günstigste Variante eines vServers entschieden. Dieser hat eine virtuelle CPU, 2 GB RAM, 20 GB SSD Speicher und 40 TB ungedrosselten Traffic - mehr als ausreichend für meine öffentliche Aussenstelle!

Auf dem vServer wird das Installationsmedium gemountet und die Sophos UTM wie gewohnt installiert. Ich habe mir noch eine 2. IP Adresse dazu bestellt, weil ich den Tunnel über eine andere IP als die NAT Regel laufen lassen wollte. Diese 2. IP Adresse muss dann als zusätzliche Adresse in der vServer Sophos UTM konfiguriert werden.


Und damit ihr als Neukunde 5 EUR sparen könnt, habe ich folgenden Gutscheincode für euch:

36nc16167837880

Diesen Gutscheincode könnt ihr in eurem Warenkorb oder unter folgendem Link einlösen: https://www.netcup.de/bestellen/gutschein_einloesen.php


Konfiguration des RED Tunnels

Im Rechenzentrum

In der Sophos UTM auf der Rechenzentrumsseite wird nun die Serverseite des RED Tunnels eingerichtet. Der Zweigstellenname spielt keine Rolle - hier habe ich "netcup Sophos" gewählt, damit erkennbar ist, wo sich die Sophos befindet. Als Client-Typ muss dann "RED-Firewall-Server" ausgewählt werden, den Rest lässt man unberührt.

In der RED-Verwaltung unter "[Server] Clientverwaltung" sollte nun deine neu eingerichtete Zweigstelle auftauchen. Mit einem Klick auf "Download" neben "Bereitstellungsdatei herunterladen" lädst du die Konfiguration für deine Sophos UTM zu Hause herunter.

Zu Hause

Nun loggst du dich auf deiner Sophos UTM zu Hause ein und gehst in die Verwaltung deiner "Definitionen & Benutzer". Dort musst du einen neuen Host mit der 1. öffentlichen IP deiner netcup Sophos UTM anlegen. Bei IPv4-Adresse trägst du die 1. IP Adresse deines netcup vServers ein.

Danach gehst du in die RED-Verwaltung. Allerdings öffnest du hier das "[Client] Tunnel-Management" und erstellst einen neuen Tunnel. Bei "UTM-Host" fügst du deinen gerade frisch erstellten Host (hier: Netcup Sophos #1) ein. Im nächsten Schritt lädst du die zuvor heruntergeladene Konfigurationsdatei (hier: Provis.-Datei) hoch und speicherst.

Danach sollte ein neues Objekt wie folgt auftauchen:

Wenn du alles korrekt ausgeführt hast, ist der Tunnel nun in der Übersicht online, was wie folgt aussieht!

Einrichtung der RED Interfaces

Im Rechenzentrum

Damit du deinen Traffic über deinen Tunnel hin- und herschicken kannst, benötigst du auf beiden Seiten eine neue Schnittstelle. Diese solltest du wie folgt konfigurieren (natürlich kannst du eine andere IP Adresse verwenden, wichtig ist nur, dass sie im gleichen Bereich sein wird, wie die IP Adresse der neuen Schnittstelle auf deiner Sophos UTM zu Hause).

Zu Hause

Damit deine Sophos zu Hause auch die Route kennt, auf welcher sie Anfragen zu deiner Sophos UTM im Rechenzentrum schicken darf, richtest du einen "Uplink-Ausgleich" unter "Schnittstellen" ein.

Statisches Routing

Im Rechenzentrum

Damit deine Sophos UTM im Rechenzentrum die Route in deine Heimnetze findet, benötigt sie statisches Routing. Das richtest du beispielsweise wie folgt ein:

Punkt 1: Hier gibst du dein entferntes Netz an (in meinem Fall ist dass das lokale Netz meiner Fritzbox)

Punkt 2: Hier gibst du das Gateway ein (die IP Adresse von deinem RED Interface zu Hause), damit die Sophos UTM weiß, wen sie fragen muss um in dein lokales Netz zu kommen.

Konfiguration der NAT Regeln

Im Rechenzentrum

Nun musst du erstmal eine zusätzliche Adresse einrichten, sofern du, wie ich, eine 2. IP Adresse dazugebucht hast. Das sieht dann biepielsweise so aus:

Im Rechenzentrum benötigst du nur eine einzige NAT Regel, welche jeglichen Traffic über deinen RED Tunnel zu deiner Sophos UTM nach Hause schickt. Diese NAT Regel sieht wie folgt aus:

Punkt 1: Hier trägst du Any ein, da du aus jeden Datenverkehrsquelle Traffic weiterleiten möchtest.

Punkt 2: Hier trägst du ebenfalls Any ein, da du jeden Datenverkehrsdienst weiterleiten möchtest.

Punkt 3: Hier gibst du die Schnittstelle mit der 2. IP Adresse deines netcup Servers ein.

Punkt 4: Das Ziel ändern wir auf die lokale IP Adresse deiner Sophos UTM zu Hause um (in meinem Fall die 192.168.200.2)

Punkt 5: Die Quelle ändern wir auf das RED Interface deiner netcup (Rechenzentrum) Sophos UTM um (in meinem Fall die 192.168.200.1)

Zu Hause

Wenn du nun beispielsweise einen Minecraft Server zu Hause betreibst, sieht die NAT Regel auf deiner Sophos UTM zu Hause wie folgt aus:

Punkt 1: Hier trägst du die IP Adresse deines netcup Sophos UTM RED Interfaces ein (in meinem Fall die 192.168.200.1)

Punkt 2: Hier trägst du den Port deines Minecraftservers ein (in meinem Fall TCP 25565)

Punkt 3: Hier trägst du die IP Adresse deines Sophos UTM RED Interfaces von zu Hause ein (in meinem Fall die 192.168.200.2)

Punkt 4: Und hier soll der Traffic an das Ziel des Minecraft Servers weitergeleitet werden.

Fazit

Du hast nun eine öffentliche und vorallem statische IPv4 Adresse für deinen Haus-Internetanschluss. Über weitere NAT Regeln kannst du hier verschiedene Dienste im Internet zur Verfügung stellen - Webserver solltest du allerdings nicht über NAT sondern über die Sophos Webserver Protection nach aussen richten. Hierüber werde ich aber in einem eigenständigen Artikel schreiben.