Cloud Hybride : VPN Site-à-Site avec Azure et Windows Server 2012
Durant les prochains mois, nous passerons beaucoup de temps sur les infrastructure de type Cloud Hybride, si vous êtes intéressés par le sujet, venez nous voir lors d’un de nos IT CAMPS, il y a forcément une conférence près de chez vous : Liste des IT CAMPS.
Ce que nous cherchons à réaliser dans cet article est une liaison site-à-site ou site-à-Azure afin d’avoir une connectivité complète entre un datacenter et la plateforme Azure IaaS.
Prenons un exemple simple:
Dans mon entreprise, j’ai le réseau DatacenterElysees avec pour réseau 192.168.2.0/24, j’ai dans mon Datacenter une passerelle VPN avec Windows Server 2012 qui a pour adresse IPv4 publique A.B.C.D.
Dans Azure, je défini un réseau virtuel 10.0.0.0/16, avec une passerelle Azure qui a pour adresse IPv4 publique D.E.F.G
Voyons les étapes qui me permettent d’établir une liaison sécurisé entre les deux infrastructure pour bénéficier d’un accès IP transparent entre le deux centres de données.
Configuration du VPN dans Azure IaaS
Nous partirons du postulat que les réseaux virtuels ont été crées dans Azure comme suit :
Vue dashboard | Vue configuration |
Une fois les réseaux virtuels définis dans Azure, il nous faut :
- Définir le réseau de notre DatacenterElysees et sa passerelle
- Activer la connexion au réseau local
- Activer la passerelle Azure
1. Définir notre Datacenter dans Azure
Il nous faut créer un nouveau réseau local, ce qui permettra de donner à Azure les caractéristiques de notre réseau d’entreprise pour y établir les règles de routage.
2. Activer la connexion au réseau local
Pour activer la connexion au réseau local (notre Datacenter), il nous faut aller dans la section configuration du réseau virtuel Azure et cocher l’option '”Connect to the local network”. Il vous demander ensuite de choisir quel réseau local est à connecter. Nous choisissons ici le réseau local que nous venons juste de définir et créer un sous réseau qui sera dédié à la connexion. Notez que cela ci devra se situer dans la plage des sous réseaux virtuels Azure.
Une fois la configuration sauvegardée, le tableau de bord de votre réseau virtuel devrait maintenant ressembler à cela :
3. Activer la passerelle Azure
Dans cette dernière étape, nous allons activer la passerelle Azure. C’est à partir de ce moment là qu’un qu’une adresse IPv4 publique d’Azure nous sera attribuée et que nous pourrons commencer à établir des connexions sécurisées avec le Cloud.
Il nous faut sélectionner l’option suivante :
et après confirmation :
La création de la passerelle peut prendre jusqu’à 15 minutes… au bout desquelles nous obtenons :
La passerelle est désormais opérationnelle ! Vous remarquez que la section Gateway IP Address vous donnera une IP d’Azure et non pas D.E.F.G comme j’ai masqué dans la capture d’écran.
Notons deux aspects intéressants dans la barre du bas :
La section manage key permet de gérer les clés partagées utilisées pour les liaisons IPsec.
“Download" va permettre de télécharger un modèle de script de configuration pour différentes passerelles dont celle que je vais utiliser dans quelques instants :
Il est maintenant temps de télécharger ce script de connexion et de le personnaliser pour interconnecter les sites.
Configuration de Windows Server 2012 comme passerelle RRAS
Dans mon exemple, je pars d’une machine Windows Server 2012 vierge et mise à jour, sur laquelle je vais appliquer le script de configuration que j’aurai personnalisé après son téléchargement du portail Azure.
Le script est en Powershell v3.0 malgré l’extension .cfg et contient au début des fonctions techniques, mais nous avons uniquement besoin de modifier les variables suivantes à la fin du script :
<SP_AzureGatewayIpAddress> | Adresse IP de la passerelle Azure, dans notre exemple D.E.F.G |
<SP_AzureNetworkCIDR> | Le réseau Azure en notation CIDR, dans notre exemple 10.0.0.0/16 |
<SP_AzureNetworkMetric> | La métrique réseau nécessaire, dans mon exemple je choisi la valeur 10, il peut être nécessaire de personnaliser selon la complexité de l’environnement. |
<SP_PresharedKey> | La clé partagée donnée par le portail Azure |
Renommons alors le fichier en .ps1 et autorisons l’exécution de scripts locaux : Set-Execution-Policy RemoteSigned.
Les puristes remarqueront sans doute que le script n’est pas très élaboré et il ne gère pas vraiment les erreurs. Parmi les choses qu’on peut signaler pour optimiser son déroulement :
- Installer les composants RRAS séparément pour gérer le reboot:
- Import-Module RemoteAccess
- Install-RemoteAccess -VpnType VpnS2S
- Rajouter un timer entre le redémarrage du service RRAS et le déclenchement de la connexion
- Restart-Service RemoteAccess
- Connect-VpnS2SInterface –Name D.E.F.G
Une fois tout cela exécuté, cela devrait le faire… Une petite trace réseau vous permettra de vérifier le bon dialogue entre les machines : on s’attend à voir dans un premier temps une négociation d’association de sécurité en utilisant le protocole IKEv2, puis on doit voir du trafic ESP lorsque les réseaux échangent effectivement du contenu :
Le portail Azure nous montre alors une connexion établie :
Le serveur RRAS, doit montrer également un état connecté similaire au suivant :
Dans un prochain article, nous aborderons la haute disponibilité de cette solution et peut être plus encore selon vos retours !
A bientôt lors d’un ITCAMP!
Pour tester Windows Server 2012 et Windows 8, vous pouvez télécharger gratuitement la version d’évaluation disponible sous la forme :
- d'une image ISO : https://aka.ms/jeveuxwindows2012
- d'un fichier VHD avec un système préinstallé : https://aka.ms/jeveuxwindows2012
Quelques références :
About VPN Devices for Virtual Network - https://msdn.microsoft.com/en-us/library/windowsazure/jj156075
Routing and Remote Access Service templates - https://msdn.microsoft.com/en-us/library/windowsazure/dn133801.aspx
Create a Virtual Network for Cross-Premises Connectivity - https://www.windowsazure.com/en-us/manage/services/networking/cross-premises-connectivity/
Arnaud – les bons tuyaux
Comments
Anonymous
January 01, 2003
A partir du moment ou l'IP est publique et bien accessible, je ne vois pas d'inconvénient à l'avoir dans un VM. Cordialement. ArnaudAnonymous
June 21, 2013
Bonjour, Merci pour cet article très intéressant. Je voudrai savoir s'il est possible que la machine passerelle en WS2012 soit un VM connectée directement sur Internet avec une IP Publique ? Ou, est-ce qu'une machine physique est requise ? MerciAnonymous
October 21, 2013
Par défaut le rôle RRAS sous Windows Serveur 2012 supporte t'il le NAT-Transversal ?Anonymous
October 23, 2013
Windows Server Supporte NAT-T. Si l'objectif est d'utiliser un Windows Server 2012 derrière un NAT pour mettre en œuvre la configuration décrite ci-dessus, ce n'est malheureusement pas un scénario supporté par Windows Azure. Cordialement, Arnaud