Introduzione
L'applicazione di aggiornamenti di sicurezza per il kernel Linux è un processo semplice che può essere fatto utilizzando strumenti come apt
, yum
o kexec
. Tuttavia, quando si gestiscono centinaia o migliaia di server che eseguono diverse distribuzioni Linux da applicare alle patch, questo metodo può essere impegnativo e richiedere molto tempo.
L'aggiornamento manuale del kernel richiede il riavvio del sistema. Ciò si traduce in tempi di inattività, che possono essere problematici, quindi i riavvii sono solitamente programmati per verificarsi a intervalli di tempo specifici. Poiché l'applicazione manuale delle patch viene eseguita durante questi cicli, fornisce agli hacker una "finestra temporale" in cui possono attaccare l'infrastruttura del server.
Per le organizzazioni che eseguono più server, il live patching è un'opzione migliore. È un modo automatizzato per applicare patch a un kernel Linux mentre il server è in esecuzione, il che gli consente di essere più efficiente e più sicuro rispetto ai metodi manuali.
Questo articolo spiega come configurare gli aggiornamenti automatici del kernel senza riavvio utilizzando le soluzioni di patch in tempo reale di Canonical e CloudLinux.
Se desideri configurare gli aggiornamenti automatici del kernel su un server in remoto continua a leggere, altrimenti salta il primo paragrafo "Connessione al Server" e leggi il successivo.
Connessione al Server
Per accedere al server, è necessario conoscere l'indirizzo IP. Avrai anche bisogno dell'username e della password per l'autenticazione. Per connettersi al server come utente root digitare il seguente comando:
ssh root@IP_DEL_SERVER
Successivamente sarà necessario inserire la password dell'utente root.
Se non utilizzate l'utente root potete connettervi con un'altro nome utente utilizzando lo stesso comando, quindi modificare root con il vostro nome_utente:
ssh nome_utente@IP_DEL_SERVER
Successivamente vi verrà chiesto di inserire la password del vostro utente.
La porta standard per connettersi tramite ssh è la 22, se il vostro server utilizza una porta diversa, sarà necessario specificarla utilizzando il parametro -p, quindi digitare il seguente comando:
ssh nome_utente@IP_DEL_SERVER -p PORTA
Canonical Livepatch
Canonical Livepatch è un servizio che aggiorna il kernel in esecuzione senza dover riavviare il sistema Ubuntu. Il servizio Livepatch è gratuito, fino a tre sistemi Ubuntu. Per utilizzare questo servizio su più di tre sistemi, dovrai abbonarti al programma Ubuntu Advantage.
Prima di installare il servizio, è necessario ottenere un token livepatch dal sito del servizio Livepatch.
Una volta ottenuto il token, installa il servizio con snap e abilitalo eseguendo i questi due comandi:
sudo snap install canonical-livepatch
sudo canonical-livepatch enable <your-key>
Per controllare lo stato del servizio, esegui:
sudo canonical-livepatch status --verbose
In seguito, se desideri annullare la registrazione di una macchina, utilizza questo comando:
sudo canonical-livepatch disable <your-key>
Le stesse istruzioni si applicano per Ubuntu 20.04 LTS e Ubuntu 18.04 LTS.
KernelCare
KernelCare è un'ottima opzione per provider di hosting e aziende.
KernelCare funziona su Ubuntu, CentOS, Debian e altre versioni popolari di Linux. Verifica la disponibilità di patch ogni 4 ore e le installa automaticamente. Le patch possono essere ripristinate. KernelCare è gratuito per le organizzazioni senza scopo di lucro.
Per installare KernelCare eseguire lo script di installazione:
wget -qq -O - https://kernelcare.com/installer | bash
Se stai utilizzando una licenza basata su IP, non è necessario fare nient'altro. Altrimenti, se stai utilizzando una licenza basata su chiave, esegui il seguente comando per registrare il servizio:
/usr/bin/kcarectl --register <your-key>
Il parametro <your-key>
è la stringa del codice chiave di registrazione fornita quando ti registri per la versione di prova o acquisti il prodotto. Puoi ottenerlo su questa pagina.
Di seguito sono riportati alcuni utili comandi KernelCare.
Per verificare se il kernel in esecuzione è supportato da KernelCare dare il seguente comando:
curl -s -L https://kernelcare.com/checker | python
Per annullare la registrazione di un server:
sudo kcarectl --unregister
Per controllare lo stato del servizio:
sudo kcarectl --info
Il software verificherà automaticamente la presenza di nuove patch ogni 4 ore. Per aggiornare manualmente, esegui:
/usr/bin/kcarectl --update
Conclusione
La tecnologia Live Patching consente di applicare patch al kernel Linux senza dover riavviare il sistema.