Machine Virtuelle Azure en IPv6

Il arrive par moment que l’on ait besoin de travailler en IPv6. Pourquoi faire ? Par exemple : tester le bon accès d’un autre composant en IPv6 ???? Ceci est effectivement mon cas : ce blog dédié à Azure est hébergé sur Azure via un App Service, fonctionnant en 2023 encore et toujours … en IPv4. Comme certains fournisseurs d’accès internet ont entièrement basculé sur le protocole IPv6, il est nécessaire de trouver une parade pour rendre le site accessible à tous.

Pourquoi faire un article dédié à l’IPv6 sur Azure ?

Comme il arrive que le blog par moment ne soit plus accessible en IPv6, il peut s’écouler pas mal de temps avant que je m’en rende compte. Cet écueil serait sans doute identifié plus rapidement si le site croulait sous l’audience ????.

Pour m’aider, il existe certains sites spécialisés dans l’affichage en IPv4 / IPv6, mais le résultat n’est pas toujours garantie.

Comment rendre un site hébergé sur Azure Web App compatible IPv6 ?

Plusieurs auteurs ont déjà trouvé une parade avant moi, comme Patrickob Blog, ou via un article rédigé sur la Tech Community de Microsoft : l’ajout du service Azure Front Door permet de disposer d’une adresse IPv6 frontale, cela redirige le flux de requêtes vers l’App Service :

Tout cela est possible grâce à l’ajout d’un enregistrement DNS de type CNAME pointant vers le nom d’hôte de votre service Azure Front Door : xxxxxx.azurefd.net.

Il est aussi possible d’utiliser uniquement un enregistrement DNS de type AAAA, pointant vers l’IPv6 de votre service Azure Front Door :

La configuration entre Azure Front Door et Azure App Service est par la suite assez facile :

Dans cet article, nous allons créer une machine virtuelle Azure afin de se connecter à l’App Service, par le biais d’Azure Front Door, et tout cela en IPv6.

Comme le rappelle Microsoft :

  • L’IPv6 apporte une sécurisation par défaut dans la mesure où la connectivité IPv6 à Internet n’est établie que lorsque vous le demandez explicitement dans votre déploiement.
  • L’utilisation d’adresses IPv6 publiques ou de préfixes IPv6 publics n’est pas facturée.
  • La bande passante associées sont facturées au même tarif que le protocole IPv4.

Avant de commencer notre démonstration, quelques rappels sont importants :

  • Les machines virtuelles uniquement IPv6 ne sont pas pris en charge, chaque carte réseau doit inclure au moins une configuration IPv4.
  • Il en est de même pour les réseaux virtuels Azure et ses sous-réseaux. Ils ne peuvent disposer d’une IPv6 uniquement, mais bien d’un double adressage IPv4 / IPv6.

Etape 0 – Rappel des prérequis :

Des prérequis sont nécessaires pour réaliser ce test sur un environnement Azure :

  • Un tenant Microsoft
  • Une souscription Azure valide

Etape I – Déploiement du Réseau Virtuel Azure :

Commencez par créer un réseau virtuel :

Cochez la case suivante dédiée à l’IPv6, puis ajoutez un plan d0adressage en IPv6 à votre sous-réseau :

Lancez la validation, puis la création :

Attendez la création de votre réseau virtuel pour passer à l’étape suivante :

Un fois le réseau virtuel IPv4 / IPv6 correctement déployé, l’étape suivante consistera à créer une machine virtuelle avec une seule carte réseau sur ce réseau virtuel hybride.

Etape II – Création de la Machine Virtuelle Azure :

Commencez la création de votre machine virtuelle :

Dans l’onglet Réseau, choisissez le sous-réseau comprenant le double adressage IPv4 / IPv6, mais retirez la création de l’IP publique, par défaut prévue en IPv4 :

Lancez la validation, puis la création de votre machine virtuelle :

