Udostępnij przez


Samouczek: szybkie skalowanie i ochrona aplikacji internetowej przy użyciu usług Azure Front Door i Azure Web Application Firewall (WAF)

Dotyczy: ✔️ Front Door (wersja klasyczna)

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 Azure WAF może pomóc skalować aplikację i chronić ją przed takimi zagrożeniami. W tym samouczku dowiesz się, jak skonfigurować Azure Front Door z Azure WAF dla dowolnej aplikacji internetowej, niezależnie od tego, czy działa w Azure, czy poza nim.

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:

  • Utwórz Front Door.
  • Utwórz zasady WAF platformy Azure.
  • Konfigurowanie zestawów reguł dla zasad polityki WAF.
  • Połącz politykę WAF z usługą Front Door.
  • Konfigurowanie domeny niestandardowej.

Wymagania wstępne

Uwaga

Aby uzyskać więcej informacji na temat poleceń używanych w tym samouczku, zobacz dokumentację Azure CLI 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ład myapplication.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. hostName to nazwa DNS zasobu Azure Front Door.

Tworzenie profilu zapory aplikacji internetowej 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 nowej polityki WAF platformy Azure.
  • --resource-group: grupa zasobów dla tego zasobu WAF.

Poprzednie polecenie tworzy politykę WAF (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>

Dodaj zestawy 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 internetowych Azure.
  • --resource-group: grupa zasobów dla zasobu WAF (zapora sieciowa aplikacji internetowych).

Połącz politykę WAF z zasobem 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 dla usługi Azure Front Door.
  • --set: Zaktualizuj atrybut WebApplicationFirewallPolicyLink dla elementu frontendEndpoint za pomocą nowego identyfikatora Zasad Zapory Aplikacji Internetowej.

Uwaga

Jeśli nie używasz domeny niestandardowej, możesz pominąć następną sekcję. Podaj klientom hostName uzyskany podczas tworzenia zasobu Azure Front Door.

Konfigurowanie domeny niestandardowej dla aplikacji internetowej

Zaktualizuj rekordy DNS, aby przekierowywały domenę niestandardową do usługi 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 punkty końcowe usługi Azure Front Door mogą komunikować się z aplikacją internetową. Zobacz jak zablokować dostęp do backendu, aby był dostępny tylko przez usługę Azure Front Door.

Czyszczenie zasobów

Gdy grupa zasobów, usługa Front Door i polityka WAF nie będą już potrzebne, usuń je.

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: