Kernel Live Patching sur Amazon Linux 2 - Amazon Elastic Compute Cloud

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Kernel Live Patching sur Amazon Linux 2

Grâce à Kernel Live Patching pour Amazon Linux 2, vous pouvez appliquer des correctifs de vulnérabilité de sécurité et de bogues critiques à un noyau Linux en cours d'exécution, sans redémarrer ni interrompre les applications en cours d'exécution. Vous bénéficiez d'une meilleure disponibilité des services et des applications, tout en gardant votre infrastructure sécurisée et à jour.

Pour plus d'informations sur Kernel Live Patching pour AL2023, consultez la section Kernel Live Patching sur AL2023 dans le Guide de l'utilisateur AL2023.

AWS publie deux types de correctifs dynamiques du noyau pour Amazon Linux 2 :

  • Mises à jour de sécurité : incluent des mises à jour pour les failles et vulnérabilités communes (CVE) Linux. Ces mises à jour sont généralement jugées importantes ou critiques à l’aide des évaluations Amazon Linux de sécurité. Elles correspondent généralement à un score CVSS (Common Vulnerability Scoring System) égal à 7 ou plus. Dans certains cas, AWS peut fournir des mises à jour avant qu'un CVE ne soit attribué. Dans ces cas, les correctifs peuvent apparaître comme des correctifs de bogues.

  • Corrections de bugs – Inclut des correctifs pour les bogues critiques et les problèmes de stabilité qui ne sont pas associés aux CVE.

AWS fournit des correctifs dynamiques du noyau pour une version du noyau Amazon Linux 2 jusqu'à 3 mois après sa sortie. Après la période de 3 mois, vous devez effectuer une mise à jour vers une version ultérieure du noyau pour continuer à recevoir les correctifs à chaud du noyau.

Les correctifs Kernel Live Patching pour Amazon Linux 2 sont disponibles sous forme de paquets RPM signés dans les référentiels Amazon Linux 2 existants. Les correctifs peuvent être installés sur des instances individuelles à l'aide des flux de travail yum existants, ou ils peuvent être installés sur un groupe d'instances gérées à l'aide de AWS Systems Manager.

Kernel Live Patching sur Amazon Linux 2 est fourni sans frais supplémentaires.

Configurations et conditions préalables prises en charge

Les correctifs Kernel Live Patching sont pris en charge sur les instances Amazon EC2 et les machines virtuelles locales exécutant Amazon Linux 2.

Pour utiliser Kernel Live Patching sur Amazon Linux 2, vous devez utiliser :

  • Version 4.14 ou 5.10 du noyau sur l’architecture x86_64

  • Version 5.10 du noyau sur l’architecture ARM64

Exigences des politiques

Pour télécharger des packages à partir des référentiels Amazon Linux, Amazon Elastic Compute Cloud doit avoir accès aux compartiments Amazon S3 appartenant au service. Si vous utilisez un point de terminaison Amazon Virtual Private Cloud (VPC) pour Amazon S3 dans votre environnement, vous devez vous assurer que votre politique de point de terminaison d’un VPC autorise l’accès à ces compartiments publics.

Le tableau décrit chacun des compartiments Amazon S3 auxquels EC2 pourrait avoir besoin d’accéder pour le Kernel Live Patching.

