Avvio rapido: Creare una frontdoor di Azure con l'interfaccia della riga di comando di Azure
Questo argomento di avvio rapido illustra come creare un'istanza di Frontdoor di Azure usando l'interfaccia della riga di comando di Azure. Si configura un profilo con due App Web di Azure come origini e si aggiungono criteri di sicurezza WAF. Infine, verificare la connettività al App Web usando il nome host dell'endpoint di Frontdoor di Azure.
Nota
Per i carichi di lavoro Web, è consigliabile usare la Protezione DDoS di Azure e un web application firewall per proteggersi dagli attacchi DDoS emergenti. Un'altra opzione consiste nell'usare Frontdoor di Azure insieme a un web application firewall. Frontdoor di Azure offre protezione a livello di piattaforma contro gli attacchi DDoS a livello di rete. Per altre informazioni, vedere la baseline di sicurezza per i servizi di Azure.
Se non si ha una sottoscrizione di Azure, creare un account Azure gratuito prima di iniziare.
Prerequisiti
Usare l'ambiente Bash in Azure Cloud Shell. Per altre informazioni, vedere Avvio rapido su Bash in Azure Cloud Shell.
Se si preferisce eseguire i comandi di riferimento dell'interfaccia della riga di comando in locale, installare l'interfaccia della riga di comando di Azure. Per l'esecuzione in Windows o macOS, è consigliabile eseguire l'interfaccia della riga di comando di Azure in un contenitore Docker. Per altre informazioni, vedere Come eseguire l'interfaccia della riga di comando di Azure in un contenitore Docker.
Se si usa un'installazione locale, accedere all'interfaccia della riga di comando di Azure con il comando az login. Per completare il processo di autenticazione, seguire la procedura visualizzata nel terminale. Per altre opzioni di accesso, vedere Accedere tramite l'interfaccia della riga di comando di Azure.
Quando richiesto, al primo utilizzo installare l'estensione dell'interfaccia della riga di comando di Azure. Per altre informazioni sulle estensioni, vedere Usare le estensioni con l'interfaccia della riga di comando di Azure.
Eseguire az version per trovare la versione e le librerie dipendenti installate. Per eseguire l'aggiornamento alla versione più recente, eseguire az upgrade.
Creare un gruppo di risorse
In Azure le risorse correlate vengono allocate a un gruppo di risorse. È possibile usare un gruppo di risorse esistente o crearne uno nuovo.
Eseguire az group create per creare un gruppo di risorse.
az group create --name myRGFD --location centralus
Creare una risorsa Frontdoor di Azure
Creare quindi il profilo frontdoor di Azure usato dai due servizio app come origini.
Eseguire az afd profile create per creare un profilo frontdoor di Azure.
Nota
Se si vuole distribuire Frontdoor di Azure Standard anziché Premium, sostituire il valore del parametro sku con Standard_AzureFrontDoor
. Le regole gestite con criteri WAF non sono disponibili con lo SKU Standard. Per un confronto dettagliato, vedere Confronto tra i livelli di Frontdoor di Azure.
az afd profile create \
--profile-name contosoafd \
--resource-group myRGFD \
--sku Premium_AzureFrontDoor
Creare due istanze di un'app Web
In questo passaggio vengono create due istanze di app Web in esecuzione in aree di Azure diverse. Entrambe le istanze operano in modalità Attiva/Attiva, ovvero possono gestire il traffico. Questa configurazione è diversa da una configurazione Attiva/Stand-By, in cui un'istanza funge da failover.
Creare piani di servizio app
Creare prima di tutto due piani di servizio app: uno negli Stati Uniti centrali e un altro negli Stati Uniti orientali.
Eseguire i comandi seguenti per creare i piani di servizio app:
az appservice plan create \
--name myAppServicePlanCentralUS \
--resource-group myRGFD \
--location centralus
az appservice plan create \
--name myAppServicePlanEastUS \
--resource-group myRGFD \
--location eastus
Creare app Web
Creare quindi un'app Web in ognuno dei piani di servizio app creati nel passaggio precedente. I nomi delle app Web devono essere univoci a livello globale.
Eseguire i comandi seguenti per creare le app Web:
az webapp create \
--name WebAppContoso-01 \
--resource-group myRGFD \
--plan myAppServicePlanCentralUS
az webapp create \
--name WebAppContoso-02 \
--resource-group myRGFD \
--plan myAppServicePlanEastUS
Prendere nota dei nomi host predefiniti per ogni app Web, perché saranno necessari per definire gli indirizzi back-end durante la distribuzione di Frontdoor di Azure nel passaggio successivo.
Creare un servizio Frontdoor di Azure
Creare una risorsa Frontdoor di Azure
Eseguire az afd profile create per creare un profilo frontdoor di Azure.
Nota
Per distribuire un'istanza di Frontdoor di Azure Standard anziché Premium, impostare il sku
parametro su Standard_AzureFrontDoor
. Le regole gestite con criteri WAF non sono disponibili con lo SKU Standard. Per un confronto dettagliato, vedere Confronto tra i livelli di Frontdoor di Azure.
az afd profile create \
--profile-name contosoafd \
--resource-group myRGFD \
--sku Premium_AzureFrontDoor
Aggiungere un endpoint
Creare un endpoint nel profilo frontdoor di Azure. Un endpoint è un raggruppamento logico di una o più route associate ai nomi di dominio. A ogni endpoint viene assegnato un nome di dominio da Frontdoor di Azure ed è possibile associare gli endpoint ai domini personalizzati usando le route. I profili frontdoor di Azure possono contenere più endpoint.
Eseguire az afd endpoint create per creare un endpoint nel profilo.
az afd endpoint create \
--resource-group myRGFD \
--endpoint-name contosofrontend \
--profile-name contosoafd \
--enabled-state Enabled
Per altre informazioni sugli endpoint in Frontdoor di Azure, vedere Endpoint in Frontdoor di Azure.
Creare un gruppo di origine
Creare un gruppo di origine che definisce il traffico e le risposte previste per le istanze dell'app. I gruppi di origine definiscono anche il modo in cui le origini vengono valutate dai probe di integrità.
Eseguire az afd origin-group create per creare un gruppo di origine contenente le due app Web.
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
Aggiungere origini al gruppo di origine
Aggiungere entrambe le istanze dell'app create in precedenza come origini al nuovo gruppo di origine. Le origini in Frontdoor di Azure fanno riferimento alle applicazioni che Frontdoor di Azure recupera il contenuto da quando la memorizzazione nella cache non è abilitata o quando si verifica un mancato riscontro nella cache.
Eseguire az afd origin create per aggiungere la prima istanza dell'app come origine al gruppo di origine.
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
Ripetere questo passaggio per aggiungere la seconda istanza dell'app come origine al gruppo di origine.
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
Per altre informazioni su origini, gruppi di origine e probe di integrità, vedere Origini e gruppi di origine in Frontdoor di Azure.
Aggiungere una route
Aggiungere una route per eseguire il mapping dell'endpoint creato in precedenza al gruppo di origine. Questa route inoltra le richieste dall'endpoint al gruppo di origine.
Eseguire az afd route create per eseguire il mapping dell'endpoint al gruppo di origine.
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
Per altre informazioni sulle route in Frontdoor di Azure, vedere Metodi di routing del traffico all'origine.
Creare un nuovo criterio di sicurezza
Web application firewall (WAF) di Azure in Frontdoor di Azure offre una protezione centralizzata per le applicazioni Web, difendendole da exploit e vulnerabilità comuni.
In questa esercitazione viene creato un criterio WAF che include due regole gestite. È anche possibile creare criteri WAF con regole personalizzate.
Creare un criterio WAF
Eseguire az network front-door waf-policy create per creare un nuovo criterio WAF per frontdoor di Azure. In questo esempio viene creato un criterio abilitato e in modalità di prevenzione.
Nota
Le regole gestite sono disponibili solo con il livello Frontdoor di Azure Premium. È possibile usare regole personalizzate con il livello Standard.
az network front-door waf-policy create \
--name contosoWAF \
--resource-group myRGFD \
--sku Premium_AzureFrontDoor \
--disabled false \
--mode Prevention
Nota
Se si seleziona Detection
la modalità, waf non bloccherà alcuna richiesta.
Per altre informazioni sulle impostazioni dei criteri WAF per Frontdoor di Azure, vedere Impostazioni dei criteri per Web Application Firewall in Frontdoor di Azure.
Assegnare regole gestite ai criteri WAF
I set di regole gestite da Azure offrono un modo semplice per proteggere l'applicazione da minacce di sicurezza comuni.
Eseguire az network front-door waf-policy managed-rules per aggiungere regole gestite ai criteri WAF. Questo esempio aggiunge Microsoft_DefaultRuleSet_2.1 e Microsoft_BotManagerRuleSet_1.0 ai criteri.
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
Per altre informazioni sulle regole gestite in Frontdoor di Azure, vedere Regole e gruppi di regole drS di Web Application Firewall.
Applicare i criteri di sicurezza
Applicare ora i criteri WAF alla frontdoor di Azure creando criteri di sicurezza. Questa impostazione applica le regole gestite da Azure all'endpoint definito in precedenza.
Eseguire az afd security-policy create per applicare i criteri WAF al dominio predefinito dell'endpoint.
Nota
Sostituire "mysubscription" con l'ID sottoscrizione di Azure nei domini e nei parametri waf-policy. Eseguire az account subscription list per ottenere i dettagli dell'ID sottoscrizione.
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
Testare frontdoor di Azure
Dopo aver creato il profilo frontdoor di Azure, la distribuzione globale della configurazione richiede alcuni minuti. Al termine, è possibile accedere all'host front-end creato.
Eseguire az afd endpoint show per ottenere il nome host dell'endpoint frontdoor di Azure.
az afd endpoint show --resource-group myRGFD --profile-name contosoafd --endpoint-name contosofrontend
In un browser passare al nome host dell'endpoint: contosofrontend-<hash>.z01.azurefd.net
. La richiesta viene instradata all'app Web meno latente nel gruppo di origine.
Per testare il failover globale istantaneo, seguire questa procedura:
Aprire un browser e passare al nome host dell'endpoint:
contosofrontend-<hash>.z01.azurefd.net
.Arrestare una delle App Web eseguendo az webapp stop:
az webapp stop --name WebAppContoso-01 --resource-group myRGFD
Aggiorna il browser. Si dovrebbe visualizzare la stessa pagina di informazioni.
Suggerimento
Potrebbe verificarsi un lieve ritardo per queste azioni. Potrebbe essere necessario eseguire di nuovo l'aggiornamento.
Arrestare anche l'altra app Web:
az webapp stop --name WebAppContoso-02 --resource-group myRGFD
Aggiorna il browser. Questa volta dovrebbe essere visualizzato un messaggio di errore.
Riavviare una delle App Web eseguendo az webapp start. Aggiornare il browser e la pagina dovrebbe tornare normale.
az webapp start --name WebAppContoso-01 --resource-group myRGFD
Pulire le risorse
Quando non sono più necessarie le risorse create per Frontdoor di Azure, è possibile eliminare il gruppo di risorse. Questa azione rimuove frontdoor di Azure e tutte le risorse associate.
Eseguire il comando seguente per eliminare il gruppo di risorse:
az group delete --name myRGFD
Passaggi successivi
Passare all'articolo successivo per informazioni su come aggiungere un dominio personalizzato alla frontdoor di Azure.