En esta página, se describe cómo garantizar que VM Manager esté habilitado en todas las instancias de Compute Engine, incluidas las VMs de Google Kubernetes Engine en una organización, carpeta o proyecto, con el Servicio de políticas de la organización.
Esta guía está destinada a los equipos de seguridad que desean asegurarse de que todos los programas necesarios, como los agentes de seguridad y supervisión, se ejecuten en todas las instancias de una organización, carpeta o proyecto. Para aplicar la configuración solo con la política de la organización, usa esta guía. Para un enfoque de configuración como código, usa Config Sync. El Sincronizador de configuración te permite configurar y controlar muchos aspectos de tus clústeres y proporciona valor más allá de las políticas de la organización.
Antes de leer esta página, asegúrate de estar familiarizado con el Administrador de VMs y las restricciones del Administrador de recursos.
En esta guía, se muestra cómo aplicar el uso de VM Manager en todos los proyectos de una organización o carpeta. En esta guía, no se muestra cómo configurar y usar VM Manager con políticas del SO. Para obtener esas instrucciones, consulta Crea una asignación de política del SO.
Acerca de VM Manager
VM Manager es un conjunto de herramientas que puede administrar sistemas operativos para flotas de máquina virtual (VM) grandes que ejecutan Windows y Linux en Compute Engine. Puedes usar VM Manager para aplicar políticas del SO y personalizar los programas que se ejecutan en las VMs. Por ejemplo, puedes definir una política para instalar un agente en un recurso y reutilizarla en varios recursos. VM Manager está inhabilitado de forma predeterminada en los proyectos deGoogle Cloud .
Puedes definir con mayor precisión dónde aplica VM Manager las políticas con OSPolicyAssignments
, que te permite definir el alcance de las políticas del SO para VMs específicas con selectores. Por ejemplo, todas las VMs de nodos de GKE tienen la etiqueta goog-gke-node
, a la que puedes segmentar con una asignación de política del SO.
Políticas de la organización y VM Manager
Si tu organización de Google Cloud tiene varios niveles de jerarquía, como carpetas y subcarpetas, habilitar VM Manager en todos estos proyectos de forma manual podría generar una sobrecarga administrativa innecesaria. Puedes requerir que todos los proyectos de las carpetas o de una organización habiliten VM Manager en todas las VMs mediante el servicio de políticas de la organización con la restricción constraints/compute.requireOsConfig
. Estos son algunos de los beneficios de
aplicar VM Manager con una política de la organización:
- Todos los proyectos nuevos agregan la etiqueta de metadatos
enable-osconfig=TRUE
a cada proyecto y VM. - Si alguien intenta quitar esta etiqueta o establecerla en un valor distinto de
true
, se rechazará ese cambio. - Si alguien intenta crear o actualizar una VM de manera que establezca la
clave de metadatos
enable-osconfig
en un valor distinto detrue
, se rechazará ese cambio.
Antes de comenzar
Antes de comenzar, asegúrate de haber realizado las siguientes tareas:
- Habilita la API de Google Kubernetes Engine. Habilitar la API de Google Kubernetes Engine
- Si deseas usar Google Cloud CLI para esta tarea, instala y, luego, inicializa gcloud CLI. Si ya instalaste gcloud CLI, ejecuta
gcloud components update
para obtener la versión más reciente.
- Asegúrate de que ya estés usando VM Manager con políticas del SO y asignaciones de políticas del SO para ejecutar agentes en tus VMs. Para obtener instrucciones, consulta Crea una asignación de política del SO.
-
Enable the Cloud Resource Manager API, OS Config API APIs.
Limitaciones
La política de la organización constraints/compute.requireOsConfig
tiene las siguientes
limitaciones:
- La nueva política de la organización no modifica los recursos con infracciones preexistentes. Puedes configurar los metadatos de la política de forma manual o con
gcloud
en recursos existentes. - Cualquier persona que tenga permiso para cambiar los metadatos en las instancias de Compute Engine
del proyecto puede inhabilitar
osconfig-agent
en la VM si configura el campo de metadatososconfig-disabled-features
. - Si
osconfig-agent
no se está ejecutando, la VM aparecerá como no conforme en el panel de VM Manager. Por ejemplo, esto puede ocurrir si un usuario inhabilitó el agente de forma manual.
Roles obligatorios
Para obtener los permisos que necesitas a fin de administrar las políticas de la organización, pídele a tu administrador que te otorgue el rol de IAM de administrador de políticas de la organización (roles/orgpolicy.policyAdmin
) en la organización.
Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.
También puedes obtener los permisos necesarios mediante roles personalizados o cualquier otro rol predefinido.
Habilita compute.requireOsConfig en toda una organización
Después de habilitar VM Manager y asignar un OSPolicyAssignment
a tus VMs, puedes asegurarte de que VM Manager esté habilitado de forma predeterminada en cualquier proyecto nuevo con la política de la organización constraints/compute.requireOsConfig
. La forma en que aplicas constraints/compute.requireOsConfig
depende de la versión de la API que uses.
API de Organization Policy v2
Puedes aplicar la restricción constraints/compute.requireOsConfig
en un recurso deGoogle Cloud , como una carpeta o una organización, con gcloud CLI o la consola de Google Cloud .
gcloud
Confirma que la restricción
compute.requireOsConfig
aún no se haya aplicado:gcloud org-policies describe \ constraints/compute.requireOsConfig \ --organization=ORGANIZATION_ID
Reemplaza
ORGANIZATION_ID
por el ID de tu organización.Si no se configura una política, este comando muestra un error
NOT_FOUND
:ERROR: (gcloud.org-policies.describe) NOT_FOUND: Requested entity was not found.
Si la política existe, el comando muestra la política actual. Si aplicas una política nueva, se reemplazará la política existente, si la hay.
Crea un archivo temporal
/tmp/policy.yaml
para almacenar la política:name: organizations/ORGANIZATION_ID/policies/constraints/compute.requireOsConfig spec: rules: - enforce: true
Ejecuta el comando
set-policy
:gcloud org-policies set-policy /tmp/policy.yaml
Confirma que se aplique la política nueva:
gcloud org-policies describe \ constraints/compute.requireOsConfig --effective \ --organization=ORGANIZATION_ID
El resultado del comando es similar al siguiente:
name: organizations/ORGANIZATION_ID/policies/constraints/compute.requireOsConfig spec: rules: - enforce: true
Console
En la consola de Google Cloud , ve a la página Políticas de la organización.
En el selector de proyectos, selecciona el proyecto, la organización o la carpeta para la que deseas editar las políticas de la organización.
En la página Políticas de la organización, usa el filtro para buscar
compute.requireOsConfig
.Haz clic en el nombre de la política para abrir la página Detalles de la política.
Haz clic en Administrar política para actualizar la política de la organización para este recurso.
En la página Editar política, selecciona Anular la política del elemento superior.
Selecciona Agregar una regla.
En Aplicación, cambia la aplicación de esta política de la organización a activada.
Para aplicar la política, haz clic en Establecer política.
API de Resource Manager v1
Confirma que la restricción
compute.requireOsConfig
aún no se haya aplicado:gcloud resource-manager org-policies describe constraints/compute.requireOsConfig \ --organization ORGANIZATION_ID
Reemplaza
ORGANIZATION_ID
por tu ID de organización.Si no se configuró una política, este comando muestra una política incompleta, como en el siguiente ejemplo:
constraint: "constraints/compute.requireOsConfig" etag: BwVJi0OOESU=
Si la política existe, el comando muestra la política actual. Si aplicas una política nueva, se reemplazará la política existente, si la hay.
Configura la política para que se aplique de forma forzosa en la organización:
gcloud resource-manager org-policies enable-enforce constraints/compute.requireOsConfig \ --organization ORGANIZATION_ID
El resultado del comando es similar al siguiente:
booleanPolicy: enforced: true constraint: constraints/compute.requireOsConfig etag: BwVJitxdiwY=
Confirma que se aplique la política nueva:
gcloud resource-manager org-policies describe constraints/compute.requireOsConfig \ --effective \ --organization ORGANIZATION_ID
El resultado del comando es similar al siguiente:
booleanPolicy: enforced: true constraint: constraints/compute.requireOsConfig
Los cambios en las políticas de la organización pueden tardar hasta 15 minutos en aplicarse por completo.
Para obtener más información sobre otras políticas que puedes aplicar o cómo modificarlas o borrarlas, consulta la documentación de Resource Manager.
¿Qué sigue?
Obtén más información sobre el registro de auditoría de GKE.