Procedimientos recomendados para la administración y la protección de las imágenes de contenedor en Azure Kubernetes Service (AKS)
La seguridad de los contenedores y de las imágenes de contenedor es una prioridad importante al desarrollar y ejecutar aplicaciones en Azure Kubernetes Service (AKS). Los contenedores que incluyen imágenes base obsoletas o entornos de ejecución de aplicaciones sin revisar suponen riesgos para la seguridad y posibles vectores de ataque. Puede minimizar estos riesgos mediante la integración y ejecución de herramientas de análisis y corrección en los contenedores en tiempo de compilación y ejecución. Cuanto antes se detecte la vulnerabilidad o la imagen base obsoleta, más segura será la aplicación.
En este artículo, "contenedores" se refiere tanto a las imágenes de contenedor almacenadas en un registro de contenedor como a los contenedores en ejecución.
En este artículo se indica cómo proteger los contenedores de AKS. Aprenderá a:
- Buscar y corregir vulnerabilidades de la imagen.
- Desencadenar automáticamente y volver a implementar imágenes de contenedor cuando se actualiza una imagen base.
- Puede leer los procedimientos recomendados para la seguridad del clúster y la seguridad de pod.
- Puede usar la seguridad de contenedor de Defender for Cloud para facilitar el análisis de los contenedores en busca de vulnerabilidades. La integración de Azure Container Registry con Defender for Cloud ayuda a proteger las imágenes y el registro de vulnerabilidades.
Protección de las imágenes y el entorno de ejecución
Guía de procedimientos recomendados
- Examine las imágenes de contenedor para detectar vulnerabilidades.
- Implemente solo imágenes validadas.
- Actualice periódicamente las imágenes base y el entorno de ejecución de la aplicación.
- Vuelva a implementar las cargas de trabajo en el clúster de AKS.
Al adoptar cargas de trabajo basadas en contenedores, querrá comprobar la seguridad de las imágenes y el entorno de ejecución usados para compilar sus propias aplicaciones. Para evitar la introducción de vulnerabilidades de seguridad en las implementaciones, puede usar estos procedimientos recomendados:
- Incluya un proceso para examinar imágenes de contenedor mediante herramientas como Twistlock o Aqua en su flujo de trabajo de implementación.
- Permitir solo la implementación de imágenes comprobadas.
Por ejemplo, puede usar una integración continua y una canalización de implementación continua (CI/CD) para automatizar el análisis, la comprobación y la implementación de imágenes. Azure Container Registry incluye estas funcionalidades de análisis de vulnerabilidades.
Compilar automáticamente nuevas imágenes en la actualización de imagen base
Guía de procedimientos recomendados
Si usa imágenes base para las imágenes de la aplicación, use la automatización para crear nuevas imágenes cuando actualice la imagen base. Puesto que las imágenes base actualizadas suelen incluir correcciones de seguridad, actualice todas las imágenes de contenedor de aplicación de nivel inferior.
Cada vez que se actualice una imagen base, también se deben actualizar las imágenes de contenedor de nivel inferior. Integre este proceso de compilación en las canalizaciones de validación e implementación, como Azure Pipelines o Jenkins. Estas canalizaciones aseguran que sus aplicaciones siguen ejecutándose en las imágenes base actualizadas. Una vez que se validan las imágenes de contenedor de aplicación, puede actualizar las implementaciones de AKS para ejecutar las imágenes más recientes y seguras.
Azure Container Registry Tasks también puede actualizar automáticamente las imágenes de contenedor cuando se actualiza la imagen base. Gracias a esta característica, puede crear unas cuantas imágenes base y mantenerlas actualizadas con correcciones de errores y seguridad.
Para más información sobre las actualizaciones de imagen base, consulte el artículo de Automatización de compilaciones de imágenes al actualizarse una imagen base con Azure Container Registry Tasks.
Pasos siguientes
En este artículo se indica cómo proteger los contenedores. Para implementar algunas de estas áreas, consulte el artículo siguiente:
Azure Kubernetes Service