Szybki start: tworzenie usługi Azure Front Door przy użyciu interfejsu wiersza polecenia platformy Azure
Z tego przewodnika Szybki start dowiesz się, jak utworzyć usługę Azure Front Door przy użyciu interfejsu wiersza polecenia platformy Azure. Profil można skonfigurować przy użyciu dwóch usługi Azure Web Apps jako źródeł i dodać zasady zabezpieczeń zapory aplikacji internetowej. Na koniec zweryfikujesz łączność z usługą Web Apps przy użyciu nazwy hosta punktu końcowego usługi Azure Front Door.
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
Użyj środowiska powłoki Bash w usłudze Azure Cloud Shell. Aby uzyskać więcej informacji, zobacz Szybki start dotyczący powłoki Bash w usłudze Azure Cloud Shell.
Jeśli wolisz uruchamiać polecenia referencyjne interfejsu wiersza polecenia lokalnie, zainstaluj interfejs wiersza polecenia platformy Azure. Jeśli korzystasz z systemu Windows lub macOS, rozważ uruchomienie interfejsu wiersza polecenia platformy Azure w kontenerze Docker. Aby uzyskać więcej informacji, zobacz Jak uruchomić interfejs wiersza polecenia platformy Azure w kontenerze platformy Docker.
Jeśli korzystasz z instalacji lokalnej, zaloguj się do interfejsu wiersza polecenia platformy Azure za pomocą polecenia az login. Aby ukończyć proces uwierzytelniania, wykonaj kroki wyświetlane w terminalu. Aby uzyskać inne opcje logowania, zobacz Logowanie się przy użyciu interfejsu wiersza polecenia platformy Azure.
Po wyświetleniu monitu zainstaluj rozszerzenie interfejsu wiersza polecenia platformy Azure podczas pierwszego użycia. Aby uzyskać więcej informacji na temat rozszerzeń, zobacz Korzystanie z rozszerzeń w interfejsie wiersza polecenia platformy Azure.
Uruchom polecenie az version, aby znaleźć zainstalowane wersje i biblioteki zależne. Aby uaktualnić do najnowszej wersji, uruchom polecenie az upgrade.
Tworzenie grupy zasobów
Na platformie Azure powiązane zasoby są przydzielane do grupy zasobów. Możesz wybrać istniejącą grupę zasobów lub utworzyć nową.
Uruchom polecenie az group create , aby utworzyć grupę zasobów.
az group create --name myRGFD --location centralus
Tworzenie profilu usługi Azure Front Door
Następnie utwórz profil usługi Azure Front Door używany przez twoją usługę App Services jako źródła.
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 w warstwie Premium, zastąp wartość parametru sku parametrem Standard_AzureFrontDoor
. Reguły zarządzane za pomocą zasad zapory aplikacji internetowej nie są dostępne w przypadku jednostki SKU w warstwie Standardowa. 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 działające w różnych regionach świadczenia usługi Azure. Oba wystąpienia działają w trybie aktywny/aktywny, co oznacza, że oba wystąpienia mogą obsługiwać ruch. Ta konfiguracja różni się od konfiguracji aktywnej/autonomicznej, w której jedno wystąpienie służy jako tryb failover.
Tworzenie planów usługi App Service
Najpierw utwórz dwa plany usługi App Service: jeden w regionie Środkowe stany USA i drugi w regionie Wschodnie stany USA.
Uruchom następujące polecenia, 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
Następnie utwórz aplikację internetową w każdym z planów usługi App Service utworzonych w poprzednim kroku. Nazwy aplikacji internetowych muszą być globalnie unikatowe.
Uruchom następujące polecenia, aby utworzyć aplikacje internetowe:
az webapp create \
--name WebAppContoso-01 \
--resource-group myRGFD \
--plan myAppServicePlanCentralUS
az webapp create \
--name WebAppContoso-02 \
--resource-group myRGFD \
--plan myAppServicePlanEastUS
Zanotuj domyślne nazwy hostów dla każdej aplikacji internetowej, ponieważ będą one potrzebne do zdefiniowania adresów zaplecza podczas wdrażania usługi Azure Front Door w następnym kroku.
Tworzenie usługi Azure Front Door
Tworzenie profilu usługi Azure Front Door
Uruchom polecenie az afd profile create , aby utworzyć profil usługi Azure Front Door.
Uwaga
Aby wdrożyć usługę Azure Front Door Standard zamiast Premium, ustaw sku
parametr na Standard_AzureFrontDoor
wartość . Reguły zarządzane za pomocą zasad zapory aplikacji internetowej nie są dostępne w przypadku jednostki SKU w warstwie Standardowa. 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
Utwórz punkt końcowy w profilu usługi Azure Front Door. Punkt końcowy to logiczne grupowanie co najmniej jednej trasy skojarzonej z nazwami domen. Każdy punkt końcowy ma przypisaną nazwę domeny przez usługę Azure Front Door i można skojarzyć punkty końcowe z domenami niestandardowymi przy użyciu tras. Profile usługi Azure Front Door mogą 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 Azure 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.
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ódeł do grupy źródeł
Dodaj oba wystąpienia aplikacji utworzone wcześniej jako źródła do nowej grupy źródeł. Źródła w usłudze Azure Front Door odnoszą się do aplikacji, z których usługa Azure Front Door pobiera zawartość, gdy buforowanie nie jest włączone lub gdy wystąpi błąd pamięci podręcznej.
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, aby dodać drugie wystąpienie 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ń
Usługa Azure Web Application Firewall (WAF) w usłudze Azure 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 zawierające dwie reguły zarządzane. Możesz również utworzyć zasady zapory aplikacji internetowej 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 Azure Front Door. W tym przykładzie są tworzone zasady, które są włączone i w trybie zapobiegania.
Uwaga
Reguły zarządzane są dostępne tylko w warstwie Premium usługi Azure Front Door. Reguły niestandardowe można używać z warstwą Standardowa.
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 zablokuje żadnych żądań.
Aby dowiedzieć się więcej na temat ustawień zasad zapory aplikacji internetowej dla usługi Azure 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 Azure Front Door, zobacz Web Application Firewall DRS rule groups and rules (Grupy i reguły odzyskiwania po awarii zapory aplikacji internetowej).
Stosowanie zasad zabezpieczeń
Teraz zastosuj zasady zapory aplikacji internetowej do usługi Azure 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 Azure Front Door
Po utworzeniu profilu usługi Azure Front Door wdrożenie konfiguracji na całym świecie potrwa kilka minut. 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 Azure 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
. Twoje żądanie jest kierowane do najmniej ukrytej aplikacji internetowej w grupie pochodzenia.
Aby przetestować natychmiastowy globalny tryb failover, wykonaj następujące kroki:
Otwórz przeglądarkę i przejdź do nazwy hosta punktu końcowego:
contosofrontend-<hash>.z01.azurefd.net
.Zatrzymaj jedną z aplikacji internetowych, uruchamiając polecenie az webapp stop:
az webapp stop --name WebAppContoso-01 --resource-group myRGFD
Odśwież przeglądarkę. Powinna zostać wyświetlona ta sama strona informacji.
Napiwek
Może wystąpić niewielkie opóźnienie dla tych akcji. Może być konieczne ponowne odświeżenie.
Zatrzymaj również inną aplikację internetową:
az webapp stop --name WebAppContoso-02 --resource-group myRGFD
Odśwież przeglądarkę. Tym razem powinien zostać wyświetlony komunikat o błędzie.
Uruchom ponownie jedną z aplikacji internetowych, uruchamiając polecenie az webapp start. Odśwież przeglądarkę, a strona powinna powrócić do normalnego.
az webapp start --name WebAppContoso-01 --resource-group myRGFD
Czyszczenie zasobów
Gdy nie potrzebujesz już zasobów utworzonych dla usługi Azure Front Door, możesz usunąć grupę zasobów. Ta akcja powoduje usunięcie usługi Azure Front Door i wszystkich skojarzonych zasobów.
Uruchom następujące polecenie, aby usunąć grupę zasobów:
az group delete --name myRGFD
Następne kroki
Przejdź do następnego artykułu, aby dowiedzieć się, jak dodać domenę niestandardową do usługi Azure Front Door.