Partilhar via


Guia de início rápido: criar uma porta frontal do Azure usando a CLI do Azure

Neste guia de início rápido, você aprenderá a criar uma Porta da Frente do Azure usando a CLI do Azure. Você configura um perfil com dois Aplicativos Web do Azure como origens e adiciona uma política de segurança WAF. Por fim, você verifica a conectividade com seus aplicativos Web usando o nome de host do ponto de extremidade da Porta da Frente do Azure.

Diagrama do ambiente de implantação do Azure Front Door usando a CLI do Azure.

Nota

Para cargas de trabalho da Web, é altamente recomendável utilizar a proteção contra DDoS do Azure e um firewall de aplicativo Web para se proteger contra ataques DDoS emergentes. Outra opção é empregar o Azure Front Door junto com um firewall de aplicativo Web. O Azure Front Door oferece proteção no nível da plataforma contra ataques DDoS no nível da rede. Para obter mais informações, consulte Linha de base de segurança para serviços do Azure.

Se não tiver uma subscrição do Azure, crie uma conta gratuita do Azure antes de começar.

Pré-requisitos

  • Use o ambiente Bash no Azure Cloud Shell. Para obter mais informações, consulte Guia de início rápido para Bash no Azure Cloud Shell.

  • Se preferir executar comandos de referência da CLI localmente, instale a CLI do Azure. Se estiver a utilizar o Windows ou macOS, considere executar a CLI do Azure num contentor Docker. Para obter mais informações, consulte Como executar a CLI do Azure em um contêiner do Docker.

    • Se estiver a utilizar uma instalação local, inicie sessão no CLI do Azure ao utilizar o comando az login. Para concluir o processo de autenticação, siga os passos apresentados no seu terminal. Para outras opções de entrada, consulte Entrar com a CLI do Azure.

    • Quando solicitado, instale a extensão da CLI do Azure na primeira utilização. Para obter mais informações sobre as extensões, veja Utilizar extensões com o CLI do Azure.

    • Execute o comando az version para localizar a versão e as bibliotecas dependentes instaladas. Para atualizar para a versão mais recente, execute o comando az upgrade.

Criar um grupo de recursos

No Azure, os recursos relacionados são alocados a um grupo de recursos. Pode utilizar um grupo de recursos existente ou criar um novo.

Execute az group create para criar um grupo de recursos.

az group create --name myRGFD --location centralus

Criar um perfil do Azure Front Door

Em seguida, crie o perfil da Porta da Frente do Azure que seus dois Serviços de Aplicativo usam como origens.

Execute az afd profile create para criar um perfil do Azure Front Door.

Nota

Se você quiser implantar o Azure Front Door Standard em vez de Premium, substitua o valor do parâmetro sku por Standard_AzureFrontDoor. As regras gerenciadas com a Política WAF não estão disponíveis com a SKU Padrão. Para obter uma comparação detalhada, consulte Comparação de camadas da Porta da Frente do Azure.

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

Criar duas instâncias de um aplicativo Web

Nesta etapa, você cria duas instâncias de aplicativo Web em execução em diferentes regiões do Azure. Ambas as instâncias operam no modo Ativo/Ativo, o que significa que qualquer uma delas pode lidar com o tráfego. Essa configuração é diferente de uma configuração Ative/Stand-By, onde uma instância serve como failover.

Criar planos de serviço de aplicativo

Primeiro, crie dois planos de serviço de aplicativo: um no centro dos EUA e outro no leste dos EUA.

Execute os seguintes comandos para criar os planos do serviço de aplicativo:

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

Criar aplicações Web

Em seguida, crie um aplicativo Web em cada um dos planos de serviço de aplicativo criados na etapa anterior. Os nomes dos aplicativos Web devem ser globalmente exclusivos.

Execute os seguintes comandos para criar os aplicativos Web:

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

Anote os nomes de host padrão para cada aplicativo Web, pois você precisará deles para definir os endereços de back-end ao implantar a Porta da Frente do Azure na próxima etapa.

Criar uma porta de entrada do Azure

Criar um perfil do Azure Front Door

Execute az afd profile create para criar um perfil do Azure Front Door.

Nota

Para implantar um Azure Front Door Standard em vez de Premium, defina o sku parâmetro como Standard_AzureFrontDoor. As regras gerenciadas com a Política WAF não estão disponíveis com a SKU Padrão. Para obter uma comparação detalhada, consulte Comparação de camadas da Porta da Frente do Azure.

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

Adicionar um ponto final

Crie um ponto de extremidade em seu perfil do Azure Front Door. Um ponto de extremidade é um agrupamento lógico de uma ou mais rotas associadas a nomes de domínio. Cada ponto de extremidade recebe um nome de domínio pelo Azure Front Door, e você pode associar pontos de extremidade a domínios personalizados usando rotas. Os perfis do Azure Front Door podem conter vários pontos de extremidade.

Execute az afd endpoint create para criar um endpoint no seu perfil.

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

Para obter mais informações sobre pontos de extremidade na Porta da Frente do Azure, consulte Pontos de extremidade na Porta da Frente do Azure.

Criar um grupo de origem

Crie um grupo de origem que defina o tráfego e as respostas esperadas para as instâncias do seu aplicativo. Os grupos de origem também definem como as origens são avaliadas por sondas de saúde.

