Szybki start: tworzenie usługi Azure Front Door Standard/Premium — interfejs wiersza polecenia platformy Azure

Z tego przewodnika Szybki start dowiesz się, jak utworzyć profil usługi Azure Front Door Standard/Premium przy użyciu interfejsu wiersza polecenia platformy Azure. Ten profil należy utworzyć przy użyciu dwóch aplikacji Web Apps jako źródła i dodać zasady zabezpieczeń zapory aplikacji internetowej. Następnie możesz zweryfikować łączność z usługą Web Apps przy użyciu nazwy hosta punktu końcowego usługi Azure Front Door.

Diagram of Front Door deployment environment using the Azure CLI.

Uwaga

W przypadku obciążeń internetowych zdecydowanie zalecamy korzystanie z ochrony przed atakami DDoS platformy Azure i zapory aplikacji internetowej w celu ochrony przed pojawiającymi się atakami DDoS. Inną opcją jest zastosowanie usługi Azure Front Door wraz z zaporą aplikacji internetowej. Usługa Azure Front Door oferuje ochronę na poziomie platformy przed atakami DDoS na poziomie sieci. Aby uzyskać więcej informacji, zobacz Punkt odniesienia zabezpieczeń dla usług platformy Azure.

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

Wymagania wstępne

Tworzenie grupy zasobów

Na platformie Azure możesz przydzielić powiązane zasoby do grupy zasobów. Możesz użyć istniejącej grupy zasobów lub utworzyć nową.

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

az group create --name myRGFD --location centralus

Tworzenie profilu usługi Azure Front Door

W tym kroku utworzysz profil usługi Azure Front Door, który będzie używany przez twoją usługę App Services jako źródło.

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

Uwaga

Jeśli chcesz wdrożyć usługę Azure Front Door Standard zamiast premium, zastąp wartość parametru sku Standard_AzureFrontDoor. W przypadku wybrania jednostki SKU w warstwie Standardowa nie będzie można wdrożyć reguł zarządzanych przy użyciu zasad zapory aplikacji internetowej. Aby uzyskać szczegółowe porównanie, zobacz Porównanie warstw usługi Azure Front Door.

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

Tworzenie dwóch wystąpień aplikacji internetowej

W tym kroku utworzysz dwa wystąpienia aplikacji internetowej, które działają w różnych regionach świadczenia usługi Azure na potrzeby tego samouczka. Oba wystąpienia aplikacji internetowej działają w trybie aktywny/aktywny, więc każdy z nich może obsługiwać ruch. Ta konfiguracja różni się od konfiguracji aktywnej/autonomicznej , w której ta konfiguracja działa jako tryb failover.

Tworzenie planów usługi App Service

Przed utworzeniem aplikacji internetowych potrzebne są dwa plany usługi App Service, jeden w regionie Środkowe stany USA i drugi w regionie Wschodnie stany USA.

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

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

Tworzenie aplikacji internetowych

Po utworzeniu planów usługi App Service uruchom polecenie 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.

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

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.

Tworzenie usługi Azure Front Door

Tworzenie profilu usługi Front Door

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

Uwaga

Jeśli chcesz wdrożyć usługę Azure Front Door Standard zamiast premium, zastąp wartość parametru sku parametrem Standard_AzureFrontDoor. W przypadku wybrania jednostki SKU w warstwie Standardowa nie będzie można wdrożyć reguł zarządzanych przy użyciu zasad zapory aplikacji internetowej. Aby uzyskać szczegółowe porównanie, zobacz Porównanie warstw usługi Azure Front Door.

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

Dodawanie punktu końcowego

W tym kroku utworzysz punkt końcowy w profilu usługi Front Door. W usłudze Front Door Standard/Premium punkt końcowy jest logicznym grupowaniem co najmniej jednej trasy skojarzonej z nazwami domen. Każdy punkt końcowy ma przypisaną nazwę domeny przez usługę Front Door i można skojarzyć punkty końcowe z domenami niestandardowymi przy użyciu tras. Profile usługi Front Door mogą również zawierać wiele punktów końcowych.

Uruchom polecenie az afd endpoint create , aby utworzyć punkt końcowy w profilu.

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

Aby uzyskać więcej informacji na temat punktów końcowych w usłudze Front Door, zobacz Punkty końcowe w usłudze Azure Front Door.

Tworzenie grupy pochodzenia

Utwórz grupę pochodzenia, która definiuje ruch i oczekiwane odpowiedzi dla wystąpień aplikacji. Grupy pochodzenia definiują również sposób oceniania źródeł przez sondy kondycji, które można zdefiniować w tym kroku.

Uruchom polecenie az afd origin-group create , aby utworzyć grupę pochodzenia zawierającą dwie aplikacje internetowe.

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

Dodawanie źródła do grupy

Dodaj oba wystąpienia aplikacji utworzone wcześniej jako źródła do nowej grupy źródeł. Źródła w usłudze Front Door odnoszą się do aplikacji, z których usługa Front Door pobiera zawartość, gdy buforowanie nie jest włączone lub gdy pamięć podręczna zostanie pominięta.

Uruchom polecenie az afd origin create , aby dodać swoje pierwsze wystąpienie aplikacji jako źródło do grupy pochodzenia.

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

