Aidez à améliorer cette page
Pour contribuer à ce guide de l’utilisateur, cliquez sur le lien Modifier cette page sur GitHub qui se trouve dans le volet droit de chaque page.
Mises à jour de sécurité pour les nœuds hybrides
Cette rubrique décrit la procédure à suivre pour appliquer des correctifs de sécurité à des packages et dépendances spécifiques s’exécutant sur vos nœuds hybrides. Nous vous recommandons de mettre régulièrement à jour vos nœuds hybrides afin de recevoir les CVE et les correctifs de sécurité.
Pour connaître les étapes à suivre pour mettre à niveau la version de Kubernetes, consultez Mettre à niveau les nœuds hybrides pour votre cluster.
Un exemple de logiciel pouvant nécessiter un correctif de sécurité est containerd.
Containerd
containerd est l’exécution de conteneur Kubernetes standard et la dépendance principale pour les nœuds hybrides EKS, utilisée pour gérer le cycle de vie des conteneurs, y compris le téléchargement d’images et la gestion de l’exécution des conteneurs. Sur un nœud hybride, vous pouvez installer containerd via l’interface CLI nodeadm ou manuellement. En fonction du système d’exploitation de votre nœud, nodeadm installera containerd à partir du paquet distribué par le système d’exploitation ou du paquet Docker.
Lorsqu’un CVE dans containerd a été publié, vous disposez des options suivantes pour passer à la version corrigée de containerd sur vos nœuds hybrides.
Étape 1 : vérifier si le correctif a été publié dans les gestionnaires de paquets
Vous pouvez vérifier si le correctif CVE containerd a été publié pour chaque gestionnaire de paquets OS en consultant les bulletins de sécurité correspondants :
Si vous utilisez le dépôt Docker comme source de containerd, vous pouvez consulter les annonces de sécurité Docker
Étape 2 : choisir la méthode d’installation du correctif
Il existe trois méthodes pour corriger et installer les mises à niveau de sécurité sur place sur les nœuds. La méthode que vous pouvez utiliser dépend de la disponibilité du correctif dans le gestionnaire de paquets du système d’exploitation :
-
Installez les correctifs avec
nodeadm upgradequi sont publiés dans les gestionnaires de paquets, voir Étape 2a. -
Installez les correctifs directement à l’aide des gestionnaires de paquets, voir Étape 2b.
-
Installez des correctifs personnalisés qui ne sont pas publiés dans les gestionnaires de paquets. Veuillez noter qu’il existe des considérations particulières pour les correctifs personnalisés pour
containerd, Étape 2c.
Étape 2a : application d’un correctif avec nodeadm upgrade
Après avoir vérifié que le correctif CVE containerd a été publié dans les référentiels OS ou Docker (Apt ou RPM), vous pouvez utiliser la commande nodeadm upgrade pour passer à la dernière version de containerd. Comme il ne s’agit pas d’une mise à niveau de la version Kubernetes, vous devez indiquer votre version Kubernetes actuelle dans la commande de mise à niveau nodeadm.
nodeadm upgradeK8S_VERSION--config-source file:///root/nodeConfig.yaml
Étape 2b : application de correctifs à l’aide des gestionnaires de paquets du système d’exploitation
Vous pouvez également effectuer la mise à jour via le gestionnaire de paquets correspondant et l’utiliser pour mettre à niveau le paquet containerd comme suit.
Amazon Linux 2023
sudo yum update -y sudo yum install -y containerd
RHEL
sudo yum install -y yum-utils sudo yum-config-manager --add-repo https://download.docker.com/linux/rhel/docker-ce.repo sudo yum update -y sudo yum install -y containerd
Ubuntu
sudo mkdir -p /etc/apt/keyrings sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc echo \ "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \ $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}") stable" | \ sudo tee /etc/apt/sources.list.d/docker.list > /dev/null sudo apt update -y sudo apt install -y --only-upgrade containerd.io
Étape 2c : correctif CVE Containerd non publié dans les gestionnaires de paquets
Si la version corrigée containerd n’est disponible que par d’autres moyens que le gestionnaire de paquets, par exemple dans les versions GitHub, vous pouvez installer containerd à partir du site officiel GitHub.
-
Si la machine a déjà rejoint le cluster en tant que nœud hybride, vous devez alors exécuter la commande
nodeadm uninstall. -
Installez les binaires officiels
containerd. Vous pouvez suivre les étapes d’installation officiellessur GitHub. -
Exécutez la commande
nodeadm installavec l’argument--containerd-sourcedéfini surnone, ce qui ignorera l’installationcontainerdvianodeadm. Vous pouvez utiliser la valeur denonedans la sourcecontainerdpour tout système d’exploitation exécuté par le nœud.nodeadm installK8S_VERSION--credential-providerCREDS_PROVIDER--containerd-source none