|
Este documento ha sido traducido utilizando tecnología de traducción automática. Si bien nos esforzamos por proporcionar traducciones precisas, no ofrecemos garantías sobre la integridad, precisión o confiabilidad del contenido traducido. En caso de discrepancia, la versión original en inglés prevalecerá y constituirá el texto autorizado. |
Creación de una versión de benchmark personalizada para ejecutar un análisis en un clúster.
Cada versión de benchmark define un conjunto de archivos de configuración de pruebas que definen las pruebas de cumplimiento que ejecutará la herramienta kube-bench.
La aplicación rancher-compliance instala algunas versiones de benchmark predeterminadas que se enumeran en el menú de la aplicación Compliance Benchmark.
Pero podría haber algunas implementaciones de clúster de Kubernetes que requieran configuraciones personalizadas de las pruebas de benchmark. Por ejemplo, la vía a los archivos de configuración o certificados de Kubernetes podría ser diferente de la ubicación estándar donde los benchmarks CIS en sentido ascendente los buscan.
Pero en los siguientes casos, puede ser necesaria una configuración o remediación personalizada:
-
Ubicaciones de archivos no estándar: Cuando los binarios de Kubernetes, los archivos de configuración o las rutas de certificados se desvían de los valores predeterminados del benchmark en sentido ascendente.
Ejemplo: A diferencia de Kubernetes tradicional, K3s agrupa los componentes del plano de control en un solo binario. Por lo tanto, la presencia y configuración del
--anonymous-authdebe verificarse en los registros de K3s (journalctl), no a través de comprobaciones de procesoskube-apiserver(ps). -
Mitigaciones de riesgo alternativas: Si una configuración no cumple con una verificación pero tiene un control compensatorio igualmente efectivo con justificación. O simplemente no está preocupada por el requisito de verificación debido a su diseño.
Ejemplo: Por defecto, K3s incrusta el servidor API dentro del proceso k3s. No existe un archivo de especificación del pod del servidor API, por lo que no es necesario verificar los permisos de dicho archivo.
1. Prepara el ConfigMap de la versión de benchmark personalizada
Para crear una versión de benchmark personalizada, primero necesitas crear un ConfigMap que contenga los archivos de configuración de la versión de benchmark y subirlo a tu clúster de Kubernetes donde deseas ejecutar el escaneo.
Para preparar un ConfigMap de versión de benchmark personalizada, supongamos que queremos añadir una versión de benchmark personalizada llamada foo.
-
Crea un directorio llamado
fooy dentro de este directorio, coloca todos los archivos de configuración YAML que la herramienta kube-bench busca. Por ejemplo, aquí están los archivos YAML de configuración para una versión de benchmark genérica CIS 1.5 https://github.com/aquasecurity/kube-bench/tree/master/cfg/cis-1.5 -
Coloca el archivo completo
config.yaml, que incluye todos los componentes que deben ser probados. -
Añade el nombre de la versión del Benchmark a la sección
target_mappingdelconfig.yaml:target_mapping: "foo": - "master" - "node" - "controlplane" - "etcd" - "policies" -
Sube este directorio a tu Clúster de Kubernetes creando un ConfigMap:
kubectl create configmap -n <namespace> foo --from-file=<path to directory foo>
2. Añade una versión de benchmark personalizada a un clúster
-
En la esquina superior izquierda, haz clic en ☰ > Gestión de Clústeres.
-
En la página Clústeres, ve al clúster donde deseas añadir un benchmark personalizado y haz clic en Explorar.
-
En la barra de navegación izquierda, haz clic en Cumplimiento > Versión de benchmark.
-
Haga clic en Crear.
-
Introduce el Nombre y una descripción para tu versión de benchmark personalizada.
-
Elige el proveedor del clúster al que se aplica tu versión de benchmark.
-
Elige el ConfigMap que has subido del menú desplegable.
-
Añade los límites de versión mínima y máxima de Kubernetes aplicables, si los hay.
-
Haga clic en Crear.
3. Crea un nuevo perfil para la versión de benchmark personalizada
Para ejecutar un escaneo utilizando tu versión de benchmark personalizada, necesitas añadir un nuevo Perfil que apunte a esta versión de benchmark.
-
En la esquina superior izquierda, haz clic en ☰ > Gestión de Clústeres.
-
En la página Clústeres, ve al clúster donde deseas añadir un benchmark personalizado y haz clic en Explorar.
-
En la barra de navegación izquierda, haz clic en Cumplimiento > Escaneo.
-
Haga clic en Crear.
-
Proporciona un Nombre y una descripción. En este ejemplo, lo llamamos
foo-profile. -
Elige la Versión del Benchmark del menú desplegable.
-
Haga clic en Crear.
4. Ejecuta un Escaneo Usando la Versión de Benchmark Personalizada
Una vez que se ha creado el nuevo perfil que apunta a tu versión de benchmark personalizada foo, puedes crear un nuevo escaneo para ejecutar las configuraciones de prueba personalizadas en la versión del benchmark.
Para ejecutar un escaneo,
-
En la esquina superior izquierda, haz clic en ☰ > Gestión de Clústeres.
-
En la página Clústeres, ve al clúster donde deseas añadir un benchmark personalizado y haz clic en Explorar.
-
En la barra de navegación izquierda, haz clic en .
-
Haga clic en Crear.
-
Elige el nuevo perfil de escaneo del clúster.
-
Haga clic en Crear.
Resultado: Se genera un informe con los resultados del escaneo. Para ver los resultados, haz clic en el nombre del escaneo que aparece.