Protegendo uma VNET personalizada em aplicativos de contêiner do Azure com grupos de segurança de rede
Os NSGs (grupos de segurança de rede) necessários para configurar redes virtuais se assemelham muito às configurações exigidas pelo Kubernetes.
Você pode bloquear uma rede por meio de NSGs com regras mais restritivas do que as regras NSG padrão para controlar todo o tráfego de entrada e saída para o ambiente de Aplicativos de Contêiner no nível de assinatura.
No ambiente de perfis de carga de trabalho, há suporte para rotas definidas pelo usuário (UDRs) e proteção do tráfego de saída com um firewall . Ao usar um ambiente de perfis de carga de trabalho externo, o tráfego de entrada para os Aplicativos de Contêiner do Azure é roteado por meio do IP público existente no grupo de recursos gerenciados, em vez de por meio de sua sub-rede. Isso significa que o bloqueio do tráfego de entrada via NSG ou Firewall em um ambiente de perfis de carga de trabalho externo não é suportado. Para obter mais informações, consulte Rede em ambientes de Aplicativos de Contêiner do Azure.
No ambiente Somente consumo, não há suporte para UDRs (rotas definidas pelo usuário) personalizadas e Rotas Expressas.
Regras de permissão do NSG
As tabelas a seguir descrevem como configurar uma coleção de regras de permissão do NSG. As regras específicas necessárias dependem do tipo de ambiente.
Entrada
Observação
Ao usar perfis de carga de trabalho, as regras NSG de entrada só se aplicam ao tráfego que passa pela sua rede virtual. Se seus aplicativos de contêiner estiverem definidos para aceitar tráfego da Internet pública, o tráfego de entrada passará pelo ponto de extremidade público em vez da rede virtual.
Protocolo | Origem | Portas de origem | Destino | Portas de destino | Descrição |
---|---|---|---|---|---|
TCP | IPs do seu cliente | * | Sub-rede1 do aplicativo de contêiner | 80 , 31080 |
Permita que seus IPs de Cliente acessem os Aplicativos de Contêiner do Azure ao usar HTTP. 31080 é a porta na qual o Proxy de Borda do Ambiente de Aplicativos de Contêiner responde ao tráfego HTTP. Ele está atrás do balanceador de carga interno. |
TCP | IPs do seu cliente | * | Sub-rede1 do aplicativo de contêiner | 443 , 31443 |
Permita que seus IPs de Cliente acessem os Aplicativos de Contêiner do Azure ao usar HTTPS. 31443 é a porta na qual o Proxy de Borda do Ambiente de Aplicativos de Contêiner responde ao tráfego HTTPS. Ele está atrás do balanceador de carga interno. |
TCP | AzureLoadBalancer | * | Sub-rede do aplicativo de contêiner | 30000-32767 2 |
Permitir que o Balanceador de Carga do Azure examine pools de back-end. |
1 Esse endereço é passado como um parâmetro quando você cria um ambiente. Por exemplo, 10.0.0.0/21
.
2 O intervalo completo é necessário ao criar seus Aplicativos de Contêiner do Azure como uma porta dentro do intervalo alocado dinamicamente. Depois de criadas, as portas necessárias são dois valores estáticos imutáveis e você pode atualizar suas regras NSG.
Saída
Protocolo | Origem | Portas de origem | Destino | Portas de destino | Descrição |
---|---|---|---|---|---|
TCP | Sub-rede do aplicativo de contêiner | * | MicrosoftContainerRegistry |
443 |
Essa é a marca de serviço do Registro de contêiner da Microsoft para contêineres do sistema. |
TCP | Sub-rede do aplicativo de contêiner | * | AzureFrontDoor.FirstParty |
443 |
Essa é uma dependência da MicrosoftContainerRegistry marca de serviço. |
Qualquer | Sub-rede do aplicativo de contêiner | * | Sub-rede do aplicativo de contêiner | * | Permitir a comunicação entre IPs na sub-rede do aplicativo de contêiner. |
TCP | Sub-rede do aplicativo de contêiner | * | AzureActiveDirectory |
443 |
Se você estiver usando a identidade gerenciada, isso será necessário. |
TCP | Sub-rede do aplicativo de contêiner | * | AzureMonitor |
443 |
Somente necessário ao usar o Azure Monitor. Permite chamadas de saída ao Azure Monitor. |
TCP e UDP | Sub-rede do aplicativo de contêiner | * | 168.63.129.16 |
53 |
Permite que o ambiente use o DNS do Azure para resolver o nome do host. |
TCP | Sub-rede1 do aplicativo de contêiner | * | Seu registro de contêiner | A porta do registro do contêiner | Isso é necessário para se comunicar com o registro do contêiner. Por exemplo, ao usar o ACR, você precisa AzureContainerRegistry e AzureActiveDirectory para o destino, e a porta será a porta do registro do contêiner, a menos que use pontos de extremidade privados.2 |
TCP | Sub-rede do aplicativo de contêiner | * | Storage.<Region> |
443 |
Apenas necessário ao usar Azure Container Registry para hospedar suas imagens. |
1 Esse endereço é passado como um parâmetro quando você cria um ambiente. Por exemplo, 10.0.0.0/21
.
2 Se você estiver usando o Registro de Contêiner do Azure (ACR) com NSGs configurados em sua rede virtual, crie um ponto de extremidade privado em seu ACR para permitir que os Aplicativos de Contêiner do Azure extraiam imagens pela rede virtual. Você não precisa adicionar uma regra NSG para ACR quando configurado com pontos de extremidade privados.
Considerações
- Se você estiver executando servidores HTTP, talvez seja necessário adicionar portas
80
e443
. - Não negue explicitamente o endereço
168.63.128.16
DNS do Azure nas regras NSG de saída ou seu ambiente de Aplicativos de Contêiner não poderá funcionar.
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de