Sophos UTM und Azure Site-2-Site VPN (IPSec)

Hier folgt eine kurze Anleitung wie mit der Sophos UTM eine Site-2-Site (S2S) VPN Verbindung zu Microsoft Azure hergestellt werden kann. Da das Azure Portal mittlerweile deutlich überarbeitet wurde und ich nur recht alte HowTo’s gefunden habe, habe ich meine Konfiguration der UTM und Azure hier einmal zusammengefasst. Wenn ich etwas Zeit finde, folgt auch noch ein Artikel wie der Zugriff auf die jeweiligen Netze eingeschränkt werden kann.

Einleitung

Für dieses HowTo benutze ich eine “leere” Azure Umgebung, bisher wurden also keine Ressourcen angelegt. Wenn bereits Virtuelle Netze angelegt wurden, lässt sich diese Anleitung aber meist übertragen oder gegebenenfalls leicht abändern.

Hier mal eine kleine Übersicht, wie die lokale und die zukünftige Azure Umgebung aufgebaut wird:

Zeichnung1

Es gibt zwei lokale Netze 192.168.100.0/24 und 172.16.14.0/24. Innerhalb von Azure wird das Virtuelle Netzwerk 10.10.0.0/16 angelegt, welches wiederum mehrere Subnetze (10.10.1.0/24, 10.10.2.0/24, etc) enthält.

Konfiguration Azure Netzwerke

Zuerst erfolgt die Konfiguration der virtuellen Netzwerke in Azure. Dazu wird zunächst ein neues virtuelles Netzwerk angelegt:

Azure Virtuelles Netzwerk

Das neue virtuelle Netzwerk erhält den Adressbereich 10.10.0.0/16, innerhalb dieses Netzes wird das Subnetz 10.10.0.0/24 angelegt. Das erste Subnetz (10.10.0.0/24) könnte beispielsweise Dienste enthalten, welche aus dem Internet direkt erreichbar sind. Welche Funktion den Subnetzen zugeordnet wird, ist aber jedem selbst überlassen:

Azure Virtuelles Netzwerk

Sobald das neue virtuelle Netzwerk mit dem ersten Subnetz erstellt wurde, sollte die Übersicht in Azure wie folgt aussehen:

Azure Virtuelles Netzwerk

Mit einem Klick auf das neue virtuelle Netzwerk, lassen sich nun weitere Subnetze anlegen.

Damit später eine S2S-VPN Verbindung aufgebaut werden kann, wird ein Gatewaysubnetz benötigt. Ich habe das Gatewaysubnetz auf das letzte Subnetz im 10.10.0.0/16 Netz gelegt (In diesem Fall also 10.10.255.0/24):

Azure Gateway

Nachdem das Gatewaysubnetz erstellt wurde, kann nun ein “Gateway für virtuelle Netzwerke” erstellt werden. Dabei handelt es sich im Prinzip um einen VPN fähigen Router in Azure. Unter dem Menüpunkt “Ressource erstellen” kann nach “Gateway für virtuelle Netzwerke” gesucht werden und die entsprechende Ressource erstellt werden:

Azure Gateway

Jetzt können die Einstellungen für das virtuelle Gateway festgelegt werden. Wichtig ist, dass die Sophos UTM derzeit IKEv1 unterstützt, somit muss der “VPN-Typ” auf “Richtlinienbasiert” eingestellt werden. Der VPN-Typ “Routenbasiert” erfordert IKEv2, welches derzeit nicht von der UTM unterstützt wird. Die weiteren Einstellungen sollten selbsterklärend sein:

Azure Gateway

Wenn bis hier her alles geklappt hat, lässt sich das neue Gateway erstellen:

Azure Gateway

Jetzt kann ein neues “Lokales Netzwerkgateway” erstellet werden. Das “Lokale Netzwerkgateway” ist im Prinzip die lokale Sophos UTM (in der UTM heißt diese Konfiguration “Entferntes Gateway”), hier werden die Einstellungen für den S2S-VPN-Tunnel vorgenommen:

Azure lokales Netzwerkgateway

Für das “Lokale Netzwerkgateway” werden die Einstellungen die Daten der lokalen Sophos UTM eingetragen, im wesentlichen also die statische IP WAN der IP UTM und die im Tunnel verfügbaren lokalen Netzwerke:

Azure lokales Netzwerkgateway

Nachdem das “Lokale “Netzwerkgateway” angelegt wurde, sollte die Azure Übersichtsseite nun wie folgt aussehen:

Wichtig: An dieser Stelle muss abgewartet werden, bis die Bereitstellung der Ressourcen abgeschlossen ist (Glockensymbol)

Azure lokales Netzwerkgateway

Damit von der UTM eine S2S-VPN Verbindung hergestellt werden kann, muss eine neue “Verbindung” hinzugefügt werden. Die S2S Verbindung kann auf der zuvor erstellten Ressource “Gateway für virtuelle Netzwerke” hinzugefügt werden, in diesem Fall also “FrankysWeb-Test-VNet1-GW1”:

Azure Site-2-Site Verbindung

Innerhalb der Verbindung kann nun ein PSK (Pre Shared Key, Gemeinersamer Schlüssel) eingetragen werden, der PSK wird später für die Konfiguration der UTM benötigt:

Azure Site-2-Site Verbindung

Nachdem die Einstellungen gespeichert wurden, sieht die Übersicht der Verbindungen nun so aus:

Azure Site-2-Site Verbindung

Für die Konfiguration der Sophos UTM wird nun neben dem PSK auch die statische IP des Azure Gateways benötigt. Die IP lässt sich in der Übersicht anzeigen:

Azure Site-2-Site Verbindung

Die Azure Konfiguration ist nun abgeschlossen, weiter geht es mit der lokalen UTM.

Konfiguration der Sophos UTM

Da die Azure Konfiguration nun abgeschlossen ist, kann mit der Konfiguration der Sophos UTM begonnen werden. Zunächst muss eine neue “IPsec Richtlinie” erstellt werden:

Sophos UTM IPsec Richtlinie

Die Einstellungen der “IPsec Richtlinie” der UTM sind im folgenden Screenshot abgebildet:

Sophos UTM IPsec Richtlinie

Jetzt kann ein neues “entferntes Gateway” angelegt werden, also das Gegenstück zum “Lokalen Netzwerkgateway” in Azure. ALs Gateway wird die IP Adresse des Azure Gateways verwendet:

UTM entferntes Gateway

Als Authentifizierungsmethode wird “Verteilter Schlüsse” (PSK, Pre Shared Key) genutzt und der zuvor in Azure festgelegte PSK verwendet. Zusätzlich wird das Azure Netzwerk als “entferntes Netzwerk” angelegt, in diesem Fall also das komplette Netz 10.10.0.0/16:

UTM entferntes Gateway

Die Übersicht der UTM sollte nun wie folgt aussehen:

UTM entferntes Gateway

Nachdem das entfernte Gateway erzeugt wurde, kann eine neue IPsec-Verbindung erstellt werden. Hier wird das zuvor erstellte entfernte Gateway und die IPsec Richtlinie ausgewählt. Als lokale Schnittstelle wird die WAN-Schnittstelle der UTM eingetragen. Als lokale Netzwerke müssen die Subnetze / Netzwerke eingetragen werden, die zuvor auf dem lokalen Netzwerkgateway in Azure eingetragen wurden. Die Einstellungen der lokalen Netzwerke der UTM muss mit den Subnetzen des lokalen Netzwerkgateways in Azure übereinstimmen:

UTM IPsec Verbindung

Nachdem die Verbindung erstellt wurde, kann der S2S-Tunnel aktiviert werden:

UTM IPsec Verbindung

Nach kurzer Zeit sollte die Verbindung funktionieren.

Status / Tests

Um den Status der S2S Verbindung zu prüfen, kann der Status auf der Site-2-Site-VPN Übersichtsseite der UTM angezeigt werden, wenn es für jedes konfigurierte lokale Netz eine SA gibt, sollte die Verbindung funktionieren:

