Démarrage rapide : Créer une instance Azure Front Door Standard/Premium – Azure CLI

Dans ce démarrage rapide, vous allez apprendre à créer un profil Azure Front Door Standard/Premium avec Azure CLI. Vous allez créer ce profil en utilisant deux applications web comme origine et ajouter une stratégie de sécurité WAF. Vous pouvez ensuite vérifier la connectivité de vos Web Apps à l’aide du nom d’hôte du point de terminaison Azure Front Door.

Diagramme de l’environnement de déploiement Front Door avec Azure CLI.

Notes

Pour les charges de travail Web, nous vous recommandons vivement d’utiliser la protection DDoS Azure et un pare-feu d’applications Web pour vous protéger contre les attaques DDoS émergentes. Une autre option consiste à utiliser Azure Front Door avec un pare-feu d’applications Web. Azure Front Door offre une protection au niveau de la plateforme contre les attaques DDoS au niveau du réseau. Pour plus d’informations, consultez Base de référence de la sécurité pour les services Azure.

Si vous n’avez pas d’abonnement Azure, créez un compte gratuit Azure avant de commencer.

Prérequis

Créer un groupe de ressources

Dans Azure, vous allouez les ressources associées à un groupe de ressources. Vous pouvez utiliser un groupe de ressources existant ou en créer un.

Exécutez az group create pour créer des groupes de ressources.

az group create --name myRGFD --location centralus

Créer un profil Azure Front Door

Dans cette étape, vous allez créer le profil Azure Front Door que vos deux services d’application utiliseront comme origine.

Exécutez az afd profile create pour créer un profil Azure Front Door.

Notes

Si vous souhaitez déployer Azure Front Door Standard au lieu de Premium remplacez la valeur du paramètre de référence SKU par Standard_AzureFrontDoor. Vous ne pourrez pas déployer de règles managées avec la stratégie WAF si vous choisissez la référence SKU Standard. Pour une comparaison détaillée, consultez Vue d’ensemble du niveau Azure Front Door.

az afd profile create \
    --profile-name contosoafd \
    --resource-group myRGFD \
    --sku Premium_AzureFrontDoor

Créer deux instances d’une application web

Dans cette étape, vous allez créer deux instances d’application web qui s’exécutent dans différentes régions Azure pour ce tutoriel. Les deux instances de l’application web s’exécutent en mode Actif/Actif, donc l’une ou l’autre peut traiter le trafic. Cette configuration diffère d’une configuration Active/Veille où l’une sert de basculement.

Créer des plans App Service

Avant de pouvoir créer les applications web, vous aurez besoin de deux plans App Service : l’un dans la région USA Centre et l’autre dans la région USA Est.

Exécutez az appservice plan create pour créer des plans App Service.

az appservice plan create \
    --name myAppServicePlanCentralUS \
    --resource-group myRGFD \
    --location centralus
az appservice plan create \
    --name myAppServicePlanEastUS \
    --resource-group myRGFD \
    --location eastus

Créer des applications web

Une fois les plans App Service créés, exécutez az webapp create pour créer une application web dans chacun des plans App Service de l’étape précédente. Les noms des applications web doivent être globalement uniques.

az webapp create \
    --name WebAppContoso-01 \
    --resource-group myRGFD \
    --plan myAppServicePlanCentralUS
az webapp create \
    --name WebAppContoso-02 \
    --resource-group myRGFD \
    --plan myAppServicePlanEastUS

Prenez note du nom d’hôte par défaut de chaque application web afin de pouvoir définir les adresses de back-end au moment de déployer la porte d’entrée à l’étape suivante.

Créer un Azure Front Door

Créer un profil Front Door

Exécutez az afd profile create pour créer un profil Azure Front Door.

Notes

Si vous souhaitez déployer Azure Front Door Standard au lieu de Premium, remplacez la valeur du paramètre de référence SKU par Standard_AzureFrontDoor. Vous ne pourrez pas déployer de règles managées avec la stratégie WAF si vous choisissez la référence SKU Standard. Pour une comparaison détaillée, consultez Vue d’ensemble du niveau Azure Front Door.

az afd profile create \
    --profile-name contosoafd \
    --resource-group myRGFD \
    --sku Premium_AzureFrontDoor

Ajout d’un point de terminaison

Dans cette étape, vous créez un point de terminaison dans votre profil Front Door. Dans Front Door Standard/Premium, un point de terminaison est un regroupement logique d’une ou de plusieurs routes associées aux noms de domaine. Chaque point de terminaison se voit recevoir un nom de domaine par Front Door, et vous pouvez associer des points de terminaison à des domaines personnalisés en utilisant des routes. Les profils Front Door peuvent aussi contenir plusieurs points de terminaison.

