Controle o tráfego de saída nos Aplicativos de Contêiner do Azure com rotas definidas pelo usuário
Nota
Esse recurso só é suportado para o tipo de ambiente de perfis de carga de trabalho.
Este artigo mostra como usar rotas definidas pelo usuário (UDR) com o Firewall do Azure para bloquear o tráfego de saída de seus Aplicativos de Contêiner para recursos back-end do Azure ou outros recursos de rede.
O Azure cria uma tabela de rotas padrão para suas redes virtuais na criação. Ao implementar uma tabela de rotas definida pelo usuário, você pode controlar como o tráfego é roteado em sua rede virtual. Neste guia, sua UDR de configuração na rede virtual Aplicativos de Contêiner para restringir o tráfego de saída com o Firewall do Azure.
Você também pode usar um gateway NAT ou qualquer outro dispositivo de terceiros em vez do Firewall do Azure.
Consulte a configuração do UDR com o Firewall do Azure na rede em Aplicativos de Contêiner do Azure para obter mais informações.
Pré-requisitos
Ambiente de perfis de carga de trabalho: um ambiente de perfis de carga de trabalho integrado a uma rede virtual personalizada. Para obter mais informações, consulte o guia sobre como criar um ambiente de aplicativo de contêiner no ambiente de perfis de carga de trabalho.
curl
support: Seu aplicativo de contêiner deve ter um contêiner que ofereça suporte acurl
comandos. Neste tutorial, você usacurl
para verificar se o aplicativo de contêiner está implantado corretamente. Se você não tiver um aplicativo de contêiner comcurl
implantado, poderá implantar o seguinte contêiner que suportacurl
,mcr.microsoft.com/k8se/quickstart:latest
.
Criar a sub-rede do firewall
Uma sub-rede chamada AzureFirewallSubnet é necessária para implantar um firewall na rede virtual integrada.
Abra a rede virtual integrada com seu aplicativo no portal do Azure.
No menu à esquerda, selecione Sub-redes e, em seguida, selecione + Sub-rede.
Introduza os seguintes valores:
Definição Ação Nome Insira AzureFirewallSubnet. Intervalo de endereços da sub-rede Use o padrão ou especifique um intervalo de sub-rede /26 ou maior. Selecione Guardar
Implementar a firewall
No menu do portal do Azure ou na página inicial , selecione Criar um recurso.
Procure por Firewall.
Selecione Firewall.
Selecione Criar.
Na página Criar um firewall, configure o firewall com as seguintes configurações.
Definição Ação Grupo de recursos Insira o mesmo grupo de recursos que a rede virtual integrada. Nome Introduza um nome à sua escolha Região Selecione a mesma região da rede virtual integrada. Política de firewall Crie um selecionando Adicionar novo. Rede virtual Selecione a rede virtual integrada. Endereço IP público Selecione um endereço existente ou crie um selecionando Adicionar novo. Selecione Rever + criar. Após a conclusão da validação, selecione Criar. A etapa de validação pode levar alguns minutos para ser concluída.
Quando a implantação for concluída, selecione Ir para Recurso.
Na página Visão geral do firewall, copie o IP privado do firewall. Esse endereço IP é usado como o endereço de salto seguinte ao criar a regra de roteamento para a rede virtual.
Encaminhar todo o tráfego para o firewall
Suas redes virtuais no Azure têm tabelas de rotas padrão em vigor quando você cria a rede. Ao implementar uma tabela de rotas definida pelo usuário, você pode controlar como o tráfego é roteado em sua rede virtual. Nas etapas a seguir, você cria um UDR para rotear todo o tráfego para o Firewall do Azure.
No menu do portal do Azure ou na página inicial , selecione Criar um recurso.
Pesquise tabelas de rotas.
Selecione Tabelas de rotas.
Selecione Criar.
Introduza os seguintes valores:
Definição Ação Região Selecione a região como sua rede virtual. Nome Introduza um nome. Propagar rotas de gateway Selecione Não Selecione Rever + criar. Após a conclusão da validação, selecione Criar.
Quando a implantação for concluída, selecione Ir para Recurso.
No menu à esquerda, selecione Rotas e, em seguida, selecione Adicionar para criar uma nova tabela de rotas
Configure a tabela de rotas com as seguintes configurações:
Definição Ação Prefixo de endereço Digite 0.0.0.0/0 Tipo de salto seguinte Selecione Dispositivo virtual Endereço do próximo salto Insira o IP privado do firewall que você salvou em Implantar o firewall. Selecione Adicionar para criar a rota.
No menu à esquerda, selecione Sub-redes e, em seguida, selecione Associar para associar sua tabela de rotas à sub-rede do aplicativo contêiner.
Configure a sub-rede Associar com os seguintes valores:
Definição Ação Rede virtual Selecione a rede virtual para seu aplicativo de contêiner. Sub-rede Selecione a sub-rede seu aplicativo para contêiner. Selecione OK.
Configurar políticas de firewall
Nota
Ao usar UDR com o Firewall do Azure em Aplicativos de Contêiner do Azure, você precisará adicionar determinados FQDN e tags de serviço à lista de permissões do firewall. Consulte Configurar o UDR com o Firewall do Azure para determinar quais tags de serviço você precisa.
Agora, todo o tráfego de saída do seu aplicativo de contêiner é roteado para o firewall. Atualmente, o firewall ainda permite todo o tráfego de saída. Para gerenciar qual tráfego de saída é permitido ou negado, você precisa configurar políticas de firewall.
No recurso Firewall do Azure na página Visão geral , selecione Política de firewall
No menu à esquerda da página de política de firewall, selecione Regras de Aplicação.
Selecione Adicionar uma coleção de regras.
Insira os seguintes valores para a Coleção de regras:
Definição Ação Nome Insira um nome de coleção Tipo de coleção de regras Selecionar Aplicação Prioridade Insira a prioridade, como 110 Ação de coleta de regras Selecione Permitir Grupo de recolha de regras Selecione DefaultApplicationRuleCollectionGroup Em Regras, insira os seguintes valores
Definição Ação Nome Insira um nome para a regra Tipo de fonte Selecione o endereço IP Source Introduzir * Protocolo Digite http:80,https:443 Tipo de destino Selecione FQDN. Destino Digite mcr.microsoft.com
,*.data.mcr.microsoft.com
. Se você estiver usando ACR, adicione seu endereço ACR e*.blob.core.windows.net
.Ação Selecione Permitir Nota
Se você estiver usando o registro do Docker Hub e quiser acessá-lo por meio do firewall, precisará adicionar os seguintes FQDNs à sua lista de destino de regras: hub.docker.com, registry-1.docker.io e production.cloudflare.docker.com.
Selecione Adicionar.
Verifique se o firewall está bloqueando o tráfego de saída
Para verificar se a configuração do firewall está configurada corretamente, você pode usar o curl
comando no console de depuração do aplicativo.
Navegue até seu Aplicativo de Contêiner configurado com o Firewall do Azure.
No menu à esquerda, selecione Console e, em seguida, selecione o contêiner que suporta o
curl
comando.No menu de comando Escolher inicialização, selecione /bin/sh e selecione Conectar.
No console, execute
curl -s https://mcr.microsoft.com
. Você verá uma resposta bem-sucedida quando adicionarmcr.microsoft.com
à lista de permissões para suas políticas de firewall.Execute
curl -s https://<FQDN_ADDRESS>
para obter um URL que não corresponda a nenhuma das suas regras de destino, comoexample.com
. O comando de exemplo seriacurl -s https://example.com
. Você não deve obter resposta, o que indica que seu firewall bloqueou a solicitação.