Udostępnij za pośrednictwem


Samouczek: dodawanie i dostosowywanie reguł dostarczania dla usługi Azure Front Door Standard/Premium przy użyciu interfejsu wiersza polecenia platformy Azure

Dotyczy: ✔️ Front Door Standard ✔️ Front Door Premium

Usługa Azure Front Door Standard/Premium to szybka i bezpieczna nowoczesna sieć CDN w chmurze. Usługa Azure Front Door korzysta z globalnej sieci brzegowej firmy Microsoft i integruje się z inteligentną ochroną przed zagrożeniami. Usługa Azure Front Door Standard koncentruje się na dostarczau zawartości. Usługa Azure Front Door Premium dodaje rozbudowane funkcje zabezpieczeń i dostosowywanie. Ten samouczek koncentruje się na tworzeniu profilu usługi Azure Front Door, a następnie dodawaniu reguł dostarczania w celu uzyskania bardziej szczegółowej kontroli nad zachowaniami aplikacji internetowej.

W tym poradniku nauczysz się, jak:

  • Utwórz profil usługi Azure Front Door.
  • Utwórz dwie instancje aplikacji internetowej.
  • Utwórz nowe zasady zabezpieczeń.
  • Weryfikowanie łączności z aplikacjami internetowymi.
  • Utwórz zestaw reguł.
  • Utwórz regułę i dodaj ją do zestawu reguł.
  • Dodaj akcje lub warunki do reguł.

Jeśli nie masz jeszcze konta platformy Azure, przed rozpoczęciem utwórz bezpłatne konto.

Wymagania wstępne

Tworzenie usługi Azure Front Door

Tworzenie grupy zasobów

Aby rozpocząć szybko, potrzebne będą dwie grupy zasobów. Jeden w regionie Środkowe stany USA i drugi w regionie Wschodnie stany USA.

Uruchom az group create, aby utworzyć grupy zasobów.

az group create \
    --name myRGFDCentral \
    --location centralus

az group create \
    --name myRGFDEast \
    --location eastus

Tworzenie profilu usługi Azure Front Door

Uruchom az afd profile create, aby utworzyć profil usługi Azure Front Door.

az afd profile create \
    --profile-name contosoafd \
    --resource-group myRGFDCentral \
    --sku Premium_AzureFrontDoor \
    --subscription mysubscription

Utwórz dwa wystąpienia aplikacji internetowej

Na potrzeby tego samouczka potrzebne są dwa wystąpienia aplikacji internetowej, które działają w różnych regionach świadczenia usługi Azure. Oba wystąpienia aplikacji internetowej działają w trybie aktywny/aktywny, więc każdy z nich może obsługiwać ruch.

Jeśli nie masz jeszcze aplikacji internetowej, użyj następującego skryptu, aby skonfigurować dwie przykładowe aplikacje internetowe.

Utwórz plany usługi aplikacji

Zanim będzie można utworzyć aplikacje internetowe, musisz mieć dwa plany usługi App Service, jeden w regionie Środkowe stany USA i drugi w regionie Wschodnie stany USA.

Uruchom az appservice plan create, aby utworzyć plany usługi App Service.

az appservice plan create \
    --name myAppServicePlanCentralUS \
    --resource-group myRGFDCentral

az appservice plan create \
    --name myAppServicePlanEastUS \
    --resource-group myRGFDEast

Tworzenie aplikacji internetowych

Uruchom az webapp create, aby utworzyć aplikację internetową w każdym z planów usługi App Service w poprzednim kroku. Nazwy aplikacji internetowych muszą być globalnie unikatowe.

Uruchom az webapp list-runtimes, aby wyświetlić listę wbudowanych stosów dla aplikacji webowych.

az webapp create \
    --name WebAppContoso-001 \
    --resource-group myRGFDCentral \
    --plan myAppServicePlanCentralUS \
    --runtime "DOTNETCORE|2.1"

az webapp create \
    --name WebAppContoso-002 \
    --resource-group myRGFDEast \
    --plan myAppServicePlanEastUS \
    --runtime "DOTNETCORE|2.1"

Zanotuj domyślną nazwę hosta każdej aplikacji internetowej, aby można było zdefiniować adresy zaplecza podczas wdrażania usługi Front Door w następnym kroku.

Dodaj punkt końcowy

Uruchom az afd endpoint create aby utworzyć punkt końcowy w profilu. Po zakończeniu procesu tworzenia możesz dodać wiele punktów końcowych do swojego profilu.

az afd endpoint create \
    --resource-group myRGFDCentral \
    --endpoint-name contoso-frontend \
    --profile-name contosoafd \
    --origin-response-timeout-seconds 60 \
    --enabled-state Enabled

Tworzenie grupy pochodzenia

Uruchom az afd origin-group create do utworzenia grupy źródłowej zawierającej dwie aplikacje internetowe.

az afd origin-group create \
    --resource-group myRGFDCentral \
    --origin-group-name og1 \
    --profile-name contosoafd \
    --probe-request-type GET \
    --probe-protocol Http \
    --probe-interval-in-seconds 120 \
    --probe-path /test1/azure.txt \
    --sample-size 4 \
    --successful-samples-required 3 \
    --additional-latency-in-milliseconds 50

Dodaj źródła do grupy

Uruchom az afd origin create, aby dodać źródło do grupy pochodzenia.

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

Powtórz ten krok i dodaj drugie źródło.

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

Dodawanie trasy

Uruchom az afd route create, aby powiązać punkt końcowy frontendu z grupą źródłową. Ta trasa przekazuje żądania z punktu końcowego do og1.

