Ce document explique comment activer et désactiver les options de VM protégée sur une instance de VM. Pour savoir quelles images sont compatibles avec les fonctionnalités de VM protégée, consultez la page Fonctionnalités de sécurité des images de système d'exploitation.
Présentation
Sur une instance de VM protégée, Compute Engine active par défaut les options de vTPM (Virtual Trusted Platform Module) et de surveillance de l'intégrité. Si vous désactivez le module vTPM, Compute Engine désactive la surveillance de l'intégrité, car elle repose sur les données collectées par le démarrage mesuré.
Compute Engine n'active pas le démarrage sécurisé par défaut, car les pilotes non signés et les autres logiciels de bas niveau peuvent être incompatibles. Le démarrage sécurisé vous permet de vous assurer que le système n'exécute que des logiciels authentiques. Il vérifie pour cela la signature de tous les composants de démarrage et interrompt le processus de démarrage si cette vérification échoue. Cela permet d'éviter que des logiciels malveillants de corruption du noyau, tels que des rootkits ou des bootkits, ne persistent lors des redémarrages de VM. Google recommande d'activer le démarrage sécurisé si vous pouvez vous assurer que cette option n'empêche pas le démarrage d'une VM de test représentative et qu'elle est adaptée à votre charge de travail.
Limites
Même si les instances de VM Compute Engine sont compatibles avec le démarrage sécurisé, il est possible qu'une image chargée sur une VM Compute Engine ne le soit pas. Notamment, bien que la plupart des distributions Linux soient compatibles avec le démarrage sécurisé sur les images x86 récentes, il n'est pas toujours pris en charge par défaut sur ARM64. De nombreuses images Linux sont configurées pour refuser de charger les builds non signés de modules de noyau hors arborescence lorsque le démarrage sécurisé est activé. Cela concerne le plus souvent les pilotes de GPU, mais également certains outils de surveillance de la sécurité qui nécessitent des modules du noyau.
Autorisations requises pour cette tâche
Pour effectuer cette tâche, vous devez disposer des autorisations suivantes :
compute.instances.updateShieldedInstanceConfig
sur l'instance de VM
Modifier les options de la VM protégée sur une instance de VM
Pour modifier les options de VM protégée, procédez comme suit :
Console
Dans la console Google Cloud, accédez à la page Instances de VM.
Cliquez sur le nom de l'instance pour ouvrir la page Informations sur l'instance de VM.
Cliquez sur Arrêter.
Une fois l'instance arrêtée, cliquez sur Modifier.
Dans la section VM protégée, modifiez les options de VM protégée :
Activez l'option Activer le démarrage sécurisé. Compute Engine n'active pas le démarrage sécurisé par défaut, car les pilotes non signés et les autres logiciels de bas niveau peuvent être incompatibles. Nous vous recommandons d'activer le démarrage sécurisé si possible.
Désactivez l'option Activer vTPM pour désactiver le module vTPM (Virtual Trusted Platform Module). Par défaut, Compute Engine active le module vTPM (Virtual Trusted Platform Module).
Désactivez l'option Activer la surveillance de l'intégrité. Par défaut, Compute Engine active la surveillance de l'intégrité.
Cliquez sur Enregistrer.
Cliquez sur Démarrer pour démarrer l'instance.
gcloud
Arrêtez l'instance :
gcloud compute instances stop VM_NAME
Remplacez
VM_NAME
par le nom de la VM à arrêter.Mettez à jour les options de VM protégée :
gcloud compute instances update VM_NAME \ [--[no-]shielded-secure-boot] \ [--[no-]shielded-vtpm] \ [--[no-]shielded-integrity-monitoring]
Remplacez
VM_NAME
par le nom de la VM sur laquelle vous souhaitez mettre à jour les options de VM protégée.shielded-secure-boot
: Compute Engine n'active pas le démarrage sécurisé par défaut, car les pilotes non signés et les autres logiciels de bas niveau peuvent être incompatibles. Nous vous recommandons d'activer le démarrage sécurisé si possible.- Activez le démarrage sécurisé à l'aide de l'option
--shielded-secure-boot
(recommandé). - Désactivez le démarrage sécurisé à l'aide de
--no-shielded-secure-boot
.
shielded-vtpm
: le module vTPM (Virtual Trusted Platform Module) est activé par défaut. Utilisez--shielded-vtpm
pour l'activer (par défaut). Utilisez l'option--no-shielded-vtpm
pour le désactiver.shielded-integrity-monitoring
: la surveillance de l'intégrité est activée par défaut. Utilisez--shielded-integrity-monitoring
pour l'activer (par défaut). Utilisez l'option--no-shielded-integrity-monitoring
pour la désactiver.- Activez le démarrage sécurisé à l'aide de l'option
Démarrez l'instance :
gcloud compute instances start VM_NAME
Remplacez
VM_NAME
par le nom de la VM à démarrer.
API
Arrêtez l'instance :
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/stop
Remplacez les éléments suivants :
PROJECT_ID
: projet contenant la VM à arrêter.ZONE
: zone contenant la VM à arrêter.VM_NAME
: VM à arrêter.
Utilisez
instances.updateShieldedInstanceConfig
pour activer ou désactiver les options de VM protégée sur l'instance :PATCH https://compute.googleapis.com/compute/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/updateShieldedInstanceConfig { "enableSecureBoot": {true|false}, "enableVtpm": {true|false}, "enableIntegrityMonitoring": {true|false} }
Remplacez les éléments suivants :
PROJECT_ID
: projet contenant la VM sur laquelle activer ou désactiver les options de VM protégée.ZONE
: zone contenant la VM sur laquelle activer ou désactiver les options de VM protégée.VM_NAME
: VM sur laquelle activer ou désactiver les options de VM protégée.
enableSecureBoot
: Compute Engine n'active pas le démarrage sécurisé par défaut, car les pilotes non signés et les autres logiciels de bas niveau peuvent être incompatibles. Nous vous recommandons d'activer le démarrage sécurisé si possible.enableVtpm
: Compute Engine active le module vTPM (Virtual Trusted Platform Module) par défaut.enableIntegrityMonitoring
: Compute Engine active la surveillance de l'intégrité par défaut.Démarrez l'instance :
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/start
Remplacez les éléments suivants :
PROJECT_ID
: projet contenant la VM à démarrer.ZONE
: zone contenant la VM à démarrer.VM_NAME
: VM à démarrer.
Étape suivante
- Découvrez les fonctionnalités de sécurité offertes par les VM protégées.
- Apprenez-en plus sur la surveillance de l'intégrité sur une instance de VM protégée.