Execute az afd origin-group create para criar um grupo de origem contendo seus dois aplicativos 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

Adicionar origens ao grupo de origem

Adicione ambas as instâncias do aplicativo criadas anteriormente como origens ao seu novo grupo de origem. As origens no Azure Front Door referem-se a aplicativos dos quais o Azure Front Door recupera conteúdo quando o cache não está habilitado ou quando ocorre uma falha de cache.

Execute az afd origin create para adicionar sua primeira instância de aplicativo como uma origem ao seu grupo de origem.

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

Repita esta etapa para adicionar sua segunda instância de aplicativo como origem ao seu grupo de origem.

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

Para obter mais informações sobre origens, grupos de origem e testes de integridade, consulte Origens e grupos de origem na Porta da Frente do Azure.

Adicionar uma rota

Adicione uma rota para mapear o ponto de extremidade criado anteriormente para o grupo de origem. Essa rota encaminha solicitações do ponto de extremidade para seu grupo de origem.

Execute az afd route create para mapear seu endpoint para o grupo de origem.

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 

Para saber mais sobre rotas na Porta da Frente do Azure, consulte Métodos de roteamento de tráfego para origem.

Criar uma nova política de segurança

O Azure Web Application Firewall (WAF) no Azure Front Door fornece proteção centralizada para seus aplicativos Web, defendendo-os contra exploits e vulnerabilidades comuns.

Neste tutorial, você cria uma política WAF que inclui duas regras gerenciadas. Você também pode criar políticas WAF com regras personalizadas.

Criar uma política WAF

Execute az network front-door waf-policy create para criar uma nova política WAF para o Azure Front Door. Este exemplo cria uma política habilitada e no modo de prevenção.

Nota

As regras gerenciadas só estão disponíveis com a camada Premium do Azure Front Door. Você pode usar regras personalizadas com a camada Padrão.

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

Nota

Se você selecionar Detection o modo, seu WAF não bloqueará nenhuma solicitação.

Para saber mais sobre as configurações de política WAF para o Azure Front Door, consulte Configurações de política para o Web Application Firewall no Azure Front Door.

Atribuir regras gerenciadas à política WAF

Os conjuntos de regras gerenciados pelo Azure fornecem uma maneira fácil de proteger seu aplicativo contra ameaças comuns à segurança.

Execute az network front-door waf-policy managed-rules add para adicionar regras gerenciadas à sua política WAF. Este exemplo adiciona Microsoft_DefaultRuleSet_2.1 e Microsoft_BotManagerRuleSet_1.0 à sua política.

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

Para saber mais sobre regras gerenciadas no Azure Front Door, consulte Grupos de regras e regras DRS do Web Application Firewall.

Aplicar a política de segurança

Agora, aplique as políticas WAF à sua Porta da Frente do Azure criando uma política de segurança. Essa configuração aplica as regras gerenciadas pelo Azure ao ponto de extremidade definido anteriormente.

Execute az afd security-policy create para aplicar sua política WAF ao domínio padrão do ponto de extremidade.

Nota

Substitua 'mysubscription' pela sua ID de Subscrição do Azure nos domínios e parâmetros waf-policy. Execute a lista de assinaturas da conta az para obter os detalhes da ID da assinatura.

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

Testar a porta da frente do Azure

Depois de criar o perfil do Azure Front Door, leva alguns minutos para que a configuração seja implantada globalmente. Uma vez concluído, você pode acessar o host frontend que você criou.

Execute az afd endpoint show para obter o nome do host do ponto de extremidade do Azure Front Door.

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

Em um navegador, vá para o nome do host do ponto final: contosofrontend-<hash>.z01.azurefd.net. Sua solicitação é roteada para o aplicativo Web menos latente no grupo de origem.

Captura de ecrã da mensagem: A sua aplicação Web está em execução e a aguardar o seu conteúdo

Para testar o failover global instantâneo, siga estas etapas:

  1. Abra um navegador e vá para o nome do host do ponto final: contosofrontend-<hash>.z01.azurefd.net.

  2. Pare um dos aplicativos Web executando az webapp stop:

    az webapp stop --name WebAppContoso-01 --resource-group myRGFD
    
  3. Atualize o seu browser. Você deve ver a mesma página de informações.

Gorjeta

Pode haver um ligeiro atraso para estas ações. Talvez seja necessário atualizar novamente.

  1. Pare também o outro aplicativo Web:

    az webapp stop --name WebAppContoso-02 --resource-group myRGFD
    
  2. Atualize o seu browser. Desta vez, você verá uma mensagem de erro.

    Captura de ecrã da mensagem: Ambas as instâncias da aplicação Web interrompidas

  3. Reinicie um dos Web Apps executando az webapp start. Atualize o navegador e a página deve voltar ao normal.

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

Clean up resources (Limpar recursos)

Quando não precisar mais dos recursos criados para a Porta da Frente do Azure, você poderá excluir o grupo de recursos. Esta ação remove a Porta da Frente do Azure e todos os recursos associados.

Execute o seguinte comando para excluir o grupo de recursos:

az group delete --name myRGFD

Próximos passos

Prossiga para o próximo artigo para saber como adicionar um domínio personalizado à sua Porta da Frente do Azure.