Canonical Livepatch patch di sicurezza senza riavvio
Bentornati nel nuovo episodio della saga relativa al patching del kernel Linux senza la necessità di riavviare il sistema per applicare gli aggiornamenti. In questo episodio vedremo Canonical Livepatch ossia la soluzione ideata per Ubuntu che, a differenza delle altre, è gratuita fino a 3 sistemi Ubuntu.
Il fatto che essa sia gratuita permette, a chiunque possieda un computer con Ubuntu o un server con Ubuntu, di usare la tecnologia al prezzo di un’iscrizione sul sito di Canonical.
Come Kernelcare, Livepatch applica solo patch di sicurezza e non di funzionalità, queste ultime vanno installate tramite la solita procedura (es. apt upgrade) e riavvio del sistema.
Livepatch è installabile a partire da Ubuntu 14.04 fino all’ultima versione. In questo tutorial installeremo Livepatch su un server con Ubuntu 18.04 Bionic Beaver.
Per ottenere una chiave di attivazione di Livepatch basta collegarsi al sito https://ubuntu.com/livepatch, registrarsi e ottenere il proprio codice.
La prima cosa da fare sul sistema, invece, è aggiornare i metadati dei pacchetti e installare le patch del sistema.
sudo apt update && sudo apt upgrade
Poi è necessario installare snap (snapd):
sudo apt install snapd
Quindi è possibile procedere con la semplicissima installazione del pacchetto canonical-livepatch
come mostrato dalla guida e poi l’abilitazione con la chiave.
sudo snap install canonical-livepatch
sudo canonical-livepatch enable afd6b**********************
Lanciato il comando di attivazione comparirà un token identificativo.
Prima di applicare le patch di sicurezza del kernel si può utilizzare il comando per capire lo stato del sistema:
sudo canonical-livepatch status
Che può restituire un output simile:
Nello screenshot precedente, si nota come il kernel instalato sia 4.15.0-72.81-generic mentre il patchState è nothing-to-apply, il che significa che il nostro kernel è già all’ultima versione con le ultime patch di sicurezza disponibili.
Ogni volta che ci colleghiamo al server, è possibile vedere nel banner iniziale alcune statistiche relative a Livepatch, che in questo caso ricordano che Livepatch è abilitato e le patch sono tutte applicate.
In questo altro sistema dopo aver installato Livepatch, abbiamo riscontrato che ci sono delle patch di sicurezza del kernel da applicare.
Solitamente per applicare le patch non bisogna fare nulla, perchè si arrangia il deamon canonical-livepatchd ad installare le patch in autonomia, in alternativa è sufficiente lanciare il seguente comando:
sudo canonical-livepatch refresh
Tuttavia nel caso dello screenshot è necessario procedere all’installazione di un nuovo kernel: non tramite livepatch ma tramite il solito dist-upgrade o apt upgrade (e riavvio). Questo perchè il patchState è kernel-upgrade-required, come si può notare nello screenshot sopra.
sudo apt update
sudo apt dist-upgrade
sudo reboot
Invece nel caso sotto proposto, Livepatch ha applicato automaticamente delle patch di sicurezza: