Compartir a través de


Protección de una red virtual personalizada en Azure Container Apps con grupos de seguridad de red

Grupos de seguridad de red (NSG) necesarios para configurar redes virtuales muy parecidas a la configuración requerida por Kubernetes.

Puede bloquear una red a través de grupos de seguridad de red con reglas más restrictivas que las reglas de NSG predeterminadas para controlar todo el tráfico entrante y saliente para el entorno de Container Apps en el nivel de suscripción.

En el entorno de perfiles de carga de trabajo, se admiten rutas definidas por el usuario (UDR) y protección del tráfico saliente con un firewall . Cuando se usa un entorno de perfiles de carga de trabajo externo, el tráfico entrante a Azure Container Apps se enruta a través de la dirección IP pública que existe en el grupo de recursos administrado en lugar de a través de la subred. Esto significa que no se admite el bloqueo del tráfico entrante a través de NSG o Firewall en un entorno de perfiles de carga de trabajo externo. Para más información, consulte Redes en entornos de Azure Container Apps.

En el entorno solo consumo, no se admiten las rutas rápidas y las rutas definidas por el usuario (UDR) personalizadas tienen compatibilidad limitada. Para obtener más información sobre qué nivel de compatibilidad con UDR está disponible en el entorno de solo consumo, consulte las preguntas más frecuentes.

Reglas de permisos de NSG

En las tablas siguientes se describe cómo configurar una colección de reglas de permisos de NSG. Las reglas específicas necesarias dependen del tipo de entorno.

Entrada

Nota:

Al usar perfiles de carga de trabajo, las reglas de NSG entrantes solo se aplican para el tráfico que pasa por la red virtual. Si las aplicaciones de contenedor están configuradas para aceptar el tráfico desde la red pública de Internet, el tráfico entrante pasa por el punto de conexión público en lugar de la red virtual.

Protocolo Origen Puertos de origen Destination Puertos de destino Descripción
TCP Direcciones IP de cliente * Subred 1 de la aplicación contenedora 80, 31080 Permitir que las direcciones IP de cliente accedan a Azure Container Apps al usar HTTP. 31080 es el puerto en el que el proxy perimetral del entorno de Container Apps responde al tráfico HTTP. Está detrás del equilibrador de carga interno.
TCP Direcciones IP de cliente * Subred 1 de la aplicación contenedora 443, 31443 Permitir que las direcciones IP de cliente accedan a Azure Container Apps al usar HTTPS. 31443 es el puerto en el que el proxy perimetral del entorno de Container Apps responde al tráfico HTTPS. Está detrás del equilibrador de carga interno.
TCP AzureLoadBalancer * Subred de la aplicación contenedora 30000-327672 Permitir que Azure Load Balancer sondee los grupos de back-end.

1 Esta dirección se pasa como parámetro al crear un entorno. Por ejemplo, 10.0.0.0/21.
2 El intervalo completo es necesario al crear azure Container Apps como un puerto dentro del intervalo mediante la asignación dinámica. Una vez creados, los puertos necesarios son dos valores estáticos inmutables y se pueden actualizar las reglas del grupo de seguridad de red.

Salida

Protocolo Origen Puertos de origen Destination Puertos de destino Descripción
TCP Subred de la aplicación contenedora * MicrosoftContainerRegistry 443 Esta es la etiqueta de servicio para el registro de contenedor de Microsoft para los contenedores del sistema.
TCP Subred de la aplicación contenedora * AzureFrontDoor.FirstParty 443 Se trata de una dependencia de la etiqueta de MicrosoftContainerRegistry servicio.
Cualquiera Subred de la aplicación contenedora * Subred de la aplicación contenedora * Permitir la comunicación entre direcciones IP en la subred de la aplicación contenedora.
TCP Subred de la aplicación contenedora * AzureActiveDirectory 443 Si usa la identidad administrada, esto es necesario.
TCP Subred de la aplicación contenedora * AzureMonitor 443 Solo es necesario cuando se usa Azure Monitor. Permite llamadas salientes a Azure Monitor.
TCP y UDP Subred de la aplicación contenedora * 168.63.129.16 53 Permite que el entorno use Azure DNS para resolver el nombre de host.
TCP Subred 1 de la aplicación contenedora * Su registro de contenedor Puerto del registro de contenedor Esto es necesario para comunicarse con el registro de contenedor. Por ejemplo, al usar ACR, necesita AzureContainerRegistry y AzureActiveDirectory para el destino, y el puerto será el puerto del registro de contenedor a menos que use puntos de conexión privados.2
TCP Subred de la aplicación contenedora * Storage.<Region> 443 Solo es necesario cuando se usa Azure Container Registry para hospedar las imágenes.

1 Esta dirección se pasa como parámetro al crear un entorno. Por ejemplo, 10.0.0.0/21.
2 Si usa Azure Container Registry (ACR) con grupos de seguridad de red configurados en la red virtual, cree un punto de conexión privado en ACR para permitir que Azure Container Apps extraiga imágenes a través de la red virtual. No es necesario agregar una regla de NSG para ACR cuando se configura con puntos de conexión privados.

Consideraciones

  • Si ejecuta servidores HTTP, es posible que tenga que agregar puertos 80 y 443.
  • No deniegue explícitamente la dirección 168.63.129.16 DNS de Azure en las reglas de NSG salientes o el entorno de Container Apps no podrá funcionar.