Windows Azure mit VPN (Vyatta) verbinden

Aus aktuellem Anlass ist es mal wieder Zeit, etwas über Windows Azure zu berichten. Viele Unternehmen stehen gerade vor dem Problem, was mit dem „alten“ TMG 2010 Server passieren soll, jetzt wo das Produkt offiziell nur noch bis 2015 von Microsoft unterstützt wird. Aus diesem Grund nehme ich ein Feature, das mich in den letzten Wochen vor dem Jahreswechsel viel beschäftigt hat: das Azure Network Feature. 

So soll es aussehen:

Wenn Sie in Ihrer Subscription von Windows Azure (Netzwerkübersicht) Ihr Netzwerk auswählen und das obige Bild sehen, haben Sie alles richtig gemacht. Aber wenn Sie nicht gerade einen teuren Cisco Router oder eine Juniper Firewall Lösung einsetzen (hierfür gibt es Konfigurationsdateien zum Download), ist der Weg bis dahin steinig und schwer. “Ich möchte an dieser Stelle darauf hinweisen, dass Microsoft nicht mal für seine eigenen Produkte (TMG 2010, ISA, UAG) Konfigurationsbeispiele direkt verlinkt.” Es gibt natürlich Alternativen zu Cisco und Co., eine davon werde ich in diesem Beitrag vorstellen und das VPN erläutern. Wir, bei der ProTechnology GmbH, setzen seit einiger Zeit eine Routerlösung von Vyatta ein. Der Vorteil, diese Version ist vollkommen kostenlos und der Konfigurationsaufbau erinnert an Cisco.

Nun aber zur Konfiguration!
Zuerst legen wir in unserer Azure-Subscription ein neues Netzwerk an. Zur Veranschaulichung haben wir hier den Namen „VPN-Test“ und die Affinitätsgruppe „Test-VPN“ gewählt.

Als Nächstes benötigen wir für unser virtuelles Netzwerk einen Adressraum (10.0.0.0/24) und unterhalb des Adressraumes definieren wir das passende Subnetz, also 10.0.0.0 – 10.0.0.15.

Da wir unser Azure VPN Network an unser Corporate Network anbinden werden, macht es natürlich Sinn einen internen Servernamen für die Azure-VMs anzugeben. Damit eröffnen wir uns auch gleich die Möglichkeit, diese an das lokale Active Directory zu binden. In unserem Fall ist einer der Test-Domain-Controller unter der IP 10.0.1.100 zu erreichen. Jetzt kommt der erste eigentliche Schritt der IPSec-VPN Konfiguration: wir geben unser Gateway-Netzwerk an.

Wichtig ist es, dass sich das Netzwerk in dem zuvor gewählten Adressraum befinden muss und es darf sich nicht mit einem vorhandenen Subnetz überschneiden. Die Schemaübersicht des virtuellen Netzwerkes, im unteren Teil des Bildes ersichtlich, füllt sich langsam mit Leben und zeigt uns an, wie es aussehen soll:

Danach definieren wir noch unser lokales Netzwerk. In unserem Fall sind das die Netze 10.0.1.0/24 (hier befindet sich unser DC) und 10.0.2.0/24. Wir vergeben einen Namen für das lokale Netz und hinterlegen die IPv4 WAN Adresse des Vyatta Routers.

Nun brauchen nur noch den zweiten Endpunkt unseres IPSec Tunnels. Dafür müssen wir einen Gateway bei Azure erstellen. Das geht widererwartend einfach. Wir klicken unten links auf „Gateway erstellen“ und warten bis Azure die Arbeit für uns erledigt hat und wir eine IPv4 Adresse zugewiesen bekommen.

Diese IPv4 benutzen wir dann in unserem Config-File für die Vyatta, um den Azure Endpunkt zu definieren. Nun brauchen wir nur noch den IPSec Pre-Shared-Key. Diesen bekommen wir aus der Konfiguration unseres Netzwerkes über „Schlüssel verwalten“ und „einen Key erstellen lassen“.

Nun die Vyatta Konfiguration - Sie werden sehen, jetzt geht es drei Mal so schnell ;-)

Wir erstellen eine neue IKE Gruppe mit dem Namen „azure” und den unten genannten Eigenschaften. Diese Werte können Sie in einem MSDN Artikel und in den oben genannten Config-Files für Cisco und Juniper auslesen.

Config-Path: VPN àIPSec à IKE-Group

ike-group azure {
     lifetime 28800
     proposal 1 {
         dh-group 2
         encryption aes128
         hash sha1
     }
 }

Nun brauchen wir noch die passende ESP Gruppe. Auch hier nehmen wir wieder der Name „azure“ und die unten genannten Eigenschaften. Diese Werte sind ebenfalls von Microsoft vorgegeben.

Config-Path: VPN àIPSec à ESP-Group

esp-group azure {
     lifetime 3600
     pfs disable
     proposal 1 {
         encryption aes128
         hash sha1
     }
 }

Zum Schluss müssen wir an der Vyatta noch die Site-to-Site Konfiguration vornehmen. Dazu brauchen wir die Gateway IP und den Pre-Shared-Key von Azure.

Config-Path: VPN àIPSec à Site-to-Site

peer x.x.x.x {                                         // (IP des Azure VPN Gateways)
 authentication {
      mode pre-shared-secret
      pre-shared-secret Pre-Shared-Key                  // Pre-Shared-Key aus Azure
  }
  connection-type respond  // wichtig, respond verwenden/Verbindungsherstellung durch Azure
  default-esp-group azure
  description "Windows Azure Subscription"
  ike-group azure
  local-address x.x.x.x                                 // WAN IP der Vyatta
  tunnel 1 {
      local {
          prefix 10.0.1.0/24                                    // lokales Netzwerk des Nameservers
      }
      remote {
          prefix 10.0.0.0/24                                    // Azure Netzwerk
      }
  }
  tunnel 2 {
      local {
          prefix 10.0.2.0/24                                    // zweites lokales Netzwerk
      }
      remote {
          prefix 10.0.0.0/24                                    // Azure Netzwerk
      }
  }
         }

Endlich fertig. Nun wird Ihre VPN, nach dem Sie in Azure auf “Verbinden” geklickt haben, online sein, Sie können nun VMs an das virtuelle Netzwerk bei Windows Azure anhängen und diese aus Ihrem lokalen Netz erreichen.

Über Anregungen und Fragen zu diesem Beitrag oder dem komplexen Thema Windows Azure freuen wir uns sehr.

P.S.: Mit der Anleitungen auf www.vyatta.org oder einem Consultant von ProTechnology ist die Ablösung des TMGs kein Problem mehr!

Quelle: www.vyatta.org, MSDN Artikel
Autor: Jens Decker

 

Hinterlasse eine Antwort