Aggiornamenti di sicurezza delle patch per i nodi ibridi - Amazon EKS

Contribuisci a migliorare questa pagina

Per contribuire a questa guida per l’utente, seleziona il link Edit this page on GitHub che si trova nel riquadro destro di ogni pagina.

Aggiornamenti di sicurezza delle patch per i nodi ibridi

Questo argomento descrive la procedura per eseguire l’applicazione sul posto delle patch degli aggiornamenti di sicurezza per pacchetti e dipendenze specifici in esecuzione sui nodi ibridi. Come best practice, ti consigliamo di aggiornare regolarmente i nodi ibridi per ricevere CVE e patch di sicurezza.

Per i passaggi per aggiornare la versione di Kubernetes, consulta Aggiornamento dei nodi ibridi per il tuo cluster.

Un esempio di software che potrebbe richiedere l’applicazione di patch di sicurezza è containerd.

Containerd

containerd è il runtime standard del container Kubernetes e la dipendenza principale per EKS Hybrid Nodes. Viene utilizzato per gestire il ciclo di vita dei container, inclusa l’estrazione delle immagini e la gestione dell’esecuzione dei container. Su un nodo ibrido, puoi installare containerd tramite la CLI nodeadm o manualmente. A seconda del sistema operativo del nodo, nodeadm installerà containerd dal pacchetto distribuito dal sistema operativo o dal pacchetto Docker.

Una volta pubblicato un CVE in containerd, hai le seguenti opzioni per eseguire l’aggiornamento alla versione con patch di containerd sui tuoi nodi ibridi.

Passaggio 1: controlla se la patch è stata pubblicata sui gestori di pacchetti

Puoi verificare se la patch CVE containerd è stata pubblicata su ogni rispettivo gestore di pacchetti del sistema operativo facendo riferimento ai corrispondenti bollettini sulla sicurezza:

Se utilizzi il repository Docker come fonte di containerd, puoi controllare gli annunci di sicurezza del Docker per identificare la disponibilità della versione con patch nel repository di Docker.

Passaggio 2: scegli il metodo per installare la patch

Esistono tre metodi per applicare le patch e installare gli aggiornamenti di sicurezza sui nodi. Il metodo che puoi utilizzare dipende dal fatto che la patch sia disponibile o meno nel sistema operativo nel gestore di pacchetti:

  1. Per installare le patch con nodeadm upgrade pubblicate nei gestori di pacchetti, consulta Step 2 a.

  2. Per installare direttamente le patch con i gestori di pacchetti, consulta Step 2 b.

  3. Per installare patch personalizzate che non sono pubblicate nei gestori di pacchetti. Nota che ci sono considerazioni speciali per le patch personalizzate per containerd, Step 2 c.

Passaggio 2 a: applicazione delle patch con nodeadm upgrade

Dopo aver confermato che la patch CVE containerd è stata pubblicata nel sistema operativo o nei repository di Docker (Apt o RPM), puoi utilizzare il comando nodeadm upgrade per eseguire l’aggiornamento alla versione più recente di containerd. Poiché non si tratta di un aggiornamento della versione di Kubernetes, devi passare alla versione corrente di Kubernetes al comando nodeadm upgrade.

nodeadm upgrade K8S_VERSION --config-source file:///root/nodeConfig.yaml

Passaggio 2 b: applicazione di patch con i gestori di pacchetti del sistema operativo

In alternativa puoi eseguire l’aggiornamento anche tramite il rispettivo gestore di pacchetti e utilizzarlo per aggiornare il pacchetto containerd come segue.

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

Passaggio 2 c: patch CVE Containerd non pubblicata nei gestori di pacchetti

Se la containerd versione con patch è disponibile solo con altri mezzi anziché nel gestore di pacchetti, ad esempio nelle versioni di GitHub, puoi installare containerd dal sito ufficiale di GitHub.

  1. Se il computer è già entrato a far parte del cluster come nodo ibrido, devi eseguire il comando nodeadm uninstall.

  2. Installa i binari ufficiali containerd. Puoi utilizzare le fasi di installazione ufficiali su GitHub.

  3. Esegui il comando nodeadm install con l’argomento --containerd-source impostato su none, che salterà l’installazione di containerd fino a nodeadm. Puoi utilizzare il valore di none nella sorgente containerd per qualsiasi sistema operativo in esecuzione sul nodo.

    nodeadm install K8S_VERSION --credential-provider CREDS_PROVIDER --containerd-source none