Cet article décrit comment surveiller l'intégrité du démarrage des instances de VM protégées pour lesquelles la surveillance de l'intégrité est activée à l'aide de Cloud Monitoring. Il explique également comment identifier la cause d'un échec de validation de l'intégrité et comment mettre à jour la règle d'intégrité de référence.
Surveiller l'intégrité du processus de démarrage de la VM à l'aide de Cloud Monitoring
Servez-vous de Cloud Monitoring pour afficher les événements de validation d'intégrité et définir des alertes sur ces événements, ainsi que de Cloud Logging pour consulter les informations sur ces événements.
Afficher les événements de validation d'intégrité
Pour afficher les métriques d'une ressource surveillée à l'aide de l'explorateur de métriques, procédez comme suit :
-
Dans la console Google Cloud, accédez à la page leaderboardExplorateur de métriques :
Accéder à l'explorateur de métriques
Si vous utilisez la barre de recherche pour trouver cette page, sélectionnez le résultat dont le sous-titre est Monitoring.
- Dans l'élément Métrique, développez le menu Sélectionner une métrique, saisissez
Boot Validation
dans la barre de filtre, puis utilisez les sous-menus pour sélectionner un type de ressource et des métriques spécifiques :- Dans le menu Ressources actives, sélectionnez Instance de VM.
- Dans le menu Catégories de métriques actives, sélectionnez Instance.
- Dans le menu Métriques actives, sélectionnez Validation d'amorçage ou Validation de démarrage tardif.
- Validation de l'amorçage : indique l'état de réussite/échec concernant la partie d'amorçage de la dernière séquence de démarrage. L'amorçage représente la séquence de démarrage entre le lancement du micrologiciel UEFI et la prise de contrôle du bootloader.
- Validation du démarrage tardif : indique l'état de réussite/échec concernant la partie de démarrage tardif de la dernière séquence de démarrage. Le démarrage tardif représente la séquence de démarrage, de l'exécution du bootloader jusqu'à la fin du démarrage. Elle inclut le chargement du noyau du système d'exploitation.
- Cliquez sur Appliquer.
Pour supprimer des séries temporelles de l'affichage, utilisez l'élément Filtre.
Pour combiner des séries temporelles, utilisez les menus de l'élément Agrégation. Par exemple, pour afficher l'utilisation du processeur pour vos VM en fonction de leur zone, définissez le premier menu sur Moyenne et le second sur zone.
Toutes les séries temporelles sont affichées lorsque le premier menu de l'élément Agrégation est défini sur Non agrégé. Les paramètres par défaut de l'élément Aggregation (Agrégation) sont déterminés par le type de métrique que vous avez sélectionné.
- Pour le quota et les autres métriques qui indiquent un échantillon par jour, procédez comme suit :
- Dans le volet Affichage, définissez le type de widget sur Graphique à barres empilées.
- Définissez la période sur au moins une semaine.
Définir des alertes sur les événements de validation d'intégrité
Définissez des alertes sur les valeurs des métriques Validation d'amorçage et Validation de démarrage tardif si vous souhaitez être averti en cas d'échec de la validation du démarrage sur votre instance de VM. Pour en savoir plus sur la configuration des alertes, consultez la section Présentation des alertes.
Pour en savoir plus sur les paramètres des règles d'alerte de validation d'amorçage, consultez la pageValidation d'amorçage Computing Engine.
Pour connaître les paramètres des règles d'alerte de validation de démarrage tardif, consultez la page Validation de démarrage tardif Compute Engine.
Afficher les informations sur l'événement de validation d'intégrité
- Accéder à la page "Instances de VM"
- Cliquez sur l'ID de l'instance pour ouvrir la page Informations sur l'instance de VM.
- Sous Journaux, cliquez sur Cloud Logging.
- Recherchez l'entrée de journal
earlyBootReportEvent
oulateBootReportEvent
que vous souhaitez examiner. - Développez l'entrée de journal >
jsonPayload
>earlyBootReportEvent
oulateBootReportEvent
, selon le cas. Dans cette section, l'élémentpolicyEvaluationPassed
indique si la vérification de la section de la séquence de démarrage à partir de la règle d'intégrité de référence a réussi ou non. - Développez la section
actualMeasurements
et les éléments numérotés pour afficher les valeurs du registre de configuration de plate-forme (PCR, Platform Configuration Register) enregistrées dans la dernière séquence de démarrage. Les valeurs du PCR sont enregistrées dans les élémentsvalue
des éléments numérotés. Les valeurs du PCR identifient les composants de démarrage et l'ordre de chargement des composants utilisés par la dernière séquence de démarrage. Elles sont comparées à la règle d'intégrité de référence pour déterminer si la séquence de démarrage de l'instance de VM a été modifiée. Pour en savoir plus sur les PCR, consultez la section Événements de surveillance de l'intégrité. - Développez la section
policyMeasurements
pour afficher les valeurs du PCR enregistrées pour la règle d'intégrité de référence.
Automatiser les réponses aux événements de validation d'intégrité
Pour automatiser les réponses aux événements de validation de démarrage, exportez les journaux Cloud Logging et traitez-les dans un autre service tel que Cloud Functions. Pour en savoir plus, consultez les pages Présentation du routage et du stockage et Automatiser les réponses aux échecs de validation d'intégrité.
Déterminer la cause de l'échec de la validation d'intégrité du démarrage
- Accéder à la page "Instances de VM"
- Cliquez sur l'ID de l'instance pour ouvrir la page Informations sur l'instance de VM.
- Sous Journaux, cliquez sur Cloud Logging.
- Recherchez les entrées de journal
earlyBootReportEvent
etlateBootReportEvent
les plus récentes pour voir celles dont la valeurpolicyEvaluationPassed
est définie sur false. - Développez l'entrée de journal >
jsonPayload
>earlyBootReportEvent
oulateBootReportEvent
, selon le cas. - Développez les sections
actualMeasurements
etpolicyMeasurements
ainsi que les éléments numérotés pour afficher les valeurs du registre de configuration de plate-forme (PCR) respectivement enregistrées dans la dernière séquence de démarrage et la règle d'intégrité de référence. Les valeurs du PCR identifient les composants de démarrage et l'ordre de chargement des composants utilisés par la dernière séquence de démarrage et la règle d'intégrité de référence. Comparez les valeurs du PCR figurant dans les sections
actualMeasurements
etpolicyMeasurements
pour identifier l'écart entre la dernière séquence de démarrage et la règle d'intégrité de référence. Quel que soit le résultat de la comparaison, le problème à l'origine de l'échec de la validation est dû à des valeurs différentes. Sachez que les numéros des éléments figurant dans ces sections correspondent rarement aux numéros du PCR et que des éléments portant des numéros similaires dans les sectionsactualMeasurements
etpolicyMeasurements
peuvent représenter différents PCR. Par exemple, dans la séquence de démarrage précoce de Windows et Linux, l'élément3
de la sectionactualMeasurements
et l'élément2
de la sectionpolicyMeasurements
représentent tous les deux PCR7.Consultez Événements de surveillance de l'intégrité pour déterminer ce que représente le PCR modifié et savoir s'il s'agit d'un changement prévu.
Mettre à jour la règle d'intégrité de référence
La règle d'intégrité de référence initiale est issue de l'image de démarrage implicitement approuvée lors de la création de l'instance. La mise à jour de la référence entraîne la modification de la règle d'intégrité de référence à l'aide de la configuration d'instance actuelle. L'instance de VM doit être en cours d'exécution lorsque vous mettez à jour la référence.
Vous devez mettre à jour la référence après toute modification spécifique au démarrage planifié dans la configuration de l'instance, comme les mises à jour du noyau ou l'installation du pilote du noyau. Sinon, la validation d'intégrité risque d'échouer. En cas d'échec inattendu de la validation d'intégrité, vous devez rechercher la cause de l'échec et vous préparer à arrêter l'instance si nécessaire.
Vous devez disposer de l'autorisation setShieldedInstanceIntegrityPolicy
pour pouvoir mettre à jour la règle d'intégrité de référence.
Pour mettre à jour la règle d'intégrité de référence, procédez comme suit :
gcloud
Mettez à jour la règle d'intégrité de référence de l'instance de VM à l'aide de la commande compute instances update
avec l'option --shielded-learn-integrity-policy
.
Dans l'exemple suivant, la règle d'intégrité de référence est réinitialisée pour l'instance de VM my-instance :
gcloud compute instances update my-instance \ --shielded-learn-integrity-policy
API
Mettez à jour la règle d'intégrité de référence de l'instance de VM à l'aide de l'élément de corps de la requête updateAutoLearnPolicy
avec la méthode setShieldedInstanceIntegrityPolicy
.
Dans l'exemple suivant, la règle d'intégrité de référence est réinitialisée pour une instance de VM.
PATCH https://compute.googleapis.com/compute/alpha/projects/my-project/zones/us-central1-b/instances/my-instance/setShieldedInstanceIntegrityPolicy?key={YOUR_API_KEY} { "updateAutoLearnPolicy": true }
Étape suivante
- Découvrez les fonctionnalités de sécurité offertes par les VM protégées.
- Apprenez-en plus sur la modification des options sur une instance de VM protégée.
- Découvrez une approche permettant d'automatiser les réponses aux événements de surveillance de l'intégrité.