Dela via


Snabbstart: Skapa en Azure Front Door med Hjälp av Azure CLI

I den här snabbstarten får du lära dig hur du skapar en Azure Front Door med hjälp av Azure CLI. Du skapar den här profilen med två Azure Web Apps som ursprung och lägger till en WAF-säkerhetsprincip. Du kan sedan verifiera anslutningen till dina Webbappar med hjälp av Värdnamnet för Azure Front Door-slutpunkten.

Diagram över Front Door-distributionsmiljön med hjälp av Azure CLI.

Kommentar

För webbarbetsbelastningar rekommenderar vi starkt att du använder Azure DDoS-skydd och en brandvägg för webbprogram för att skydda mot nya DDoS-attacker. Ett annat alternativ är att använda Azure Front Door tillsammans med en brandvägg för webbprogram. Azure Front Door erbjuder skydd på plattformsnivå mot DDoS-attacker på nätverksnivå. Mer information finns i Säkerhetsbaslinje för Azure-tjänster.

Om du inte har en Azure-prenumeration skapar du ett kostnadsfritt Azure-konto innan du börjar.

Förutsättningar

Skapa en resursgrupp

I Azure allokerar du relaterade resurser till en resursgrupp. Du kan antingen använda en befintlig resursgrupp eller skapa en ny.

Kör az group create för att skapa resursgrupper.

az group create --name myRGFD --location centralus

Skapa en Azure Front Door-profil

I det här steget skapar du den Azure Front Door-profil som dina två App Services använder som ursprung.

Kör az afd profile create för att skapa en Azure Front Door-profil.

Kommentar

Om du vill distribuera Azure Front Door Standard i stället för Premium ersätter du värdet för sku-parametern med Standard_AzureFrontDoor. Du kommer inte att kunna distribuera hanterade regler med WAF-princip om du väljer Standard SKU. Detaljerad jämförelse finns i Jämförelse av Azure Front Door-nivå.

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

Skapa två instanser av en webbapp

I det här steget skapar du två webbappinstanser som körs i olika Azure-regioner för den här självstudien. Båda webbprograminstanserna körs i aktivt/aktivt läge, så att någon av dem kan betjäna trafik. Den här konfigurationen skiljer sig från en Aktiv/Stand-By-konfiguration , där en fungerar som en redundansväxling.

Skapa apptjänstplaner

Innan du kan skapa webbapparna behöver du två App Service-planer, en i USA , centrala och den andra i USA, östra.

Kör az appservice plan create för att skapa dina App Service-planer.

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

Skapa webbappar

När apptjänstplanerna har skapats kör du az webapp create för att skapa en webbapp i var och en av apptjänstplanerna i föregående steg. Webbappnamn måste vara globalt unika.

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

Anteckna standardvärdnamnet för varje webbapp så att du kan definiera serverdelsadresserna när du distribuerar Front Door i nästa steg.

Skapa en Azure Front Door

Skapa en Front Door-profil

Kör az afd profile create för att skapa en Azure Front Door-profil.

Kommentar

Om du vill distribuera en Azure Front Door Standard i stället för Premium ersätter du värdet för sku-parametern med Standard_AzureFrontDoor. Du kommer inte att kunna distribuera hanterade regler med WAF-princip om du väljer Standard SKU. Detaljerad jämförelse finns i Jämförelse av Azure Front Door-nivå.

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

Lägg till en slutpunkt

I det här steget skapar du en slutpunkt i din Front Door-profil. I Front Door Standard/Premium är en slutpunkt en logisk gruppering av en eller flera vägar som är associerade med domännamn. Varje slutpunkt tilldelas ett domännamn av Front Door och du kan associera slutpunkter med anpassade domäner med hjälp av vägar. Front Door-profiler kan också innehålla flera slutpunkter.

Kör az afd endpoint create för att skapa en slutpunkt i din profil.

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

Mer information om slutpunkter i Front Door finns i Slutpunkter i Azure Front Door.

Skapa en ursprungsgrupp

Skapa en ursprungsgrupp som definierar trafik och förväntade svar för dina appinstanser. Ursprungsgrupper definierar också hur ursprung utvärderas av hälsoavsökningar, vilket du kan definiera i det här steget.

Kör az afd origin-group create för att skapa en ursprungsgrupp som innehåller dina två webbappar.

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

Lägga till ett ursprung i gruppen

Lägg till båda dina appinstanser som skapats tidigare som ursprung till din nya ursprungsgrupp. Ursprung i Front Door refererar till program som Front Door hämtar innehåll från när cachelagring inte är aktiverat eller när en cache missas.

