Partilhar via


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 a curl comandos. Neste tutorial, você usa curl para verificar se o aplicativo de contêiner está implantado corretamente. Se você não tiver um aplicativo de contêiner com curl implantado, poderá implantar o seguinte contêiner que suporta curl, 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.

  1. Abra a rede virtual integrada com seu aplicativo no portal do Azure.

  2. No menu à esquerda, selecione Sub-redes e, em seguida, selecione + Sub-rede.

  3. 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.
  4. Selecione Guardar

Implementar a firewall

  1. No menu do portal do Azure ou na página inicial , selecione Criar um recurso.

  2. Procure por Firewall.

  3. Selecione Firewall.

  4. Selecione Criar.

  5. 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.
  6. 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.

  7. Quando a implantação for concluída, selecione Ir para Recurso.

  8. 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.

  1. No menu do portal do Azure ou na página inicial , selecione Criar um recurso.

  2. Pesquise tabelas de rotas.

  3. Selecione Tabelas de rotas.

  4. Selecione Criar.

  5. 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
  6. Selecione Rever + criar. Após a conclusão da validação, selecione Criar.

  7. Quando a implantação for concluída, selecione Ir para Recurso.

  8. No menu à esquerda, selecione Rotas e, em seguida, selecione Adicionar para criar uma nova tabela de rotas

  9. 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.
  10. Selecione Adicionar para criar a rota.

  11. No menu à esquerda, selecione Sub-redes e, em seguida, selecione Associar para associar sua tabela de rotas à sub-rede do aplicativo contêiner.

  12. 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.
  13. 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.

  1. No recurso Firewall do Azure na página Visão geral , selecione Política de firewall

  2. No menu à esquerda da página de política de firewall, selecione Regras de Aplicação.

  3. Selecione Adicionar uma coleção de regras.

  4. 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
  5. 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.

  6. 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.

  1. Navegue até seu Aplicativo de Contêiner configurado com o Firewall do Azure.

  2. No menu à esquerda, selecione Console e, em seguida, selecione o contêiner que suporta o curl comando.

  3. No menu de comando Escolher inicialização, selecione /bin/sh e selecione Conectar.

  4. No console, execute curl -s https://mcr.microsoft.com. Você verá uma resposta bem-sucedida quando adicionar mcr.microsoft.com à lista de permissões para suas políticas de firewall.

  5. Execute curl -s https://<FQDN_ADDRESS> para obter um URL que não corresponda a nenhuma das suas regras de destino, como example.com. O comando de exemplo seria curl -s https://example.com. Você não deve obter resposta, o que indica que seu firewall bloqueou a solicitação.

Próximos passos