Implantar e configurar o Firewall Premium do Azure
O Firewall Premium do Azure é um firewall de última geração com recursos necessários para ambientes altamente confidenciais e regulamentados. Inclui as seguintes características:
- Inspeção TLS - descriptografa o tráfego de saída, processa os dados e, em seguida, criptografa os dados e os envia para o destino.
- IDPS - Um sistema de deteção e prevenção de intrusões de rede (IDPS) permite monitorar atividades de rede em busca de atividades maliciosas, registrar informações sobre essa atividade, denunciá-las e, opcionalmente, tentar bloqueá-las.
- Filtragem de URL - estende o recurso de filtragem 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, sites de mídia social e outros.
Para obter mais informações, consulte Recursos do Firewall Premium do Azure.
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 trabalhador (10.0.10.0/24)
- uma sub-rede do Azure Bastion (10.0.20.0/24)
- uma sub-rede de firewall (10.0.100.0/24)
Importante
O preço por hora começa a partir do momento em que o Bastion é implantado, independentemente do uso de dados de saída. Para obter mais informações, consulte Preços e SKUs. Se você estiver implantando o Bastion como parte de um tutorial ou teste, recomendamos excluir esse recurso depois de terminar de usá-lo.
Uma única VNet central é usada neste ambiente de teste para simplificar. Para fins de produção, uma topologia hub and spoke com redes virtuais emparelhadas é mais comum.
A máquina virtual de trabalho é um cliente que envia solicitações HTTP/S através do firewall.
Pré-requisitos
Se não tiver uma subscrição do Azure, crie uma conta gratuita antes de começar.
Implementar a infraestrutura
O modelo implanta um ambiente de teste completo para o Firewall Premium do Azure habilitado com IDPS, Inspeção TLS, Filtragem de URL e Categorias da Web:
- uma nova Política de Firewall Premium e de Firewall do Azure com configurações predefinidas para permitir a validação fácil de seus recursos principais (IDPS, Inspeção TLS, Filtragem de URL e Categorias da Web)
- implanta todas as dependências, incluindo o Cofre da Chave e uma Identidade Gerenciada. Em um ambiente de produção, esses recursos já podem ser criados e não são necessários no mesmo modelo.
- gera CA raiz autoassinada e implanta-a no Cofre da Chave gerado
- gera uma CA 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 à máquina de teste do Windows (WorkerVM)
Testar a firewall
Agora você pode testar IDPS, inspeção TLS, filtragem da Web e categorias da Web.
Adicionar configurações de diagnóstico de firewall
Para coletar logs de firewall, você precisa adicionar configurações de diagnóstico para coletar logs de firewall.
- Selecione o DemoFirewall e, em Monitoramento, selecione Configurações de diagnóstico.
- Selecione Adicionar definiçã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 espaço de trabalho do Log Analytics.
- Selecione Guardar.
Testes 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 certificado do Firewall Premium do Azure, consulte Certificados Premium do Firewall do Azure.
Você pode usar curl
para controlar vários cabeçalhos HTTP e simular tráfego mal-intencionado.
Para testar IDPS para tráfego HTTP:
Na máquina virtual WorkerVM, abra uma janela de prompt de comando do 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 da 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”}
Nota
Pode levar algum tempo para que os dados comecem a aparecer nos logs. Dê-lhe pelo menos alguns minutos para permitir que os logs comecem a mostrar os dados.
Adicione uma regra de assinatura para assinatura 2032081:
- Selecione DemoFirewallPolicy e, em Configurações, selecione IDPS.
- Selecione a guia Regras de assinatura.
- Em ID da Assinatura, na caixa de texto aberta, digite 2032081.
- Em Modo, selecione Negar.
- Selecione Guardar.
- Aguarde a conclusão da implantação antes de prosseguir.
No WorkerVM, execute o
curl
comando novamente:curl -A "HaxerMen" <your web server address>
Como a solicitação HTTP agora está bloqueada pelo firewall, você verá a seguinte saída depois que o tempo limite da conexão expirar:
read tcp 10.0.100.5:55734->10.0.20.10:80: read: connection reset by peer
Vá para os logs do Monitor no portal do Azure e localize a mensagem para a solicitação bloqueada.
Para testar IDPS para tráfego HTTPS
Repita esses testes curl usando HTTPS em vez de HTTP. Por exemplo:
curl --ssl-no-revoke -A "HaxerMen" <your web server address>
Você deve ver os mesmos resultados que teve com os testes HTTP.
Inspeção TLS com filtragem de URL
Use as etapas a seguir para testar a Inspeção TLS com filtragem de URL.
Edite as regras do aplicativo de diretiva de firewall e adicione uma nova regra chamada
AllowURL
àAllowWeb
coleção de regras. Configure a URLwww.nytimes.com/section/world
de destino, o endereço *IP de origem, a URL do tipo de destino, selecione Inspeção TLS e os protocolos http, https.Quando a implantação for concluída, abra um navegador no WorkerVM e vá para
https://www.nytimes.com/section/world
e valide se a resposta HTML é exibida como esperado no navegador.No portal do Azure, você pode exibir a URL inteira nos logs de monitoramento de regras de aplicativo:
Algumas páginas HTML podem parecer incompletas porque se referem a outros URLs que são negados. Para resolver esse problema, a seguinte abordagem pode ser adotada:
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 subURLs, você poderá modificar a regra e adicionar um asterisco ao 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/*
Teste de categorias da Web
Vamos criar uma regra de aplicativo para permitir o acesso a sites de esportes.
No portal, abra seu grupo de recursos e selecione DemoFirewallPolicy.
Selecione Regras de Aplicativo e Adicionar uma coleção de regras.
Em Name, digite GeneralWeb, Priority 103, Rule collection group, selecione DefaultApplicationRuleCollectionGroup.
Em Regras para Nome, digite AllowSports, Source*, Protocol http, https, selecione TLS Inspection, Destination Type selecione Web categories, Destination select Sports.
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 da NFL e o log de regras do aplicativo mostra que uma regra Categoria da Web: Esportes foi correspondida e a solicitação foi permitida.