Kör az afd origin create för att lägga till din första appinstans som ursprung i din ursprungsgrupp.

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

Upprepa det här steget och lägg till dina andra appinstanser som ursprung till din ursprungsgrupp.

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

Mer information om ursprung, ursprungsgrupper och hälsoavsökningar finns i Ursprung och ursprungsgrupper i Azure Front Door

Lägg till en väg

Lägg till en väg för att mappa slutpunkten som du skapade tidigare till ursprungsgruppen. Den här vägen vidarebefordrar begäranden från slutpunkten till ursprungsgruppen.

Kör az afd route create för att mappa slutpunkten till ursprungsgruppen.

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 

Mer information om vägar i Azure Front Door finns i Trafikroutningsmetoder till ursprung.

Skapa en ny säkerhetsprincip

Azure Web Application Firewall (WAF) på Front Door ger ett centraliserat skydd för dina webbprogram och skyddar dem mot vanliga sårbarheter.

I den här självstudien skapar du en WAF-princip som lägger till två hanterade regler. Du kan också skapa WAF-principer med anpassade regler

Skapa en WAF-princip

Kör az network front-door waf-policy create för att skapa en ny WAF-princip för din Front Door. Det här exemplet skapar en princip som är aktiverad och i förebyggande läge.

Kommentar

Hanterade regler fungerar endast med Front Door Premium-nivån. Du kan välja standardnivån för att använda anpassade onlu-regler.

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

Kommentar

Om du väljer Detection läge blockerar inte WAF några begäranden.

Mer information om WAF-principinställningar för Front Door finns i Principinställningar för Brandvägg för webbprogram på Azure Front Door.

Tilldela hanterade regler till WAF-principen

Azure-hanterade regeluppsättningar är ett enkelt sätt att skydda ditt program mot vanliga säkerhetshot.

Kör az network front-door waf-policy managed-rules add för att lägga till hanterade regler i din WAF-princip. Det här exemplet lägger till Microsoft_DefaultRuleSet_2.1 och Microsoft_BotManagerRuleSet_1.0 i principen.

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

Mer information om hanterade regler i Front Door finns i DRS-regelgrupper och regler för brandväggen för webbaserade program.

Skapa säkerhetsprincipen

Tillämpa nu dessa två WAF-principer på Din Front Door genom att skapa en säkerhetsprincip. Den här inställningen tillämpar de Azure-hanterade reglerna på slutpunkten som du definierade tidigare.

Kör az afd security-policy create för att tillämpa din WAF-princip på slutpunktens standarddomän.

Kommentar

Ersätt "mysubscription" med ditt Azure-prenumerations-ID i domänerna och waf-policy-parametrarna. Kör az account subscription list för att hämta prenumerations-ID-information.

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

Testa Front Door

När du skapar Azure Front Door Standard/Premium-profilen tar det några minuter innan konfigurationen distribueras globalt. När du är klar kan du komma åt klientdelsvärden som du skapade.

Kör az afd endpoint show för att hämta värdnamnet för Front Door-slutpunkten.

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

I en webbläsare går du till slutpunktens värdnamn: contosofrontend-<hash>.z01.azurefd.net. Din begäran dirigeras automatiskt till den minst latenta webbappen i ursprungsgruppen.

Skärmbild av meddelandet: Webbappen körs och väntar på ditt innehåll

För att testa omedelbar global redundans använder vi följande steg:

  1. Öppna en webbläsare och gå till slutpunktens värdnamn: contosofrontend-<hash>.z01.azurefd.net.

  2. Stoppa en av webbapparna genom att köra az webapp stop

    az webapp stop --name WebAppContoso-01 --resource-group myRGFD
    
  3. Uppdatera webbläsaren. Du bör se samma informationssida.

Dricks

Det finns lite fördröjning för dessa åtgärder. Du kan behöva uppdatera igen.

  1. Hitta den andra webbappen och stoppa den också.

    az webapp stop --name WebAppContoso-02 --resource-group myRGFD
    
  2. Uppdatera webbläsaren. Den här gången bör du se ett felmeddelande.

    Skärmbild av meddelandet: Båda instanserna av webbappen har stoppats

  3. Starta om en av Web Apps genom att köra az webapp start. Uppdatera webbläsaren så återgår sidan till det normala.

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

Rensa resurser

När du inte behöver resurserna för Front Door tar du bort båda resursgrupperna. Om du tar bort resursgrupperna tas även Front Door och alla dess relaterade resurser bort.

Kör az group delete:

az group delete --name myRGFD

Nästa steg

Gå vidare till nästa artikel för att lära dig hur du lägger till en anpassad domän i Din Front Door.