Attendez la fin de la création de votre machine virtuelle pour passer à l’étape suivante :

L’étape suivante consistera à ajouter une IP publique, mais uniquement sous format IPv6.

Etape III – Déploiement de l’IP publique en IPv6 :

Retournez sur la carte réseau de votre machine virtuelle :

Ajoutez une seconde configuration suivante :

Cliquez sur OK et attendez que la configuration se termine :

Retournez sur la page principale de votre machine virtuelle et constatez l’apparition d’une adresse IPv6 publique seule :

Etape IV – Connexion à la machine virtuelle IPv6 :

Connectez-vous à votre machine virtuelle via le protocole RDP :

Si comme moi vous rencontrez le message d’erreur suivant :

Déployez le service Azure Bastion comme ceci :

Renseignez les champs suivants :

Lancez sa validation, puis sa création :

Attendez la fin de la création d’Azure Bastion :

Connectez-vous à votre machine virtuelle via Azure Bastion nouvellement déployé :

Etape V – Tests IPv6 :

Une fois connecté, ouvrez la configuration IP et constatez la présence d’adresse IP locales en IPv4 et IPv6 :

Ouvrez également Edge et tester les informations réseaux internet depuis un des sites suivants :

Constatez la présence unique de l’IPv6 :

Testez le bon fonctionnement de l’IPv6 du site internet hébergé par l’App Service Azure via le nom de domaine :

Mais aussi via le nom de votre Azure Front Door :

Etape VI – Tests IPv6 d’Azure Front Door :

Afin de vérifier que la connexion entre la machine virtuelle et Azure Front Door s’opère bien uniquement sous le protocole IPv6, il est très facile de désactiver la route de ce dernier comme ceci :

Quelques secondes et un rafraîchissement web plus tard, le status de la route vers l’App Service change de couleur :

Réactualisez la page de votre site de test depuis votre machine virtuelle de test pour constater l’erreur :

Pensez à réactiver la route de votre service Azure Front Door.

Conclusion

Azure a encore du chemin à faire concernant l’implémentation générale de l’IPv6 au sein de l’ensemble de ses services. Nul doute que cela va arriver, mais on peut raisonnablement se demander exactement quand, car l’attente commence à se faire longueeeeeeeeeeeee ????.

Azure VPN couplé à Azure MFA

De temps à autre, je suis sollicité pour valider différentes combinaisons possibles entre des composants du Cloud Microsoft. Je trouvais donc intéressant de partager avec vous l’une d’entre elles.

Dans cet article, nous allons donc déployer une connexion VPN Point à Site sur un réseau Azure, et sécurisée par une authentification multifacteur (MFA).

Etape 0 : Rappel des prérequis

Comme pour beaucoup de mes articles Azure, des prérequis sont nécessaires pour réaliser cette démontration :

  • Un tenant Microsoft
  • Une souscription Azure valide
  • Un réseau virtuel existant sur Azure
  • Une ou des machines virtuelles déployées sur ce réseau (pour les tests)

Comme le montre la copie d’écran ci-dessous, quelques ressources sont déjà en place sur ma souscription Azure. Il s’agit essentiellement de ressources dédiées aux tests finaux.

Etape 1 : Déploiement de la passerelle VPN

Pour tester notre ensemble, nous devons mettre en place une passerelle VPN sur notre réseau virtuel Azure. Pour cela, Azure propose une ressource tout à fait adaptée à ce type de connexion.

Vous la retrouverez en utilisant la barre de recherche du portail

Cliquez sur Créer pour commencer le processus de création

Prenez votre temps pour renseigner tous les champs, en fonction de votre situation

Ne pas utiliser le SKU pour ce type de test.
Vous ne serez pas en mesure d’utiliser une authentification Azure AD avec celui-ci

Info : La copie d’écran ci-dessous montre l’absence d’authentification Azure AD possible lors de l’utilisation d’une passerelle VPN en SKU Basic

