Vai al contenuto

Impostazioni cookie

Scelga per ogni tipo quali cookie consente. Può modificare la sua scelta in qualsiasi momento tramite Impostazioni cookie in fondo a ogni pagina. Informativa sulla privacy

Necessari

Sempre attivi

Servono per accedere, conservare il carrello e ricordare le sue scelte. Sono sempre attivi.

Quali cookie?
  • weboke_sessie, weboke_klant, weboke_remember: la sua sessione e la permanenza dell'accesso
  • weboke_basket: il suo carrello
  • wkBtwIncl: visualizzazione dei prezzi con o senza IVA
  • wok_cookies: la sua scelta sui cookie, 12 mesi

Misurano quale annuncio porta a una visita o a un ordine, così non paghiamo annunci che non funzionano.

Quali cookie?
  • Google Ads tramite Google Tag Manager (_gcl_au, _gcl_aw), fino a 90 giorni
  • OpenAI Ads, annunci in ChatGPT
  • wok_aff: tramite quale partner è arrivato da noi (programma di affiliazione), 60 giorni

4,6

Paese e lingua

Ogni paese ha il suo sito, con i prezzi e l'IVA di quel paese.

Vedi

Aggiornamenti automatici

Modulo 4: Software e aggiornamenti · Tempo di lettura: 10 minuti

Obiettivo della lezione: Al termine di questa lezione Lei sarà in grado di attivare e verificare gli aggiornamenti di sicurezza automatici, saprà che cosa avviene automaticamente e che cosa no, e saprà quando è necessario un riavvio.

Concetti chiave: unattended-upgrades, 20auto-upgrades, 50unattended-upgrades, Origins-Pattern e Allowed-Origins, timer apt-daily, needrestart, /var/run/reboot-required, Automatic-Reboot, aggiornamento del kernel, dnf-automatic

Perché in automatico?

Le falle di sicurezza vengono scoperte, corrette e poi sfruttate attivamente, spesso nel giro di pochi giorni. Un server che Lei aggiorna una volta al mese resta quindi esposto, in media per settimane, a vulnerabilità note. Il NCSC olandese annovera l'installazione tempestiva degli aggiornamenti tra i principi di base della resilienza digitale: "Aggiornare e applicare le patch al software in modo tempestivo aiuta a risolvere rapidamente le vulnerabilità."

Eppure anche "tutto in automatico" non è la soluzione giusta. Una nuova versione di un programma può comportarsi diversamente dalla precedente, e un server che si riavvia da solo nel pieno della giornata può creare disagi ai Suoi visitatori. La via di mezzo più diffusa su Debian e Ubuntu è:

  • aggiornamenti di sicurezza automatici, ogni giorno;
  • altri aggiornamenti e upgrade di release a mano, in un momento scelto da Lei, con uno snapshot prima;
  • riavvii pianificati, in un momento tranquillo, e controllati.

Il programma che si occupa di tutto questo si chiama unattended-upgrades.

Attivare unattended-upgrades

Su Ubuntu Server unattended-upgrades è installato di serie e gli aggiornamenti di sicurezza automatici sono attivi subito dopo l'installazione. Su Debian è presente anche in molte installazioni e immagini, ma non sempre. Verifichi e attivi:

anna@web1:~$ sudo apt install unattended-upgrades
anna@web1:~$ sudo dpkg-reconfigure -plow unattended-upgrades

Il secondo comando chiede "Automatically download and install stable updates?" (scaricare e installare automaticamente gli aggiornamenti stabili?). Scelga Yes. In questo modo viene scritto il file /etc/apt/apt.conf.d/20auto-upgrades:

APT::Periodic::Update-Package-Lists "1";
APT::Periodic::Unattended-Upgrade "1";

Il valore 1 significa: ogni giorno. Con 0 lo disattiva. Il lavoro vero e proprio viene avviato da due timer di systemd (lezione 6.3), che può visualizzare così:

anna@web1:~$ systemctl list-timers 'apt*'
NEXT                        LEFT     LAST                        PASSED  UNIT                    ACTIVATES
Tue 2026-11-10 06:24:11 CET 9h left  Mon 2026-11-09 06:41:03 CET 14h ago apt-daily-upgrade.timer apt-daily-upgrade.service
Tue 2026-11-10 08:02:47 CET 11h left Mon 2026-11-09 19:12:30 CET 1h ago  apt-daily.timer         apt-daily.service

apt-daily scarica gli elenchi (come apt update), apt-daily-upgrade installa gli aggiornamenti. Gli orari hanno una distribuzione casuale, in modo che non tutti i server del mondo carichino contemporaneamente i repository dei pacchetti.

Che cosa viene installato automaticamente?