UTM IPsec SAs

Auch im Azure Portal der Status der VPN Verbindung angezeigt:

Azure Site-2-Site Übersicht

Mittels ping lässt sich nun auch der Status der Verbindung prüfen:

Ping Test

Tipp: Wenn neue lokale Subnetze zur Tunnelkonfiguration hinzugefügt werden, muss die Konfiguration auf beiden Seiten (Azure und UTM) angepasst werden, danach muss der Tunnel neu aufgebaut werden (Trennen und neu verbinden). Wenn neue Azure Subnetze angelegt werden, beispielsweise 10.10.3.0/24 muss der Tunnel einmal neu aufgebaut werden, eine Anpassung der Konfiguration ist nicht nötig.

8 Gedanken zu „Sophos UTM und Azure Site-2-Site VPN (IPSec)“

  1. Hallo,
    kurze Ergänzung:
    Die Sophos hat scheinbar Probleme mit komplexen PSKs.
    Falls es also Probleme gibt, einfach mal mit einem einfacheren Key testen.
    Bei mir war es da…hat mich einige graue Haare gekostet.

    Antworten
  2. @ komplexen PSKs?

    Wie genau hat sich denn das Problem bei Euch dargestellt?
    Habt Ihr keine Verbindung hergestellt bekommen, oder bestand offensichtlich die VPN-Verbindung, die jedoch irgendwann doch Down war?

    Wir haben momentan das Phänomen, dass die VPN-Verbindung besteht, jedoch ein Ping nicht durchgeht, sowie keine RDP-Sessions aufgebaut werden können. Erst nachdem die VPN-Verbindung getrennt und wieder aufgebaut wird, funktioniert wieder alles.

    Antworten
  3. @Viktor
    Wir konnten gar keine Verbindung aufbauen. Leider haben wir ebenfalls Probleme mit der Stabilität des Tunnels, die sich genau wie von die beschrieben äußern. Wir werden die Sophos über kurz oder lang ersetzen. Wenn du eine Lösung gefunden hast, aber gerne hier kurz schreiben.

    Antworten
    • Das komische ist, dass bei uns in der Firma eine VPN-Verbindung zu Azure besteht, ohne das wir gewisse Probleme ffeststellen konnten. Bei einem Kunden dagegen, die von mir beschriebenen Probleme.

      Die Einstellungen sind auf beiden FW identisch. Der einzige Unterschied ist, dass bei der Kommunikation mit Azure bei uns der Port 4500 und beim Kunden der Port 500 genutzt wird.

      Antworten
      • Ich kann gerade nicht nachschauen welcher Port genutzt wird, aber wir haben das Problem von beginn an. Auch Firmware Updates haben bisher nicht geholfen. Der Azure Support ist auch nicht hilfreich, da die Firewall nicht zu den supported devices gehört.
        Bei einem Kunden hatten wir vor kurzem ein identisches Problem mit einer VPN (nicht Sophos) dort wurde uns empfohlen Azure als Initiator zu konfigurieren. Das habe ich bei der Sophos VPN noch nicht getestet.

        Zitat vom Support:
        An investigation from our end reveals that your on-premises device sent SA delete at that period and this delete the phase 2 part of the tunnel, this is why the connection was up and no traffic. The on-premises device sent SA delete packets intermittently and when the connection tried to come back up, SA deletes were sent again.

        Antworten
        • Das Problem mit der „bestehenden Verbindung“ hatten wir in einer anderen Form bei einem Kunden. Hier sind die Einstellungen in der Policy der VPN-Verbindung entscheidend. Es kommt dort auf die z.B. IPsec-SA-Lebensdauer an, die überprüft ob die andere Seite noch da ist und dann die Trennung vollzieht.

          Die FW wenn Sie Antwortet muss wissen, nach welcher Zeit die Trennung zum anderen Netz abgebrochen werden soll, wenn keine Packete zurück kommen. Hier muss auch noch der Punkt Dead Peer Detection aktiviert sein.

Schreibe einen Kommentar