Samouczek: szybkie skalowanie i ochrona aplikacji internetowej przy użyciu usług Azure Front Door i Azure Web Application Firewall (WAF)
Ważne
Usługa Azure Front Door (klasyczna) zostanie wycofana 31 marca 2027 r. Aby uniknąć zakłóceń w działaniu usługi, należy przeprowadzić migrację profilów usługi Azure Front Door (wersja klasyczna) do warstwy Azure Front Door Standard lub Premium do marca 2027 r. Aby uzyskać więcej informacji, zobacz Wycofywanie usługi Azure Front Door (wersja klasyczna).
Aplikacje internetowe często doświadczają gwałtownych wzrostów ruchu i złośliwych ataków, takich jak ataki typu "odmowa usługi". Usługa Azure Front Door z zaporą aplikacji internetowej platformy Azure może pomóc skalować aplikację i chronić ją przed takimi zagrożeniami. Ten samouczek przeprowadzi Cię przez proces konfigurowania usługi Azure Front Door z zaporą aplikacji internetowej platformy Azure dla dowolnej aplikacji internetowej, niezależnie od tego, czy działa wewnątrz platformy Azure, czy poza nią.
Na potrzeby tego samouczka używamy interfejsu wiersza polecenia platformy Azure. Możesz również użyć witryny Azure Portal, programu Azure PowerShell, usługi Azure Resource Manager lub interfejsów API REST platformy Azure.
Z tego samouczka dowiesz się, jak wykonywać następujące czynności:
- tworzenie usługi Front Door.
- Tworzenie zasad zapory aplikacji internetowej platformy Azure.
- Konfigurowanie zestawów reguł dla zasad zapory aplikacji internetowej.
- Kojarzenie zasad zapory aplikacji internetowej z usługą Front Door.
- Konfigurowanie domeny niestandardowej.
Jeśli nie masz subskrypcji platformy Azure, przed rozpoczęciem utwórz bezpłatne konto platformy Azure.
Wymagania wstępne
W tym samouczku jest używany interfejs wiersza polecenia platformy Azure. Wprowadzenie do interfejsu wiersza polecenia platformy Azure.
Napiwek
Łatwym sposobem rozpoczęcia pracy z interfejsem wiersza polecenia platformy Azure jest użycie powłoki Bash w usłudze Azure Cloud Shell.
Upewnij się,
front-door
że rozszerzenie zostało dodane do interfejsu wiersza polecenia platformy Azure:az extension add --name front-door
Uwaga
Aby uzyskać więcej informacji na temat poleceń używanych w tym samouczku, zobacz dokumentację interfejsu wiersza polecenia platformy Azure dotyczącą usługi Front Door.
Tworzenie zasobu usługi Azure Front Door
az network front-door create --backend-address <backend-address> --accepted-protocols <protocols> --name <name> --resource-group <resource-group>
--backend-address
: w pełni kwalifikowana nazwa domeny (FQDN) aplikacji, którą chcesz chronić, na przykładmyapplication.contoso.com
.--accepted-protocols
: Protokoły obsługiwane przez usługę Azure Front Door, na przykład--accepted-protocols Http Https
.--name
: nazwa zasobu usługi Azure Front Door.--resource-group
: grupa zasobów dla tego zasobu usługi Azure Front Door. Dowiedz się więcej o zarządzaniu grupami zasobów.
Zanotuj hostName
wartość z odpowiedzi, ponieważ będzie ona potrzebna później. Jest hostName
to nazwa DNS zasobu usługi Azure Front Door.
Tworzenie profilu zapory aplikacji internetowej platformy Azure dla usługi Azure Front Door
az network front-door waf-policy create --name <name> --resource-group <resource-group> --disabled false --mode Prevention
--name
: nazwa nowych zasad zapory aplikacji internetowej platformy Azure.--resource-group
: grupa zasobów dla tego zasobu zapory aplikacji internetowej.
Poprzednie polecenie tworzy zasady zapory aplikacji internetowej w trybie zapobiegania.
Uwaga
Rozważ najpierw utworzenie zasad zapory aplikacji internetowej w trybie wykrywania, aby obserwować i rejestrować złośliwe żądania bez blokowania ich przed przełączeniem do trybu zapobiegania.
Zanotuj ID
wartość z odpowiedzi, ponieważ będzie ona potrzebna później. Element ID
powinien mieć następujący format:
/subscriptions/<subscription-id>/resourcegroups/<resource-group>/providers/Microsoft.Network/frontdoorwebapplicationfirewallpolicies/<WAF-policy-name>
Dodawanie zestawów reguł zarządzanych do zasad zapory aplikacji internetowej
Dodaj domyślny zestaw reguł:
az network front-door waf-policy managed-rules add --policy-name <policy-name> --resource-group <resource-group> --type DefaultRuleSet --version 1.0
Dodaj zestaw reguł ochrony botów:
az network front-door waf-policy managed-rules add --policy-name <policy-name> --resource-group <resource-group> --type Microsoft_BotManagerRuleSet --version 1.0
--policy-name
: nazwa zasobu zapory aplikacji internetowej platformy Azure.--resource-group
: grupa zasobów dla zasobu zapory aplikacji internetowej.
Kojarzenie zasad zapory aplikacji internetowej z zasobem usługi Azure Front Door
az network front-door update --name <name> --resource-group <resource-group> --set frontendEndpoints[0].webApplicationFirewallPolicyLink='{"id":"<ID>"}'
--name
: nazwa zasobu usługi Azure Front Door.--resource-group
: grupa zasobów zasobu usługi Azure Front Door.--set
: zaktualizujWebApplicationFirewallPolicyLink
atrybut dlafrontendEndpoint
elementu za pomocą nowego identyfikatora zasad zapory aplikacji internetowej.
Uwaga
Jeśli nie używasz domeny niestandardowej, możesz pominąć następną sekcję. Podać klientom hostName
uzyskany podczas tworzenia zasobu usługi Azure Front Door.
Konfigurowanie domeny niestandardowej dla aplikacji internetowej
Zaktualizuj rekordy DNS, aby wskazywały domenę niestandardową na usługę Azure Front Door hostName
. Aby uzyskać szczegółowe instrukcje, zapoznaj się z dokumentacją dostawcy usług DNS. Jeśli używasz usługi Azure DNS, zobacz Aktualizowanie rekordu DNS.
W przypadku domen wierzchołków strefy (na przykład contoso.com) użyj usługi Azure DNS i jej typu rekordu aliasu.
Zaktualizuj konfigurację usługi Azure Front Door, aby dodać domenę niestandardową.
Aby włączyć protokół HTTPS dla domeny niestandardowej, skonfiguruj certyfikaty w usłudze Azure Front Door.
Blokowanie aplikacji internetowej
Upewnij się, że tylko krawędzie usługi Azure Front Door mogą komunikować się z aplikacją internetową. Zobacz Jak zablokować dostęp do zaplecza tylko do usługi Azure Front Door.
Czyszczenie zasobów
Gdy grupa zasobów, usługa Front Door i zapora aplikacji internetowej nie będą już potrzebne, usuń następujące zasady:
az group delete --name <resource-group>
--name
: nazwa grupy zasobów dla wszystkich zasobów używanych w tym samouczku.
Następne kroki
Aby rozwiązać problemy z usługą Front Door, zobacz: