Démarrage rapide : créer une instance Azure Front Door à l’aide d’Azure CLI
Dans ce guide de démarrage rapide, vous allez apprendre à créer une instance Azure Front Door à l’aide d’Azure CLI. Vous allez créer ce profil en utilisant deux applications web Azure 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.
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
Utilisez l’environnement Bash dans Azure Cloud Shell. Pour plus d’informations, consultez Démarrage rapide pour Bash dans Azure Cloud Shell.
Si vous préférez exécuter les commandes de référence de l’interface de ligne de commande localement, installez l’interface Azure CLI. Si vous exécutez sur Windows ou macOS, envisagez d’exécuter Azure CLI dans un conteneur Docker. Pour plus d’informations, consultez Guide pratique pour exécuter Azure CLI dans un conteneur Docker.
Si vous utilisez une installation locale, connectez-vous à Azure CLI à l’aide de la commande az login. Pour finir le processus d’authentification, suivez les étapes affichées dans votre terminal. Pour connaître les autres options de connexion, consultez Se connecter avec Azure CLI.
Lorsque vous y êtes invité, installez l’extension Azure CLI lors de la première utilisation. Pour plus d’informations sur les extensions, consultez Utiliser des extensions avec Azure CLI.
Exécutez az version pour rechercher la version et les bibliothèques dépendantes installées. Pour effectuer une mise à niveau vers la dernière version, exécutez az upgrade.
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.
Pour tester le basculement global instantané, nous utilisons les étapes suivantes :
Ouvrez un navigateur et accédez au nom d’hôte du point de terminaison :
contosofrontend-<hash>.z01.azurefd.net
.Arrêtez l’une des Web Apps en exécutant az webapp stop
az webapp stop --name WebAppContoso-01 --resource-group myRGFD
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.
Recherchez l’autre application web, puis arrêtez-la également.
az webapp stop --name WebAppContoso-02 --resource-group myRGFD
Actualisez votre navigateur. Cette fois, vous devriez voir un message d’erreur.
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.