Controlar o tráfego de saída nos Aplicativos de Contêiner do Azure com rotas definidas pelo usuário
Observação
Esse recurso só tem suporte para o tipo de ambiente de perfis de carga de trabalho.
Este artigo mostra como usar as 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 os recursos de back-end do Azure ou outros recursos de rede.
O Azure cria uma tabela de rotas padrão para suas redes virtuais no momento da 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, você configura o UDR na rede virtual dos Aplicativos de Contêiner para restringir o tráfego de saída com o Firewall do Azure.
Você também pode usar um Gateway da NAT ou qualquer outro dispositivo de terceiros em vez do Firewall do Azure.
Veja como configurar o UDR com o Firewall do Azure em redes nos 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, confira o guia de como criar um ambiente de aplicativo de contêiner no ambiente de perfis de carga de trabalho.
Suporte
curl
: seu aplicativo de contêiner deve ter um contêiner que dê suporte a comandoscurl
. Neste tutorial, você usarácurl
para verificar se o aplicativo de contêiner foi implantado corretamente. Se você não tiver um aplicativo de contêiner com ocurl
implantado, poderá implantar o contêiner a seguir que dá suporte acurl
,mcr.microsoft.com/k8se/quickstart:latest
.
Criar a sub-rede do firewall
É necessária uma sub-rede chamada AzureFirewallSubnet para implantar um firewall na rede virtual integrada.
Abra a rede virtual integrada ao seu aplicativo no portal do Azure.
No menu à esquerda, selecione Sub-redes e, em seguida, selecione + Sub-rede.
Insira os valores a seguir:
Configuraçã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 Salvar
Implantar o firewall
No menu do portal do Azure ou na Página inicial, selecione Criar um recurso.
Pesquise Firewall.
Selecione Firewall.
Selecione Criar.
Na página Criar um Firewall, defina o firewall com as seguintes configurações.
Configuração Ação Grupo de recursos Insira o mesmo grupo de recursos que a rede virtual integrada. Nome Insira um nome de sua preferência Região Selecione a mesma região que a 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 Examinar + criar. Depois da validação, selecione Criar. A etapa de validação pode levar alguns minutos para ser concluída.
Depois que a implantação for concluída, selecione Ir para o Recurso.
Na página Visão geral do firewall, copie o IP privado do firewall. Esse endereço IP é usado como o endereço do próximo salto ao criar a regra de roteamento da rede virtual.
Rotear 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.
Insira os valores a seguir:
Configuração Ação Região Selecione a região como sua rede virtual. Nome Insira um nome. Propagar as rotas de gateway Selecione Não Selecione Examinar + criar. Depois da validação, selecione Criar.
Depois que a implantação for concluída, selecione Ir para o Recurso.
No menu à esquerda, selecione Rotas e, em seguida, escolha Adicionar para criar uma nova tabela de rotas
Configure a tabela de rotas com as seguintes configurações:
Configuração Ação Prefixo de endereço Insira 0.0.0.0/0 Tipo do próximo salto Selecione Dispositivo virtual Endereço do próximo salto Insira o IP privado do Firewall salvo 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 de contêiner.
Configure Associar sub-rede com os seguintes valores:
Configuração Ação Rede virtual Selecione a rede virtual do seu aplicativo de contêiner. Sub-rede Selecione a sub-rede do aplicativo de contêiner. Selecione OK.
Configurar políticas de firewall
Observação
Ao usar o UDR com o Firewall do Azure nos Aplicativos de Contêiner do Azure, você precisará adicionar determinadas marcas de serviço e FQDN à lista de permitidos do firewall. Consulte Configurar o UDR com o Firewall do Azure para determinar quais marcas 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 o tráfego de saída permitido ou negado, você precisará configurar as políticas de firewall.
No recurso Firewall do Azure na página de Visão geral, selecione Política de firewall
No menu à esquerda da página de política de firewall, selecione Regras do aplicativo.
Selecione Adicionar uma coleção de regras.
Insira os seguintes valores para a Coleção de regras:
Configuração Ação Nome Insira um nome de coleção Tipo de coleção de regras Selecione Aplicativo Prioridade Insira a prioridade, como 110 Ação da coleção de regras selecione Permitir Grupo da coleção de regras Selecione DefaultApplicationRuleCollectionGroup Em Regras, insira os seguintes valores
Configuração Ação Nome Insira um nome para a regra Tipo de origem Selecione Endereço IP Origem Inserir * Protocolo Insira http:80,https:443 Tipo de destino Selecione FQDN. Destino Insira mcr.microsoft.com
,*.data.mcr.microsoft.com
. Se você estiver usando o ACR, adicione seu endereço do ACR e*.blob.core.windows.net
.Ação selecione Permitir Observação
Se você estiver usando o registro do Docker Hub e quiser acessá-lo pelo firewall, precisará adicionar os seguintes FQDNs à sua lista de destinos 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, use o comando curl
do console de depuração do aplicativo.
Navegue até o Aplicativo de Contêiner configurado com o Firewall do Azure.
No menu à esquerda, selecione Console, e escolha o contêiner que dá suporte ao comando
curl
.No menu Escolher comando de inicialização, selecione /bin/sh, e escolha Conectar.
No console, execute
curl -s https://mcr.microsoft.com
. Você deverá ver uma resposta bem-sucedida ao adicionarmcr.microsoft.com
à lista de permitidos de suas políticas de firewall.Execute
curl -s https://<FQDN_ADDRESS>
para um URL que não corresponde a nenhuma das suas regras de destino, comoexample.com
. O comando de exemplo seriacurl -s https://example.com
. Você não deve obter nenhuma resposta, o que indica que o firewall bloqueou a solicitação.