Lo trova in /etc/apt/apt.conf.d/50unattended-upgrades. Su Debian il blocco si chiama Unattended-Upgrade::Origins-Pattern, su Ubuntu Unattended-Upgrade::Allowed-Origins. Per impostazione predefinita sono attivi il repository di sicurezza e il repository stabile della Sua release, mentre il repository -updates è disattivato. Su Ubuntu appare così:

Unattended-Upgrade::Allowed-Origins {
        "${distro_id}:${distro_codename}";
        "${distro_id}:${distro_codename}-security";
        "${distro_id}ESMApps:${distro_codename}-apps-security";
        "${distro_id}ESM:${distro_codename}-infra-security";
//      "${distro_id}:${distro_codename}-updates";
//      "${distro_id}:${distro_codename}-proposed";
//      "${distro_id}:${distro_codename}-backports";
};

Le righe precedute da // sono disattivate. Per un primo server lasci tutto com'è. Non modifichi direttamente il file, perché una versione successiva del pacchetto potrebbe volerlo sostituire. Debian consiglia di inserire le proprie modifiche in un file separato, per esempio /etc/apt/apt.conf.d/52unattended-upgrades-local; i file successivi hanno la precedenza su quelli precedenti.

I pacchetti provenienti da repository aggiuntivi (Docker, Caddy, PostgreSQL dello sviluppatore) per impostazione predefinita non vengono aggiornati automaticamente. Si tratta di una scelta consapevole: li segue Lei stesso (lezione 9.4), oppure aggiunge a mano il repository all'elenco se si fida dello sviluppatore e conosce le conseguenze.

Alcune impostazioni che spesso conviene usare:

// /etc/apt/apt.conf.d/52unattended-upgrades-local
Unattended-Upgrade::Mail "root";
Unattended-Upgrade::MailReport "only-on-error";
Unattended-Upgrade::Remove-Unused-Kernel-Packages "true";
Unattended-Upgrade::Automatic-Reboot "false";

Mail funziona solo se il server è in grado di inviare e-mail (un piccolo relay, lezione 8.3). Se non è possibile, salti questa impostazione e usi il monitoraggio della lezione 8.3.

Verificare che funzioni

Un automatismo che si ferma senza avvisare è più pericoloso di nessun automatismo, perché Lei crede di essere al sicuro. Verifichi quindi tre cose.

1. Una prova a vuoto. Mostra che cosa accadrebbe, senza modificare nulla:

anna@web1:~$ sudo unattended-upgrade --dry-run --debug
...
Allowed origins are: origin=Debian,codename=trixie,label=Debian, origin=Debian,codename=trixie-security,label=Debian-Security, ...
Packages that will be upgraded: libssl3t64 openssh-server

2. Il log. Ogni esecuzione scrive in /var/log/unattended-upgrades/unattended-upgrades.log:

anna@web1:~$ sudo tail -n 5 /var/log/unattended-upgrades/unattended-upgrades.log
2026-11-09 06:41:15,201 INFO Packages that will be upgraded: openssh-server
2026-11-09 06:41:15,202 INFO Writing dpkg log to /var/log/unattended-upgrades/unattended-upgrades-dpkg.log
2026-11-09 06:41:29,874 INFO All upgrades installed

3. Che cosa resta in sospeso. Dopo una notte, apt list --upgradable (lezione 4.1) non dovrebbe più mostrare pacchetti provenienti da -security. Se restano lì per diversi giorni di fila, qualcosa non va: un disco pieno, un blocco causato da un apt manuale rimasto bloccato, oppure un pacchetto che pone una domanda.

Riavviare: servizi e kernel

Un programma aggiornato sul disco non equivale ancora a un programma aggiornato in memoria. Se OpenSSH è in esecuzione da tre settimane, continua a eseguire il vecchio codice finché il servizio non viene riavviato.

  • Servizi: dopo un aggiornamento il programma needrestart controlla quali servizi usano ancora librerie vecchie. Su Ubuntu 24.04 e versioni successive unattended-upgrades riavvia di serie quei servizi tramite needrestart. Su Debian needrestart è un pacchetto separato (apt install needrestart) che Le chiede in modo interattivo quali servizi riavviare.
  • Il kernel: un nuovo kernel entra in funzione solo dopo il riavvio dell'intero server. In quel caso Debian e Ubuntu creano il file /var/run/reboot-required:
anna@web1:~$ cat /var/run/reboot-required
*** System restart required ***
anna@web1:~$ cat /var/run/reboot-required.pkgs
linux-image-6.12.57+deb13-amd64