Exécutez az afd endpoint create pour créer un point de terminaison dans votre profil.

az afd endpoint create \
    --resource-group myRGFD \
    --endpoint-name contosofrontend \
    --profile-name contosoafd \
    --enabled-state Enabled

Pour plus d’informations sur les points de terminaison dans Front Door, consultez Points de terminaison dans Azure Front Door.

Créer un groupe d’origins

réer un groupe d’origines qui défini le trafic et les réponses attendues pour vos instances d’application. Les groupes d’origines définissent également la façon dont les origines doivent être évaluées par les sondes d’intégrité, que vous allez également définir à cette étape.

Exécutez az afd origin-group create pour créer un groupe d’origins qui contient vos deux applications web.

az afd origin-group create \
    --resource-group myRGFD \
    --origin-group-name og \
    --profile-name contosoafd \
    --probe-request-type GET \
    --probe-protocol Http \
    --probe-interval-in-seconds 60 \
    --probe-path / \
    --sample-size 4 \
    --successful-samples-required 3 \
    --additional-latency-in-milliseconds 50

Ajouter une origin au groupe

Ajouter vos deux instances d’application créées précédemment en tant qu’origines de votre nouveau groupe d’origines. Les origines dans Front Door font référence aux applications dont Azure Front Door récupère le contenu lorsque la mise en cache n’est pas activée ou lorsqu’un cache est manquant.

Exécutez az afd origin create pour ajouter votre première instance d’application en tant qu’origine à votre groupe d’origines.

az afd origin create \
    --resource-group myRGFD \
    --host-name webappcontoso-01.azurewebsites.net \
    --profile-name contosoafd \
    --origin-group-name og \
    --origin-name contoso1 \
    --origin-host-header webappcontoso-01.azurewebsites.net \
    --priority 1 \
    --weight 1000 \
    --enabled-state Enabled \
    --http-port 80 \
    --https-port 443

Répétez cette étape et ajoutez votre seconde instance d’application en tant qu’origine à votre groupe d’origines.

az afd origin create \
    --resource-group myRGFD \
    --host-name webappcontoso-02.azurewebsites.net \
    --profile-name contosoafd \
    --origin-group-name og \
    --origin-name contoso2 \
    --origin-host-header webappcontoso-02.azurewebsites.net \
    --priority 1 \
    --weight 1000 \
    --enabled-state Enabled \
    --http-port 80 \
    --https-port 443

Pour plus d’informations sur les origines, les groupes d’origines et les sondes d’intégrité, consultez Origines et groupes d’origines dans Azure Front Door

Ajouter un itinéraire

Ajouter une route pour mapper le point de terminaison que vous avez créé précédemment au groupe d’origines. Cet itinéraire transfère les requêtes du point de terminaison au groupe d’origin.

Exécutez az afd route create pour mapper votre point de terminaison au groupe d’origin.

az afd route create \
    --resource-group myRGFD \
    --profile-name contosoafd \
    --endpoint-name contosofrontend \
    --forwarding-protocol MatchRequest \
    --route-name route \
    --https-redirect Enabled \
    --origin-group og \
    --supported-protocols Http Https \
    --link-to-default-domain Enabled 

Pour en savoir plus sur les routes dans Azure Front Door, consultez Méthodes de routage du trafic vers l’origine.

Créer une stratégie de sécurité

Azure Web Application Firewall (WAF) sur Front Door fournit une protection centralisée pour vos applications web, en les défendant contre les attaques et les vulnérabilités courantes.

Dans ce tutoriel, vous allez créer une stratégie WAF qui ajoute deux règles managées. Vous pouvez également créer des stratégies WAF avec des règles personnalisées.

Créer une stratégie de pare-feu d’applications web (WAF).

Exécutez az network front-door waf-policy create pour créer une stratégie WAF pour votre Front Door. Cet exemple crée une stratégie qui est activée en mode prévention.

Notes

Les règles managées fonctionnent uniquement avec la référence du niveau Front Door Premium. Vous pouvez choisir la référence Standard du niveau pour utiliser des règles personnalisées uniquement.

az network front-door waf-policy create \
    --name contosoWAF \
    --resource-group myRGFD \
    --sku Premium_AzureFrontDoor \
    --disabled false \
    --mode Prevention

Notes

Si vous sélectionnez le mode Detection, votre pare-feu d’applications web ne bloque aucune requête.

Pour en savoir plus sur les paramètres de stratégie WAF pour Front Door, consultez Paramètres de stratégie pour Web Application Firewall sur Azure Front Door.

Affecter des règles managées à la stratégie WAF

Les jeux de règles managées par Azure offrent un moyen simple de protéger votre application contre les menaces de sécurité courantes.

Exécutez az network front-door waf-policy managed-rules add pour ajouter des règles managées à votre stratégie WAF. Cet exemple ajoute Microsoft_DefaultRuleSet_2.1 et Microsoft_BotManagerRuleSet_1.0 à votre stratégie.

az network front-door waf-policy managed-rules add \
    --policy-name contosoWAF \
    --resource-group myRGFD \
    --type Microsoft_DefaultRuleSet \
    --action Block \
    --version 2.1 
az network front-door waf-policy managed-rules add \
    --policy-name contosoWAF \
    --resource-group myRGFD \
    --type Microsoft_BotManagerRuleSet \
    --version 1.0

Pour en savoir plus sur les règles managées dans Front Door, consultez Règles et groupes de règles DRS Web Application Firewall.

Créer la stratégie de sécurité

Appliquez maintenant ces deux stratégies WAF à votre Front Door en créant une stratégie de sécurité. Ce paramètre applique les règles managées par Azure au point de terminaison que vous avez défini précédemment.

Exécutez az afd security-policy create pour appliquer votre stratégie WAF au domaine par défaut du point de terminaison.

Notes

Remplacez « mysubscription » par votre ID d’abonnement Azure dans les domaines et paramètres waf-policy. Exécutez az account subscription list pour obtenir les détails de l’ID d’abonnement.

az afd security-policy create \
    --resource-group myRGFD \
    --profile-name contosoafd \
    --security-policy-name contososecurity \
    --domains /subscriptions/mysubscription/resourcegroups/myRGFD/providers/Microsoft.Cdn/profiles/contosoafd/afdEndpoints/contosofrontend \
    --waf-policy /subscriptions/mysubscription/resourcegroups/myRGFD/providers/Microsoft.Network/frontdoorwebapplicationfirewallpolicies/contosoWAF

Tester la porte d’entrée

Une fois le profil Azure Front Door Standard/Premium créé, il faut quelques minutes pour que la configuration soit déployée dans le monde entier. Une fois l’opération terminée, vous pouvez accéder à l’hôte frontal que vous avez créé.

Exécutez az afd endpoint show pour obtenir le nom d’hôte du point de terminaison Front Door.

az afd endpoint show --resource-group myRGFD --profile-name contosoafd --endpoint-name contosofrontend

Dans un navigateur, allez vers le nom d’hôte du point de terminaison : contosofrontend-<hash>.z01.azurefd.net. Votre requête est automatiquement acheminée vers l’application web la moins latente dans le groupe d’origin.

Capture d’écran du message : Votre application web est en cours d’exécution et attend votre contenu

Pour tester le basculement global instantané, nous utilisons les étapes suivantes :

  1. Ouvrez un navigateur et accédez au nom d’hôte du point de terminaison : contosofrontend-<hash>.z01.azurefd.net.

  2. Arrêtez l’une des Web Apps en exécutant az webapp stop

    az webapp stop --name WebAppContoso-01 --resource-group myRGFD
    
  3. Actualisez votre navigateur. Vous devriez voir la même page d’informations.

Conseil

Il y a un peu de retard pour ces actions. Vous devrez peut-être actualiser une nouvelle fois.

  1. Recherchez l’autre application web, puis arrêtez-la également.

    az webapp stop --name WebAppContoso-02 --resource-group myRGFD
    
  2. Actualisez votre navigateur. Cette fois, vous devriez voir un message d’erreur.

    Capture d’écran du message : Les deux instances de l’application web arrêtées

  3. Arrêtez l’une des Web Apps en exécutant az webapp start. Actualisez votre navigateur et la page revient à la normale.

    az webapp start --name WebAppContoso-01 --resource-group myRGFD
    

Nettoyer les ressources

Lorsque vous n’avez plus besoin des ressources pour l’instance Front Door, supprimez les deux groupes de ressources. La suppression des groupes de ressources entraîne également la suppression de l’instance Front Door et de toutes les ressources associées.

Exécutez az group delete :

az group delete --name myRGFD

Étapes suivantes

Passez à l’article suivant pour apprendre à ajouter un domaine personnalisé à votre porte d’entrée.