Comme pour toute liaison VPN, il est nécessaire de créer une adresse IP publique

Un accès VPN est par essence même une connexion sécurisé sur un réseau non sécurisé (internet).

Une fois terminé, cliquez sur Valider et créer

Une dernière vérification, puis lancez la création de la passerelle VPN.

Ce processus est assez long puisqu’Azure déploie des machines virtuelles managées pour produire la connexion VPN. Comptez environ 30 minutes pour que le déploiement se termine.

Nous allons profiter de ce temps pour créer une second machine virtuelle, représentant une ressource locale utilisant cette passerelle VPN.

Etape 2 : Déploiement d’une seconde machine virtuelle pour jouer le rôle du client de la connexion VPN Point à Site

Comme annoncé juste avant, cette seconde machine ne sera évidemment pas sur le même réseau virtuel que la première.

Créez un second réseau virtuel dans une autre région Azure pour bien les identifier

Continuez avec l’adresse réseau et le sous-réseau

Azure propose par défaut un adressage réseau différent du premier réseau virtuel.
Il reste modifiable.

Lancez la création une fois tous les champs vérifiés

La création d’un réseau virtuel Azure est généralement très rapide

Continuiez avec le déploiement d’une nouvelle machine virtuelle sur ce réseau virtuel local

N’oubliez pas de renseigner le compte d’administrateur local et cochez la case concernant les droits d’utilisation de licence Windows 10

Vérifiez aussi que l’onglet réseau reprend le nouveau réseau virtuel local nouvelle créé, ainsi qu’une nouvelle adresse IP publique, utilisée pour s’y connecter en RDP

Décochez l’arrêt automatique de la machine virtuelle dans l’onglet suivant

Vérifiez une dernière fois les champs et lancez la création de la machine virtuelle

Quelques minutes plus tard, la machine virtuelle est bien créée. Cliquez ici pour rentrer sur la ressource

Démarrer une première connexion RDP sur celle-ci

Renseignez les identifiants indiqués lors de la création de la machine virtuelle

Vérifiez la configuration IP de cette machine locale avec la ligne de commande suivante

Testez le refus de connexion depuis cette machine à sur votre première machine Azure

Retournez sur votre portail Azure et attendez la création de votre passerelle VPN

Un contrôle dans le réseau virtuel Azure affiche bien un nouveau sous-réseau, dédié à notre passerelle VPN

Etape 3 : Préparation du tenant à la connexion VPN

L’opération qui va suivre nécessite un compte administrateur global. Il va falloir en effet donner des permissions spéciales à notre passerelle VPN pour utiliser l’authentification via Azure AD.

Cliquez sur le lien ci-dessous pour lui donner votre consentement :

https://login.microsoftonline.com/common/oauth2/authorize?client_id=41b23e61-6c1e-4545-b367-cd054e0ed4b4&response_type=code&redirect_uri=https://portal.azure.com&nonce=1234&prompt=admin_consent

Authentifiez-vous avec un compte administrateur global de votre tenant

Autorisez l’application Azure VPN

Une fois cette opération terminée, retournez sur le portail Azure AD pour y récolter plusieurs informations. Depuis la page principale, commencez par noter votre tenant ID

Dans la section des applications d’entreprise, localisez la nouvelle application nommée Azure VPN puis cliquez dessus

Notez l’application ID de cette dernière

Etape 4 : Configuration de la connexion Point à Site de la passerelle VPN

Retournez sur la liste des passerelles VPN d’Azure, puis cliquez dessus

Cliquez sur la configuration Point à Site, puis sur Configurer maintenant

Renseignez tous les champs suivants puis cliquez sur Sauvegarder

  • Adressage réseau : pour attribution d’IP aux périphériques, par exemple 172.16.0.0/24
  • Type de d’authentification désirée : Azure Active Directory
  • Tenant : https://login.microsoftonline.com/{AzureAD TenantID}/
  • Audience : ID de l’application « Azure VPN » Azure AD Enterprise App
  • Issuer : https://sts.windows.net/{AzureAD TenantID}/
