Implantar e configurar o Firewall do Azure Premium
O Firewall do Azure Premium é um firewall de última geração com funcionalidades necessárias para ambientes altamente confidenciais e regulamentados. Ele contém os seguintes recursos:
- Inspeção de TLS – descriptografa o tráfego de saída, processa e criptografa os dados e envia-os ao destino.
- IDPS: um IDPS (sistema de previsão e detecção de invasão) de rede permite que você monitore atividades para ver se há uma atividade mal-intencionada, registre informações sobre ela, a reporte e, opcionalmente, tente bloqueá-la.
- Filtragem de URL: estende a funcionalidade de filtragem de FQDN do Firewall do Azure para considerar uma URL inteira. Por exemplo,
www.contoso.com/a/c
em vez dewww.contoso.com
. - Categorias da Web: os administradores podem permitir ou negar o acesso do usuário a categorias de sites, como sites de jogos de azar, sites de mídias sociais e outros.
Para obter mais informações, confira Recursos do Firewall do Azure Premium.
Você usará um modelo para implantar um ambiente de teste que tenha uma VNet central (10.0.0.0/16) com três sub-redes:
- uma sub-rede de trabalho (10.0.10.0/24)
- uma sub-rede do Azure Bastion (10.0.20.0/24)
- uma sub-rede do firewall (10.0.100.0/24)
Importante
Os preços por hora começam a partir do momento em que o Bastion é implantado, independentemente do uso de dados de saída. Para saber mais, confira Preços e SKUs. Se você estiver implantando o Bastion como parte de um tutorial ou teste, recomendamos que você exclua esse recurso depois de terminar de usá-lo.
Uma única rede virtual central é usada nesse ambiente de teste para simplificar. Para fins de produção, é mais comum uma topologia de Hub e spoke com VNets emparelhadas.
A máquina virtual de trabalho é um cliente que envia solicitações HTTP/S por meio do firewall.
Pré-requisitos
Se você não tiver uma assinatura do Azure, crie uma conta gratuita antes de começar.
Implantar a infraestrutura
O modelo implanta um ambiente de teste completo para o Firewall do Azure Premium habilitado com IDPS, inspeção de TLS, filtragem de URL e categorias da Web:
- uma novo Firewall do Azure Premium e Política de Firewall com configurações predefinidas para permitir a validação fácil dos principais recursos desse serviço (IDPS, inspeção de TLS, filtragem de URL e categorias da Web)
- implanta todas as dependências, incluindo um Key Vault e uma identidade gerenciada. Em um ambiente de produção, esses recursos já podem ter sido criados e não são necessários no mesmo modelo.
- gera uma AC raiz autoassinada e a implanta no Key Vault gerado
- gera uma AC intermediária derivada e a implanta em uma máquina virtual de teste do Windows (WorkerVM)
- um bastion host (BastionHost) também é implantado e pode ser usado para se conectar ao computador de teste do Windows (WorkerVM)
Testar o firewall
Agora você pode testar IDPS, fazer inspeção de TLS, filtragem da Web e categorias da Web.
Adicionar as configurações de diagnóstico de firewall
Para coletar os logs de firewall, você precisa adicionar configurações de diagnóstico para coletar logs de firewall.
- Selecione DemoFirewall e, em monitoramento, selecione configurações de diagnóstico.
- Selecione Adicionar configuração de diagnóstico.
- Para nome da configuração de diagnóstico, digite fw-diag.
- Em log, selecione AzureFirewallApplicationRule, e AzureFirewallNetworkRule.
- Em Detalhes do destino, selecione Enviar para o workspace do Log Analytics.
- Clique em Salvar.
Testes de IDPS
Para testar o IDPS, você deve implantar seu próprio servidor Web de teste interno com um certificado de servidor apropriado. Esse teste inclui o envio de tráfego mal-intencionado para um servidor Web, portanto, não é aconselhável fazer isso em um servidor Web público. Para obter mais informações sobre os requisitos de certificados do Firewall do Azure Premium, confira Certificados do Firewall do Azure Premium.
Você pode usar o curl
para controlar vários cabeçalhos HTTP e simular o tráfego mal-intencionado.
Para testar o IDPS para o tráfego HTTP:
Na máquina virtual WorkerVM, abra uma janela de prompt de comando de administrador.
Digite o seguinte comando no prompt de comando:
curl -A "HaxerMen" <your web server address>
Você verá a resposta do servidor Web.
Vá para os logs de regra de Rede de Firewall no portal do Azure para encontrar um alerta semelhante à seguinte mensagem:
{ “msg” : “TCP request from 10.0.100.5:16036 to 10.0.20.10:80. Action: Alert. Rule: 2032081. IDS: USER_AGENTS Suspicious User Agent (HaxerMen). Priority: 1. Classification: A Network Trojan was detected”}
Observação
Pode levar algum tempo para que os dados comecem a aparecer nos logs. Espere pelo menos alguns minutos para permitir que os logs comecem a mostrar os dados.
Adicionar uma regra de assinatura para a assinatura 2032081:
- Selecione o DemoFirewallPolicy e, em Configurações, selecione IDPS.
- Selecione a guia regras de assinatura.
- Em ID da assinatura, na caixa de texto em aberto, digite 2032081.
- Em Modo, selecione Negar.
- Clique em Salvar.
- Aguarde a conclusão da implantação antes de continuar.
Em WorkerVM, execute o
curl
comando novamente:curl -A "HaxerMen" <your web server address>
Como a solicitação HTTP agora foi bloqueada pelo firewall, você verá a seguinte saída depois que o tempo limite de conexão expirar:
read tcp 10.0.100.5:55734->10.0.20.10:80: read: connection reset by peer
Vá para os logs de monitoramento no portal do Azure e localize a mensagem para a solicitação bloqueada.
Para testar o IDPS para o tráfego HTTPS
Repita esses testes de ondulação usando HTTPS em vez de HTTP. Por exemplo:
curl --ssl-no-revoke -A "HaxerMen" <your web server address>
Você deverá ver os mesmos resultados que tinha com os testes de HTTP.
Inspeção de TLS com filtragem de URL
Use as etapas a seguir para testar a inspeção TLS com filtragem de URL.
Edite as regras de aplicativo de política de firewall e adicione uma nova regra chamada
AllowURL
àAllowWeb
coleção de regras. Configure a URL de destinowww.nytimes.com/section/world
, o endereço IP de origem *, o tipo de destino URL, selecione Inspeção de TLS e os protocolos http, https.Quando a implantação for concluída, abra um navegador no WorkerVM, vá para
https://www.nytimes.com/section/world
e valide a resposta HTML para que seja exibida conforme o esperado no navegador.No portal do Azure, é possível exibir a URL inteira nos logs de monitoramento da regra de aplicativo:
Algumas páginas HTML podem parecer incompletas porque se referem a outras URLs que são negadas. Para resolver esse problema, a seguinte abordagem pode ser tomada:
Se a página HTML contiver links para outros domínios, você poderá adicionar esses domínios a uma nova regra de aplicativo com permissão de acesso a esses FQDNs.
Se a página HTML contiver links para sub URLs, você poderá modificar a regra e adicionar um asterisco à URL. Por exemplo:
targetURLs=www.nytimes.com/section/world*
Como alternativa, você pode adicionar uma nova URL à regra. Por exemplo:
www.nytimes.com/section/world, www.nytimes.com/section/world/*
Testes de categorias da Web
Vamos criar uma regra de aplicativo para permitir acesso aos sites de esportes.
No portal, abra o grupo de recursos e selecione DemoFirewallPolicy.
Selecione regras de aplicativo e, em seguida, adicione uma coleção de regras.
Para nome, digite GeneralWeb, prioridade 103, grupo de coleção de regrase selecione DefaultApplicationRuleCollectionGroup.
Em Regras para Nome digite AllowSports, Fonte *, Protocolo http, https, selecione Inspeção TLS, Tipo de Destino selecione Categorias da Web, Destino selecione Esportes.
Selecione Adicionar.
Quando a implantação for concluída, vá para WorkerVM e abra um navegador da Web e navegue até
https://www.nfl.com
.Você deve ver a página da Web do NFL e o log de regras do aplicativo mostra que uma categoria Web: regra de esportes foi correspondida e a solicitação foi permitida.