az afd route create \
    --resource-group myRGFDCentral \
    --endpoint-name contoso-frontend \
    --profile-name contosoafd \
    --route-name route1 \
    --https-redirect Enabled \
    --origin-group og1 \
    --supported-protocols Https \
    --link-to-default-domain Enabled \
    --forwarding-protocol MatchRequest

Tworzenie nowych zasad zabezpieczeń

Tworzenie polityki WAF

Uruchom az network front-door waf-policy create, aby utworzyć zasady zapory aplikacji internetowej dla jednej z Twoich grup zasobów.

Utwórz nową politykę WAF dla usługi *Front Door*. W tym przykładzie tworzona jest polityka, która jest włączona i działa w trybie zapobiegania.

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

Uwaga / Notatka

W przypadku wybrania trybu Detection, WAF nie blokuje żadnych żądań.

Tworzenie zasad zabezpieczeń

Uruchom az afd security-policy create aby zastosować zasady zapory aplikacji internetowej (WAF) do domyślnej domeny punktu końcowego.

az afd security-policy create \
    --resource-group myRGFDCentral \
    --profile-name contosoafd \
    --security-policy-name contososecurity \
    --domains /subscriptions/mysubscription/resourcegroups/myRGFDCentral/providers/Microsoft.Cdn/profiles/contosoafd/afdEndpoints/contoso-frontend.z01.azurefd.net \
    --waf-policy /subscriptions/mysubscription/resourcegroups/myRGFDCentral/providers/Microsoft.Network/frontdoorwebapplicationfirewallpolicies/contosoWAF

Weryfikowanie usługi Azure Front Door

Utworzenie profilu usługi Azure Front Door Standard/Premium potrwa kilka minut, aby konfiguracja została wdrożona globalnie. Po zakończeniu możesz uzyskać dostęp do utworzonego przez siebie hosta frontend. W przeglądarce przejdź do strony contoso-frontend.z01.azurefd.net. Żądanie zostanie automatycznie przekierowane do najbliższego serwera z określonych serwerów w grupie pochodzenia.

Aby przetestować natychmiastowe globalne przejście w tryb failover, wykonaj następujące kroki:

  1. Otwórz przeglądarkę i przejdź do adresu frontonu: contoso-frontend.azurefd.net.

  2. W witrynie Azure Portal wyszukaj i wybierz pozycję App Services. Przewiń w dół, aby znaleźć jedną z aplikacji internetowych WebAppContoso-1 w tym przykładzie.

  3. Wybierz aplikację internetową, a następnie wybierz pozycję Zatrzymaj i Tak , aby zweryfikować.

  4. Odśwież przeglądarkę. Powinna zostać wyświetlona ta sama strona informacji.

    Wskazówka

    Oczekiwane jest pewne opóźnienie dla tej akcji. Może być konieczne ponowne odświeżenie.

  5. Znajdź inną aplikację internetową i także ją zatrzymaj.

  6. Odśwież przeglądarkę. Tym razem powinien zostać wyświetlony komunikat o błędzie.

    Zatrzymano oba wystąpienia aplikacji internetowej

Tworzenie zestawu reguł

Utwórz zestaw reguł, aby dostosować sposób obsługi żądań HTTP na urządzeniach brzegowych. Reguły dostarczania dodane do zestawu reguł zapewniają większą kontrolę nad zachowaniami aplikacji internetowej. Uruchom az afd rule-set create, aby utworzyć zestaw reguł w profilu usługi Azure Front Door.

az afd rule-set create \
    --profile-name contosoafd \
    --resource-group myRGFDCentral \
    --rule-set-name contosorules

Tworzenie reguły dostarczania i dodawanie jej do zestawu reguł

Utwórz nową regułę dostarczania w zestawie reguł. Uruchom az afd rule create, aby utworzyć regułę dostarczania w zestawie reguł. W tym przykładzie utworzymy regułę dla przekierowania http do https.

az afd rule create \
    --resource-group myRGFDCentral \
    --rule-set-name contosorules \
    --profile-name contosoafd \
    --order 1 \
    --match-variable RequestScheme \
    --operator Equal \
    --match-values HTTP \
    --rule-name "redirect" \
    --action-name "UrlRedirect" \
    --redirect-protocol Https \
    --redirect-type Moved

Dodaj akcję lub warunek do reguły dostarczania

Może się okazać, że musisz jeszcze bardziej dostosować nową regułę dostarczania. Akcje lub warunki można dodawać zgodnie z potrzebami po utworzeniu. Uruchom az afd rule action add lub az afd rule condition add, aby zaktualizować regułę.

Dodawanie akcji

az afd rule action add \
    --resource-group myRGFDCentral \
    --rule-set-name contosorules \
    --profile-name contosoafd \
    --rule-name redirect \
    --action-name "CacheExpiration" \
    --cache-behavior BypassCache

Dodaj warunek

az afd rule condition add \
    --resource-group myRGFDCentral \
    --rule-set-name contosorules \
    --profile-name contosoafd \
    --rule-name redirect \
    --match-variable RemoteAddress \
    --operator GeoMatch \
    --match-values "TH"

Uprzątnij zasoby

Jeśli nie potrzebujesz zasobów usługi Front Door, usuń obie grupy zasobów. Usunięcie grup zasobów powoduje również usunięcie usługi Front Door i wszystkich powiązanych z nią zasobów.

Uruchom az group delete:

az group delete \
    --name myRGFDCentral

az group delete \
    --name myRGFDEast