Ne pas oubliez le / en fin de chacun des 2 arguments.

Une notification Azure vous confirme le succès ou l’échec de votre configuration Point à Site

Raffraîchissez la page web d’Azure pour être en mesure de télécharger la configuration du client VPN sur votre machine virtuelle de test

Copiez et extrayez l’archive ZIP téléchargée sur la machine virtuelle sur laquelle nous allons installer la connexion VPN

Sur cette même machine, ouvrez Microsoft Store pour y télécharger Azure VPN Client

Lancez le téléchargement d’Azure VPN Client

Inutile de vous authentifier pour continuer le téléchargement

Une fois le téléchargement terminé, lancez l’application Azure VPN Client

Importez la configuration de notre VPN créé sur Azure

Cherchez le fichier azurevpnconfig.xml dans l’archive extraite sur le bureau de notre machine de test

Sauvegarder la configuration issue de ce fichier xml

Etape 5 : Test de la connexion Point à Site de la passerelle VPN

Avant de lancer la connexion VPN, retournez sur la fenêtre de commande et lancez la commande PING suivante.

ping 10.0.0.4 -t

Cette commande lance une demande d’écho de manière ininterrompue vers notre première machine Azure

Retournez sur l’application Azure VPN Client et démarrez la connexion

Renseignez les identifiants d’un utilisateur présent dans Azure AD

Décochez la case et cliquez comme ceci

Le status de la connexion VPN devrait alors passer à Connecté

Contrôler le changement de résultat concernant la commande PING

Si cela n’est pas le cas, il vous faudra vous connecter sur la première machine Azure pour autoriser dans Windows Firewall les requêtes d’écho PING

Une fois la connexion réussie, stoppez la connexion VPN

Constatez l’arrêt de succès de la commande PING

Etape 6 : Implémentation de l’accès conditionnel sur la connexion VPN

Comme indiqué au début de cet article, nous voulons une connexion VPN Point à Site couplée à une authentification multifacteur. Le but étant de renforcer par l’exmple l’accès un réseau d’entreprise au moyen d’une authentification supplémentaire.

Voici une vidéo explicative sur l’authentification multifacteur

Voici une seconde vidéo combinant les effets de la MFA et de l’accès conditionnel

La configuration de l’accès conditionnel se fait depuis Azure AD, cliquez sur le menu Sécurité puis Accès Conditionnel

Créez une nouvelle police d’accès conditionnel

Donnez-lui un nom puis cherchez le ou les utilisateurs de test

Restreignez votre police à l’application d’entreprise créée précédemment : Azure VPN

Exigez l’authentification multifacteur et activez votre police en cliquant sur ON puis sauvegardez

Azure demande quelques minutes avant d’appliquer les modifications faites sur les polices d’accès conditionnel.

Quelques minutes plus tard, retourner sur votre seconde machine et relancez la connexion VPN déjà présente dans l’application Azure VPN Client

La MFA devrait rentrer en ligne en compte. Mon compte de test Azure AD étant insuffisamment paramétré, le message suivant apparaît

Terminez au besoin la procédure d’enrôlement de sécurité pour votre utilisateur de test

Retrouvez bien par la suite la demande MFA pour finaliser la connexion VPN

Une fois celle-ci réussie, la connexion VPN s’établit bien

La commande PING retrouve bien l’accès à ma première machine Azure

Conclusion

Par cet article, nous voyons qu’Azure nous apporte toujours plus de sécurité grâce à la combinaison rapide et facile de différentes mesures de protection. Il est toujours important d’aborder la sécurité sous forme de couches hérmétiques entre elles afin de rendre toujours plus difficile les intrusions informatiques.

Comme à chaque fois, pensez également à partager dans les commentaires vos propres expériences ????