Powtórz ten krok i dodaj drugie wystąpienia aplikacji jako źródło do grupy pochodzenia.

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

Aby uzyskać więcej informacji na temat źródeł, grup pochodzenia i sond kondycji, zobacz Origins and origin groups in Azure Front Door (Źródła i grupy źródeł w usłudze Azure Front Door)

Dodawanie trasy

Dodaj trasę, aby zamapować utworzony wcześniej punkt końcowy do grupy pochodzenia. Ta trasa przekazuje żądania z punktu końcowego do grupy pochodzenia.

Uruchom polecenie az afd route create , aby zamapować punkt końcowy na grupę pochodzenia.

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 

Aby dowiedzieć się więcej o trasach w usłudze Azure Front Door, zobacz Metody routingu ruchu do źródła.

Tworzenie nowych zasad zabezpieczeń

Zapora aplikacji internetowej platformy Azure w usłudze Front Door zapewnia scentralizowaną ochronę aplikacji internetowych, chroniąc je przed typowymi lukami w zabezpieczeniach i lukami w zabezpieczeniach.

W tym samouczku utworzysz zasady zapory aplikacji internetowej, które dodają dwie reguły zarządzane. Zasady zapory aplikacji internetowej można również tworzyć przy użyciu reguł niestandardowych

Tworzenie zasad zapory aplikacji internetowej

Uruchom polecenie az network front-door waf-policy create , aby utworzyć nowe zasady zapory aplikacji internetowej dla usługi Front Door. W tym przykładzie są tworzone zasady, które są włączone i w trybie zapobiegania.

Uwaga

Reguły zarządzane będą działać tylko z warstwą Premium usługi Front Door. Możesz wybrać warstwę Standardowa do używania reguł niestandardowych onlu.

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

Uwaga

W przypadku wybrania Detection trybu zapora aplikacji internetowej nie blokuje żadnych żądań.

Aby dowiedzieć się więcej na temat ustawień zasad zapory aplikacji internetowej dla usługi Front Door, zobacz Ustawienia zasad zapory aplikacji internetowej w usłudze Azure Front Door.

Przypisywanie reguł zarządzanych do zasad zapory aplikacji internetowej

Zestawy reguł zarządzanych przez platformę Azure umożliwiają łatwą ochronę aplikacji przed typowymi zagrożeniami bezpieczeństwa.

Uruchom polecenie az network front-door waf-policy managed-rules add to add managed rules to add managed rules to your WAF Policy (Dodawanie reguł zarządzanych do zasad zapory aplikacji internetowej). W tym przykładzie do zasad dodano Microsoft_DefaultRuleSet_2.1 i Microsoft_BotManagerRuleSet_1.0.

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

Aby dowiedzieć się więcej o regułach zarządzanych w usłudze Front Door, zobacz Web Application Firewall DRS rule groups and rules (Zapora aplikacji internetowej i grupy reguł odzyskiwania po awarii).

Tworzenie zasad zabezpieczeń

Teraz zastosuj te dwie zasady zapory aplikacji internetowej do usługi Front Door, tworząc zasady zabezpieczeń. To ustawienie stosuje reguły zarządzane przez platformę Azure do zdefiniowanego wcześniej punktu końcowego.

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

Uwaga

Zastąp ciąg "mysubscription" identyfikatorem subskrypcji platformy Azure w domenach i parametrach zasad zapory aplikacji internetowej. Uruchom polecenie az account subscription list , aby uzyskać szczegóły identyfikatora subskrypcji.

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

Testowanie usługi 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 hosta frontonu.

Uruchom polecenie az afd endpoint show , aby uzyskać nazwę hosta punktu końcowego usługi Front Door.

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

W przeglądarce przejdź do nazwy hosta punktu końcowego: contosofrontend-<hash>.z01.azurefd.net. Żądanie jest automatycznie kierowane do najmniej ukrytej aplikacji internetowej w grupie pochodzenia.

Screenshot of the message: Your web app is running and waiting for your content

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

  1. Otwórz przeglądarkę i przejdź do nazwy hosta punktu końcowego: contosofrontend-<hash>.z01.azurefd.net.

  2. Zatrzymaj jedną z aplikacji internetowych, uruchamiając polecenie az webapp stop

    az webapp stop --name WebAppContoso-01 --resource-group myRGFD
    
  3. Odśwież przeglądarkę. Powinna zostać wyświetlona ta sama strona informacji.

Napiwek

Istnieje trochę opóźnienia dla tych akcji. Może być konieczne ponowne odświeżenie.

  1. Znajdź inną aplikację internetową i zatrzymaj ją również.

    az webapp stop --name WebAppContoso-02 --resource-group myRGFD
    
  2. Odśwież przeglądarkę. Tym razem powinien zostać wyświetlony komunikat o błędzie.

    Screenshot of the message: Both instances of the web app stopped

  3. Uruchom ponownie jedną z aplikacji internetowych, uruchamiając polecenie az webapp start. Odśwież przeglądarkę i strona wróć do normalnego.

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

Czyszczenie zasobów

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 polecenie az group delete:

az group delete --name myRGFD

Następne kroki

Przejdź do następnego artykułu, aby dowiedzieć się, jak dodać domenę niestandardową do usługi Front Door.