Integrar o Azure Firewall no Balanceador de Carga Standard do Azure

Você pode integrar um Firewall do Azure em uma rede virtual com um Balanceador de Carga Padrão do Azure (público ou interno).

O design preferido é integrar um balanceador de carga interno ao firewall do Azure, pois esse é um design mais simples. Poderá utilizar um balanceador de carga público se já tiver um implementado e quiser mantê-lo. No entanto, precisa de estar atento a um problema de encaminhamento assimétrico que pode quebrar a funcionalidade no cenário do balanceador de carga público.

Para obter mais informações sobre o Azure Load Balancer, consulte O que é o Azure Load Balancer?

Balanceador de carga público

Com um balanceador de carga público, o balanceador de carga é implantado com um endereço IP de frontend público.

Encaminhamento assimétrico

Roteamento assimétrico é quando um pacote leva um caminho para o destino e toma outro caminho ao retornar à origem. Esse problema ocorre quando uma sub-rede tem uma rota padrão indo para o endereço IP privado do firewall e você está usando um balanceador de carga público. Nesse caso, o tráfego do balanceador de carga de entrada é recebido por meio de seu endereço IP público, mas o caminho de retorno passa pelo endereço IP privado do firewall. Como o firewall é stateful, ele descarta o pacote que retorna porque o firewall não está ciente de tal sessão estabelecida.

Corrigir o problema de roteamento

Quando você implanta um Firewall do Azure em uma sub-rede, uma etapa é criar uma rota padrão para a sub-rede direcionando pacotes por meio do endereço IP privado do firewall localizado na Sub-rede AzureFirewall. Para obter mais informações, consulte Tutorial: Implantar e configurar o Firewall do Azure usando o portal do Azure.

Ao introduzir o firewall no cenário do balanceador de carga, você deseja que o tráfego da Internet entre pelo endereço IP público do firewall. A partir daí, o firewall aplica suas regras de firewall e NATs os pacotes ao endereço IP público do seu balanceador de carga. É aqui que o problema ocorre. Os pacotes chegam ao endereço IP público do firewall, mas retornam ao firewall através do endereço IP privado (usando a rota padrão). Para evitar esse problema, crie outra rota de host para o endereço IP público do firewall. Os pacotes que vão para o endereço IP público do firewall são roteados através da Internet. Isso evita tomar a rota padrão para o endereço IP privado do firewall.

Diagrama de roteamento assimétrico.

Exemplo de tabela de rotas

Por exemplo, as rotas a seguir são para um firewall no endereço IP público 203.0.113.136 e no endereço IP privado 10.0.1.4.

Captura de ecrã da tabela de rotas.

Exemplo de regra NAT

No exemplo a seguir, uma regra NAT converte o tráfego RDP para o firewall em 203.0.113.136 para o balanceador de carga em 203.0.113.220:

Screenshot da regra NAT.

Sondas do estado de funcionamento

Lembre-se, você precisa ter um serviço Web em execução nos hosts no pool de balanceadores de carga se usar testes de integridade TCP para a porta 80 ou testes HTTP/HTTPS.

Balanceador de carga interno

Com um balanceador de carga interno, o balanceador de carga é implantado com um endereço IP de frontend privado.

Não há nenhum problema de roteamento assimétrico com esse cenário. Os pacotes de entrada chegam ao endereço IP público do firewall, são traduzidos para o endereço IP privado do balanceador de carga e, em seguida, retornam ao endereço IP privado do firewall usando o mesmo caminho de retorno.

Portanto, você pode implantar esse cenário semelhante ao cenário do balanceador de carga público, mas sem a necessidade da rota de host de endereço IP público do firewall.

As máquinas virtuais no pool de back-end podem ter conectividade de saída com a Internet por meio do Firewall do Azure. Configure uma rota definida pelo usuário na sub-rede da máquina virtual com o firewall como o próximo salto.

Segurança extra

Para melhorar ainda mais a segurança do seu cenário com balanceamento de carga, você pode usar NSGs (grupos de segurança de rede).

Por exemplo, você pode criar um NSG na sub-rede de back-end onde as máquinas virtuais com balanceamento de carga estão localizadas. Permitir tráfego de entrada originado do endereço/porta IP do firewall.

Captura de ecrã do grupo de segurança de rede.

Para obter mais informações sobre NSGs, consulte Grupos de segurança.

Próximos passos