Ha due possibilità. Può riavviare Lei stesso, per esempio ogni settimana in un momento fisso dopo aver controllato se il file è presente. Oppure può lasciare che se ne occupi unattended-upgrades:

Unattended-Upgrade::Automatic-Reboot "true";
Unattended-Upgrade::Automatic-Reboot-Time "04:30";

Il valore predefinito è false. Lo attivi solo se è certo che dopo un riavvio tutto torni su da solo: servizi con enable (lezione 6.1), container con una policy restart: (lezione 9.3) e un monitoraggio che La avvisi in caso contrario (lezione 8.3). Lo provi prima una volta a mano: sudo reboot, e controlli che tutto torni attivo.

Tramite Ubuntu Pro, Ubuntu offre anche Livepatch, che applica alcune correzioni del kernel senza riavvio. È un'integrazione, non un sostituto: anche con Livepatch è necessario riavviare di tanto in tanto.

Che cosa non fare in automatico

  • Upgrade di release (da Debian 12 a 13, da Ubuntu 24.04 a 26.04): sempre a mano, con un piano (lezione 4.3).
  • Versioni principali delle Sue applicazioni (una nuova versione principale di un database, di un CMS): sempre a mano, dopo un backup e dopo aver letto le note di rilascio.
  • Container: unattended-upgrades non li aggiorna. Un'immagine del 2024 resta l'immagine del 2024 finché Lei non esegue docker compose pull (lezione 9.4).

Su AlmaLinux e Rocky Linux

Qui lo strumento si chiama dnf-automatic. Si installa con dnf install dnf-automatic. In /etc/dnf/automatic.conf imposta upgrade_type = security e apply_updates = yes, e attiva il timer con systemctl enable --now dnf-automatic.timer. Sui sistemi derivati da RHEL un riavvio per il kernel è necessario quanto su Debian; dnf needs-restarting -r indica se è il caso.

In pratica

Da WebOké un VPS funziona come altrove: ciò che viene aggiornato all'interno del server lo gestisce Lei. Il provider aggiorna l'hardware e la piattaforma di virtualizzazione, non il Suo sistema operativo. Prima di un grande aggiornamento manuale crei uno snapshot nel pannello del Suo provider; per gli aggiornamenti di sicurezza automatici quotidiani non è necessario.

Riepilogo

  • Attivi gli aggiornamenti di sicurezza automatici con unattended-upgrades (Ubuntu: attivi di serie; Debian: verificare con dpkg-reconfigure -plow unattended-upgrades).
  • Per impostazione predefinita vengono aggiornati automaticamente solo il repository di sicurezza e il repository stabile della release; i repository aggiuntivi no.
  • Verifichi con una prova a vuoto, il log in /var/log/unattended-upgrades/ e apt list --upgradable.
  • Dopo un aggiornamento i servizi devono essere riavviati (needrestart), il kernel richiede un riavvio del server (/var/run/reboot-required).
  • Upgrade di release, versioni principali delle applicazioni e container si aggiornano a mano.

Quiz

1. Ha attivato unattended-upgrades. Una settimana dopo apt list --upgradable mostra ancora un aggiornamento da trixie-security. Che cosa fa per prima cosa?



2. Dopo un aggiornamento di OpenSSL, il Suo server web e il server SSH girano ancora con la vecchia libreria in memoria. Che cosa risolve il problema?



3. Perché i pacchetti provenienti da un repository aggiuntivo (per esempio quello di Docker) per impostazione predefinita non vengono aggiornati automaticamente?



4. Quando è ragionevole attivare Automatic-Reboot "true"?



5. Dove inserisce le Sue impostazioni personali per unattended-upgrades?



Esercizio

Esercizio O4.2: Attivare e verificare gli aggiornamenti automatici. Sul Suo server attivi unattended-upgrades (o verifichi che sia attivo), esegua una prova a vuoto ed esamini il log e i timer. Compili la checklist e risponda: quali repository vengono aggiornati automaticamente sul Suo server, quando è stata eseguita l'ultima volta, c'è al momento un riavvio in sospeso, e come intende riavviare (Lei stesso in un momento fisso oppure in automatico, e perché)?

Esercizio O4.2: Attivare e verificare gli aggiornamenti automatici

Questo esercizio lo svolge da sé; nessuno lo verifica. Spunti ciò che ha fatto e segni l'esercizio come completato.





Le Sue spunte e note restano solo in questo browser; non le inviamo da nessuna parte. Se ha effettuato l'accesso, conserviamo in I miei corsi solo il fatto che ha svolto l'esercizio.

Per approfondire

Un momento…

Configuri i suoi domini

Per ogni dominio imposti i nameserver, il collegamento al suo hosting e chi ne diventa l'intestatario.

Caricamento dei suoi domini…