¿Qué es la Seguridad de red en contenedores?
La Seguridad de red en contenedores es una oferta de Servicios avanzados de redes de contenedores que proporciona un mayor control sobre el tráfico de red en contenedores. La Seguridad de red en contenedores usa las directivas basadas en Cilium, ofreciendo un enfoque más granular y fácil de usar para administrar la seguridad de red en comparación con los métodos tradicionales basados en IP.
Características de la Seguridad de red en contenedores
A día de hoy, la primera característica disponible dentro de Seguridad de red en contenedores es el filtrado FQDN. Esto le permite definir directivas de seguridad de red basadas en nombres de dominio, proporcionando un enfoque más granular y fácil de usar para administrar el tráfico de red.
Información general sobre el filtrado de FQDN
Los entornos en contenedores presentan desafíos de seguridad únicos. Los métodos de seguridad de red tradicionales, que suelen depender del filtrado basado en IP, pueden resultar complicados y menos eficaces a medida que cambian con frecuencia las direcciones IP. Además, comprender los patrones de tráfico de red e identificar posibles amenazas puede ser complejo.
El filtrado de FQDN ofrece un enfoque eficaz y fácil de usar para administrar directivas de red. Al definir estas directivas basadas en nombres de dominio en lugar de direcciones IP, las organizaciones pueden simplificar significativamente el proceso de administración de directivas. Este enfoque elimina la necesidad de actualizaciones frecuentes que normalmente son necesarias cuando cambian las direcciones IP, como resultado de reducir la carga administrativa y minimizar el riesgo de errores de configuración.
En un clúster de Kubernetes, las direcciones IP de pod pueden cambiar a menudo, lo que dificulta la protección de los pods con directivas de seguridad mediante direcciones IP. El filtrado de FQDN permite crear directivas de nivel de pod mediante nombres de dominio en lugar de direcciones IP, lo que elimina la necesidad de actualizar directivas cuando cambia una dirección IP.
Nota:
Se requiere Azure CNI con tecnología de Cilium y Kubernetes versión 1.29 o superior para poder usar las características de seguridad de red en contenedores de los Servicios avanzados de redes de contenedores.
Componentes del filtrado de FQDN
Agente de Cilium: el agente de Cilium es un componente de red crítico que se ejecuta como DaemonSet en clústeres de Azure CNI con tecnología de Cilium. Controla las redes, el equilibrio de carga y las directivas de red para los pods del clúster. Para los pods con directivas de FQDN aplicadas, el agente de Cilium redirecciona los paquetes al agente de seguridad de ACNS para la resolución DNS y actualiza la directiva de red usando las asignaciones FQDN-IP obtenidas del agente de seguridad de ACNS.
Agente de seguridad ACNS: el Agente de seguridad ACNS se ejecuta como DaemonSet en el clúster de Azure CNI con tecnología de Cilium con Servicios avanzados de redes de contenedores habilitados. Controla la resolución DNS para pods y la resolución DNS correcta, actualiza el agente de Cilium con FQDN a las asignaciones de IP.
Funcionamiento del filtrado de FQDN
Cuando el filtrado de FQDN está habilitado, las solicitudes DNS se evalúan primero para determinar si deben permitirse después de qué pods solo pueden acceder a los nombres de dominio especificados en función de la directiva de red. El Agente de Cilium marca los paquetes de solicitud DNS originados en los pods, redirigiéndolos al Agente de seguridad de ACNS. Esta redirección solo se produce para pods que aplican directivas de FQDN.
El Agente de seguridad de ACNS decide después si reenvía una solicitud DNS al servidor DNS basándose en los criterios de la directiva. Si se permite, la solicitud se envía al servidor DNS y, al recibir la respuesta, el Agente de seguridad de ACNS actualiza el Agente de Cilium con las asignaciones de FQDN. Esto permite al agente de Cilium actualizar la directiva de red dentro del motor de directivas. En la imagen siguiente se muestra el flujo de alto nivel del filtrado de FQDN.
Ventajas principales
Administración escalable de directivas de seguridad: los administradores de clústeres y seguridad no tienen que actualizar las directivas de seguridad cada vez que cambia una dirección IP, lo que hace que las operaciones sean más eficaces.
Cumplimiento de seguridad mejorado: el filtrado de FQDN admite un modelo de seguridad de confianza cero. El tráfico de red está restringido a dominios de confianza solo mitigando los riesgos de acceso no autorizado.
Aplicación resistente de directivas: el Agente de seguridad de ACNS que se implementa con el filtrado FQDN garantiza que la resolución DNS continúe sin problemas aunque el agente de Cilium se caiga y que las directivas sigan aplicándose. Esta implementación garantiza fundamentalmente que la seguridad y la estabilidad se mantengan en entornos dinámicos y distribuidos.
Consideraciones:
- Las características de Seguridad de red en contenedores requieren Azure CNI con tecnología de Cilium y Kubernetes versión 1.29 y versiones superiores.
Limitaciones:
- Las directivas de FQDN con caracteres comodín se admiten parcialmente. Esto significa que puede crear directivas que coincidan con patrones específicos con un carácter comodín inicial (por ejemplo, .example.com), pero no puede usar un carácter comodín universal () para que coincida con todos los dominios del campo
spec.egress.toPorts.rules.dns.matchPattern
Patrón admitido:
*.example.com
: permite el tráfico a todos los subdominios en example.com.Modelo no admitido
*
Esto intenta coincidir con cualquier nombre de dominio, que no se admite.
- El filtrado FQDN no es compatible actualmente con el DNS nodo-local.
- No se admite la pila doble.
- No se admiten nombres de servicio de Kubernetes.
- No se admiten otras directivas L7.
- Los pods de FQDN pueden mostrar una degradación del rendimiento cuando controlan más de 1000 solicitudes por segundo.
- Las imágenes de contenedor basadas en Alpine pueden encontrar problemas de resolución de DNS cuando se usan con directivas de red de Cilium. Esto se debe a la iteración limitada del dominio de búsqueda de musl libc. Para evitarlo, defina explícitamente todos los dominios de búsqueda en las reglas DNS de las directivas de redes usando patrones de comodines, como en el ejemplo siguiente
rules:
dns:
- matchPattern: "*.example.com"
- matchPattern: "*.example.com.*.*"
- matchPattern: "*.example.com.*.*.*"
- matchPattern: "*.example.com.*.*.*.*"
- matchPattern: "*.example.com.*.*.*.*.*"
- toFQDNs:
- matchPattern: "*.example.com"
Precios
Importante
Los servicios avanzados de redes de contenedores es una oferta de pago. Para obtener más información sobre los precios, consulte Servicios avanzados de redes de contenedores: precios.
Pasos siguientes
Aprenda a habilitar Seguridad de red en contenedores en AKS.
Explore cómo la comunidad de código abierto crea directivas de red de Cilium.
Para más información sobre los servicios avanzados de redes de contenedores en Azure Kubernetes Service (AKS), consulte ¿Qué son los servicios avanzados de redes de contenedores en Azure Kubernetes Service (AKS)?.
Explore las características de Observabilidad de redes de contenedores en Servicios avanzados de redes de contenedores en ¿Qué es la Observabilidad de redes de contenedores?
Azure Kubernetes Service