En este documento se describe cómo habilitar e inhabilitar las opciones de VM blindada en una instancia de VM. Para ver qué imágenes admiten las funciones de VM blindada, consulta Funciones de seguridad de imágenes de SO.
Información general
En una instancia de VM blindada, Compute Engine habilita de forma predeterminada las opciones Módulo de plataforma segura virtual (vTPM) y Monitorización de integridad. Si inhabilitas el vTPM, Compute Engine inhabilita la monitorización de integridad, ya que esta función se basa en los datos recogidos por Measured Boot.
Compute Engine no habilita Arranque seguro de forma predeterminada porque es posible que los controladores sin firma y otro software de nivel inferior no sean compatibles. El arranque seguro ayuda a asegurar que el sistema solo ejecute software original. Para ello, verifica la firma de todos los componentes del arranque y detiene el proceso si se produce algún error en dicha verificación. Esto ayuda a evitar que se mantengan formas de malware del kernel, como rootkits o bootkits, después de reiniciar la VM. Google recomienda habilitar el arranque seguro si puedes asegurarte de que no impide que se inicie una VM de prueba representativa y si es adecuado para tu carga de trabajo.
Limitaciones
Aunque las instancias de VM de Compute Engine admiten el arranque seguro, es posible que una imagen cargada en una VM de Compute Engine no lo haga. Aunque la mayoría de las distribuciones de Linux admiten el arranque seguro en imágenes x86 recientes, no siempre se admite de forma predeterminada en ARM64. Muchas imágenes de Linux están configuradas para rechazar la carga de compilaciones sin firmar de módulos del kernel fuera del árbol cuando la función Arranque seguro está habilitada. Esto suele afectar a los controladores de GPU, pero también a veces a las herramientas de monitorización de seguridad que requieren módulos del kernel.
Permisos que se necesitan para completar esta tarea
Para realizar esta tarea, debes tener los siguientes permisos:
compute.instances.updateShieldedInstanceConfig
en la instancia de VM
Modificar las opciones de VM blindada en una instancia de máquina virtual
Sigue este procedimiento para modificar las opciones de VM blindada:
Consola
En la consola de Google Cloud , ve a la página Instancias de VM.
Haz clic en el nombre de la instancia para abrir la página Detalles de la instancia de VM.
Haz clic en
Detener para detener la VM. Si no aparece la opción Detener, haz clic en Más acciones > Detener.Cuando la instancia se detenga, haz clic en Editar.
En la sección VM blindada, modifica las opciones de VM blindada:
Marca la opción Activar el arranque seguro. En Compute Engine, el arranque seguro no se habilita de forma predeterminada porque es posible que los controladores sin firma y otro software de nivel inferior no sean compatibles. Si es posible, Google recomienda habilitar el arranque seguro.
Activa la opción Activa el vTPM para inhabilitar el módulo de plataforma segura virtual (vTPM). De forma predeterminada, Compute Engine habilita el módulo de plataforma segura virtual (vTPM).
Activa Activa la monitorización de integridad para inhabilitar la monitorización de integridad. De forma predeterminada, Compute Engine habilita la monitorización de la integridad.
Haz clic en Guardar.
Haz clic en Iniciar para iniciar la instancia.
gcloud
Detén la instancia:
gcloud compute instances stop VM_NAME
Sustituye
VM_NAME
por el nombre de la VM que quieras detener.Actualiza las opciones de VM blindada:
gcloud compute instances update VM_NAME \ [--[no-]shielded-secure-boot] \ [--[no-]shielded-vtpm] \ [--[no-]shielded-integrity-monitoring]
Sustituye
VM_NAME
por el nombre de la VM en la que quieras actualizar las opciones de VM blindada.shielded-secure-boot
: Compute Engine no habilita Arranque seguro de forma predeterminada porque los controladores sin firma y otro software de nivel inferior podrían no ser compatibles. Si es posible, Google recomienda habilitar el arranque seguro.- Habilita el arranque seguro con la marca
--shielded-secure-boot
(recomendado). - Inhabilita el arranque seguro con
--no-shielded-secure-boot
.
shielded-vtpm
: el módulo de plataforma segura virtual (vTPM) está habilitado de forma predeterminada. + Habilitar con--shielded-vtpm
(opción predeterminada) + Inhabilitar con la marca--no-shielded-vtpm
shielded-integrity-monitoring
: La monitorización de integridad está habilitada de forma predeterminada. + Habilitar con--shielded-integrity-monitoring
(opción predeterminada) + Inhabilitar con la marca--no-shielded-integrity-monitoring
.- Habilita el arranque seguro con la marca
Inicia la instancia:
gcloud compute instances start VM_NAME
Sustituye
VM_NAME
por el nombre de la VM que quieras iniciar.
REST
Detén la instancia:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/stop
Haz los cambios siguientes:
PROJECT_ID
: proyecto que contiene la VM que se va a detenerZONE
: zona que contiene la VM que se va a detenerVM_NAME
: la VM que se va a detener
Usa
instances.updateShieldedInstanceConfig
para habilitar o inhabilitar las opciones de VM blindada en la instancia:PATCH https://compute.googleapis.com/compute/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/updateShieldedInstanceConfig { "enableSecureBoot": {true|false}, "enableVtpm": {true|false}, "enableIntegrityMonitoring": {true|false} }
Haz los cambios siguientes:
PROJECT_ID
: el proyecto que contiene la VM en la que se van a habilitar o inhabilitar las opciones de VM blindada.ZONE
: la zona que contiene la VM en la que se van a habilitar o inhabilitar las opciones de VM blindada.VM_NAME
: la VM en la que se habilitarán o inhabilitarán las opciones de VM blindada.
enableSecureBoot
: Compute Engine no habilita Arranque seguro de forma predeterminada porque los controladores sin firma y otro software de nivel inferior podrían no ser compatibles. Si es posible, Google recomienda habilitar el arranque seguro.enableVtpm
: Compute Engine habilita el módulo de plataforma segura virtual (vTPM) de forma predeterminada.enableIntegrityMonitoring
: Compute Engine habilita la monitorización de la integridad de forma predeterminada.Inicia la instancia:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/start
Haz los cambios siguientes:
PROJECT_ID
: proyecto que contiene la VM que se va a iniciarZONE
: zona que contiene la VM que se va a iniciarVM_NAME
: VM que se va a iniciar
Siguientes pasos
- Consulta más información sobre las funciones de seguridad que ofrece la VM blindada.
- Consulta más información sobre cómo monitorizar la integridad de una instancia de VM blindada.