ARN de compartiment S3 Description
arn:aws:s3:::packages.region.amazonaws.com/*

Compartiment Amazon S3 contenant des packages d’AMI Amazon Linux

arn:aws:s3:::repo.region.amazonaws.com/*

Compartiment Amazon S3 contenant des référentiels d’AMI Amazon Linux

arn:aws:s3:::amazonlinux.region.amazonaws.com/*

Compartiment Amazon S3 contenant des référentiels Amazon Linux 2

arn:aws:s3:::amazonlinux-2-repos-region/*

Compartiment Amazon S3 contenant des référentiels Amazon Linux 2

La politique suivante illustre comment restreindre l’accès aux identités et aux ressources qui appartiennent à votre organisation et fournir l’accès aux compartiments Amazon S3 requis pour le Kernel Live Patching. Remplacez la région principal-org-idet resource-org-idpar les valeurs de votre organisation.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowRequestsByOrgsIdentitiesToOrgsResources", "Effect": "Allow", "Principal": { "AWS": "*" }, "Action": "*", "Resource": "*", "Condition": { "StringEquals": { "aws:PrincipalOrgID": "principal-org-id", "aws:ResourceOrgID": "resource-org-id" } } }, { "Sid": "AllowAccessToAmazonLinuxAMIRepositories", "Effect": "Allow", "Principal": { "AWS": "*" }, "Action": [ "s3:GetObject" ], "Resource": [ "arn:aws:s3:::packages.region.amazonaws.com/*", "arn:aws:s3:::repo.region.amazonaws.com/*", "arn:aws:s3:::amazonlinux.region.amazonaws.com/*", "arn:aws:s3:::amazonlinux-2-repos-region/*" ] } ] }

Utiliser l’application Kernel Live Patching

Vous pouvez activer et utiliser Kernel Live Patching sur des instances individuelles à l'aide de la ligne de commande de l'instance elle-même, ou vous pouvez activer et utiliser Kernel Live Patching sur un groupe d'instances gérées à l'aide de AWS Systems Manager.

Les sections suivantes expliquent comment activer et utiliser Kernel Live Patching sur des instances individuelles à l’aide de la ligne de commande.

Pour plus d’informations sur l’activation et l’utilisation de Kernel Live Patching sur un groupe d’instances gérées, consultez Utilisation de Kernel Live Patching sur les instances Amazon Linux 2 dans le AWS Systems Manager Guide de l’utilisateur.

Activer Kernel Live Patching

Kernel Live Patching est désactivé par défaut sur Amazon Linux 2. Pour utiliser l’application Kernel Live Patching, vous devez installer le plug-in yum pour Kernel Live Patching et activer la fonctionnalité Kernel Live Patching.

Prérequis

Kernel Live Patching nécessite binutils. Si vous n’avez pas binutils installé, installez-le à l’aide de la commande suivante :

$ sudo yum install binutils
Pour activer Kernel Live Patching
  1. Les correctifs Kernel Live Patching sont disponibles pour les versions suivantes du noyau Amazon Linux 2 :

    • Version 4.14 ou 5.10 du noyau sur l’architecture x86_64

    • Version 5.10 du noyau sur l’architecture ARM64

    Pour vérifier la version de votre noyau, exécutez la commande suivante.

    $ sudo yum list kernel
  2. Si vous avez déjà une version du noyau prise en charge, ignorez cette étape. Si vous ne disposez pas d’une version du noyau prise en charge, exécutez les commandes suivantes pour mettre à jour le noyau vers la dernière version et pour redémarrer l’instance.

    $ sudo yum install -y kernel
    $ sudo reboot
  3. Installez le plugin yum pour Kernel Live Patching.

    $ sudo yum install -y yum-plugin-kernel-livepatch
  4. Activez le plugin yum pour Kernel Live Patching.

    $ sudo yum kernel-livepatch enable -y

    Cette commande installe également la dernière version du RPM du correctif à chaud du noyau à partir des référentiels configurés.

  5. Pour confirmer que le plugin yum pour Kernel Live Patching a bien été installé, exécutez la commande suivante.

    $ rpm -qa | grep kernel-livepatch

    Lorsque vous activez Kernel Live Patching, un RPM vide du correctif à chaud du noyau est automatiquement appliqué. Si Kernel Live Patching a été activé avec succès, cette commande renvoie une liste qui inclut le RPM vide initial du correctif à chaud du noyau. Voici un exemple de sortie.

    yum-plugin-kernel-livepatch-1.0-0.11.amzn2.noarch kernel-livepatch-5.10.102-99.473-1.0-0.amzn2.x86_64
  6. Installez le package kpatch.

    $ sudo yum install -y kpatch-runtime
  7. Mettez à jour le service kpatch s’il a été installé précédemment.

    $ sudo yum update kpatch-runtime
  8. Démarrez le service kpatch. Ce service charge tous les correctifs à chaud du noyau lors de l’initialisation ou au démarrage.

    $ sudo systemctl enable kpatch.service
  9. Activez la rubrique Kernel Live Patching dans la bibliothèque Extras Amazon Linux 2. Cette rubrique contient les correctifs à chaud du noyau.

    $ sudo amazon-linux-extras enable livepatch

Afficher les correctifs à chaud du noyau disponibles

Les alertes de sécurité Amazon Linux sont publiées dans le Centre de sécurité Amazon Linux. Pour plus d’informations sur les alertes de sécurité Amazon Linux 2, qui incluent les alertes pour les correctifs à chaud du noyau, consultez le Centre de sécurité Amazon Linux. Les correctifs Kernel Live sont préfixés avec ALASLIVEPATCH. Le Centre de sécurité Amazon Linux peut ne pas répertorier les correctifs à chaud du noyau qui corrigent les bogues.

Vous pouvez également découvrir les correctifs à chaud du noyau disponibles pour les avis et les CVE à l’aide de la ligne de commande.

Pour répertorier tous les correctifs à chaud du noyau disponibles pour les avis

Utilisez la commande suivante.

$ yum updateinfo list

Voici un exemple de sortie.

Loaded plugins: extras_suggestions, kernel-livepatch, langpacks, priorities, update-motd ALAS2LIVEPATCH-2020-002 important/Sec. kernel-livepatch-5.10.102-99.473-1.0-3.amzn2.x86_64 ALAS2LIVEPATCH-2020-005 medium/Sec. kernel-livepatch-5.10.102-99.473-1.0-4.amzn2.x86_64 updateinfo list done
Pour répertorier tous les correctifs à chaud du noyau disponibles pour les CVE

Utilisez la commande suivante.

$ yum updateinfo list cves

Voici un exemple de sortie.

Loaded plugins: extras_suggestions, kernel-livepatch, langpacks, priorities, update-motdamzn2-core/2/x86_64 | 2.4 kB 00:00:00 CVE-2019-15918 important/Sec. kernel-livepatch-5.10.102-99.473-1.0-3.amzn2.x86_64 CVE-2019-20096 important/Sec. kernel-livepatch-5.10.102-99.473-1.0-3.amzn2.x86_64 CVE-2020-8648 medium/Sec. kernel-livepatch-5.10.102-99.473-1.0-4.amzn2.x86_64 updateinfo list done

Appliquer des correctifs à chaud du noyau

Vous appliquez les correctifs à chaud du noyau en utilisant le gestionnaire de paquets yum de la même manière que vous appliquez les mises à jour régulières. Le plugin yum pour noyau Live Patching gère les correctifs à chaud du noyau qui doivent être appliqués et élimine le besoin de redémarrer.

Astuce

Nous vous recommandons de mettre à jour votre noyau régulièrement à l’aide de Kernel Live Patching pour vous assurer qu’il reste sécurisé et à jour.

Vous pouvez choisir d’appliquer un correctif à chaud du noyau spécifique ou d’appliquer tous les correctifs à chaud du noyau disponibles avec vos mises à jour de sécurité régulières.

Pour appliquer un correctif à chaud du noyau spécifique
  1. Obtenez la version du correctif à chaud du noyau à l’aide de l’une des commandes décrites à la section Afficher les correctifs à chaud du noyau disponibles.

  2. Appliquez le correctif à chaud du noyau pour votre noyau Amazon Linux 2.

    $ sudo yum install kernel-livepatch-kernel_version.x86_64

    Par exemple, la commande suivante applique un correctif à chaud du noyau pour la version du noyau Amazon Linux 2 5.10.102-99.473.

    $ sudo yum install kernel-livepatch-5.10.102-99.473-1.0-4.amzn2.x86_64
Pour appliquer les correctifs à chaud du noyau disponibles avec vos mises à jour de sécurité régulières

Utilisez la commande suivante.

$ sudo yum update --security

Omettre l’option --securityd’inclure les corrections de bogues.

Important
  • La version du noyau n’est pas mise à jour après l’application des correctifs à chaud du noyau. La version est mise à jour vers la nouvelle version seulement après le redémarrage de l’instance.

  • Un noyau Amazon Linux 2 reçoit des correctifs à chaud du noyau pendant une période de trois mois. Une fois la période de trois mois écoulée, aucun nouveau correctif à chaud du noyau n’est publié pour cette version du noyau. Pour continuer à recevoir les correctifs à chaud du noyau après la période de trois mois, vous devez redémarrer l’instance pour passer à la nouvelle version du noyau, qui continuera ensuite à recevoir les correctifs à chaud du noyau pendant les trois prochains mois. Pour vérifier la fenêtre de support de votre version du noyau, exécutez yum kernel-livepatch supported.

Afficher les correctifs à chaud du noyau appliqués

Pour afficher les correctifs à chaud du noyau appliqués

Utilisez la commande suivante.

$ kpatch list

La commande renvoie une liste des correctifs à chaud du noyau des mise à jour de sécurité chargés et installés. Voici un exemple de sortie.

Loaded patch modules: livepatch_cifs_lease_buffer_len [enabled] livepatch_CVE_2019_20096 [enabled] livepatch_CVE_2020_8648 [enabled] Installed patch modules: livepatch_cifs_lease_buffer_len (5.10.102-99.473.amzn2.x86_64) livepatch_CVE_2019_20096 (5.10.102-99.473.amzn2.x86_64) livepatch_CVE_2020_8648 (5.10.102-99.473.amzn2.x86_64)
Note

Un seul correctif à chaud du noyau peut inclure et installer plusieurs correctifs à chaud.

Désactiver Kernel Live Patching

Si vous n’avez plus besoin d’utiliser Kernel Live Patching, vous pouvez le désactiver à tout moment.

Pour désactiver Kernel Live Patching
  1. Supprimez les packages RPM pour les correctifs à chaud du noyau appliqués.

    $ sudo yum kernel-livepatch disable
  2. Désinstallez le plugin yum pour Kernel Live Patching.

    $ sudo yum remove yum-plugin-kernel-livepatch
  3. Redémarrez l’instance.

    $ sudo reboot

Limites

Kernel Live Patching présente les limitations suivantes :

  • Lorsque vous appliquez un correctif dynamique du noyau, vous ne pouvez pas effectuer d'hibernation, utiliser des outils de débogage avancés (tels que SystemTap des outils basés sur kprobes et EBPF) ou accéder aux fichiers de sortie ftrace utilisés par l'infrastructure Kernel Live Patching.

Questions fréquentes (FAQ)

Pour les questions fréquemment posées sur Kernel Live Patching pour Amazon Linux 2, consultez la questions fréquentes (FAQ) sur Amazon Linux 2 Kernel Live Patching.