Mantenere attivi gli aggiornamenti di sicurezza di Debian 12 su un server senza interfaccia grafica.

Per un server Debian 12 senza interfaccia grafica, installa systemd unattended-upgrades, abilita l'aggiornamento giornaliero dell'elenco dei pacchetti e le impostazioni di aggiornamento automatico di APT e mantieni l'elenco di pacchetti consentiti predefinito per security-origin. Quindi verifica i timer e i log di systemd tramite SSH. Questo automatizza gli aggiornamenti dei pacchetti idonei; non esegue un aggiornamento a una versione principale di Debian né garantisce che ogni applicazione non necessiti di ulteriori interventi.

Terminale SSH che mostra l'esecuzione di apt update seguita dall'installazione di unattended-upgrades su Debian.
Aggiorna i metadati APT e installa il pacchetto unattended-upgrades tramite una sessione SSH.

1. Installa l'aggiornamento e conferma la versione

Connettiti con un account che possa utilizzare sudo. Verifica la versione del server e aggiorna il suo indice dei pacchetti prima dell'installazione:

cat /etc/debian_version
sudo apt update
sudo apt install unattended-upgrades

Questa procedura è destinata a Debian 12 (Bookworm) e utilizza i suoi repository APT standard. Esamina il piano di installazione dei pacchetti prima di accettarlo. Se APT segnala errori relativi a repository, DNS, spazio su disco o dipendenze, risolvili prima; un'operazione automatica non può correggere un'origine di pacchetti danneggiata o un filesystem non integro.

2. Attiva gli aggiornamenti giornalieri e gli aggiornamenti di sicurezza

Imposta le opzioni periodiche di APT in un file locale dedicato. Questo consente l'aggiornamento giornaliero dell'elenco dei pacchetti e l'esecuzione automatica degli aggiornamenti:

sudo nano /etc/apt/apt.conf.d/20auto-upgrades
Nano editor che mostra le due impostazioni periodiche di APT in 20 auto-upgrades
La configurazione APT locale consente aggiornamenti giornalieri dell'elenco dei pacchetti e aggiornamenti automatici.

Inserisci e salva queste due righe:

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

In Nano, premi Ctrl+O, Invio, quindi Ctrl+X. Il valore 1significa ogni giorno. La configurazione dei pacchetti di APT unattended-upgradescontrolla quali origini di archivio possono essere installate. Su una configurazione standard di Debian 12, /etc/apt/apt.conf.d/50unattended-upgradesinizialmente lascia invariato; la sua lista di autorizzazione predefinita è pensata per selezionare gli aggiornamenti di sicurezza di Debian e i relativi aggiornamenti configurati di Debian. Non aggiungere repository di terze parti o l'intero Bookworm solo per far sembrare più occupato l'output dello stato. Se estendi deliberatamente la lista di autorizzazione, rivedi le origini esatte, testale e monitora il servizio come faresti con qualsiasi altra modifica in produzione.

3. Mantenere il riavvio automatico sotto il controllo dell'amministratore

Per un server gestito da remoto, verificare i criteri di riavvio in 50unattended-upgrades:

grep -n 'Automatic-Reboot' /etc/apt/apt.conf.d/50unattended-upgrades

Non abilitare il riavvio automatico a meno che tu non abbia pianificato un'interruzione del servizio, verificato il ripristino delle applicazioni e disponga di un percorso di ripristino fuori banda o da console affidabile. Gli aggiornamenti di sicurezza di Debian possono installare un nuovo kernel o librerie che richiedono un riavvio per avere effetto, ma gli aggiornamenti automatici non sostituiscono una politica di riavvio o un piano di reperibilità. Con il riavvio automatico disabilitato, pianifica una finestra di manutenzione regolare e verifica se è necessario un riavvio dopo gli aggiornamenti.

Illustrazione del terminale dell'output di debug di una simulazione di aggiornamento automatico, che elenca un piano di pacchetti simulato.
Una simulazione può rivelare le origini configurate e i pacchetti candidati senza installarli; l'output visualizzato è a scopo puramente illustrativo.

4. Verifica la configurazione prima di farvi affidamento.

Esegui una simulazione tramite SSH. Il --dry-runflag non installa i pacchetti, mentre --debugfornisce maggiori dettagli nel log degli aggiornamenti automatici:

sudo unattended-upgrade --dry-run --debug

Leggere l'output per verificare le origini consentite e le azioni proposte per i pacchetti. Un messaggio che indica l'assenza di pacchetti da aggiornare può essere un buon segno, in quanto non vi sono aggiornamenti idonei in sospeso; tuttavia, non garantisce che il timer verrà eseguito in seguito. Se le origini consentite sono vuote o mancano inaspettatamente dei candidati, esaminare le sorgenti e 50unattended-upgradesi pattern APT della release prima di modificarli. Il manuale di Bookworm descrive questo comando come una simulazione, non come un'installazione.

5. Controllare i timer, il servizio e i registri

APT utilizza i timer di systemd per il suo lavoro quotidiano. Controlla sia i timer che il servizio di aggiornamento:

systemctl status apt-daily.timer apt-daily-upgrade.timer
systemctl list-timers 'apt-daily*'
systemctl status apt-daily-upgrade.service

I timer dovrebbero essere caricati e attivi e l'elenco dovrebbe mostrare la loro prossima esecuzione programmata. Se i timer sono installati ma inattivi, avviali e abilitali per gli avvii futuri:

sudo systemctl enable --now apt-daily.timer apt-daily-upgrade.timer

Un servizio può risultare inattivo tra un'esecuzione programmata e l'altra perché viene eseguito una sola volta; è preferibile esaminare il suo ultimo risultato piuttosto che aspettarsi che rimanga in esecuzione. Dopo un intervallo di tempo programmato, controllare il registro dei pacchetti e il journal di systemd:

Illustrazione del terminale che mostra lo stato attivo del timer apt-daily-upgrade e alcune righe di log di esempio relative agli aggiornamenti automatici.
Utilizzare lo stato del timer e il registro degli aggiornamenti automatici per confermare l'attività pianificata; le voci mostrate sono a scopo illustrativo.
sudo tail -n 50 /var/log/unattended-upgrades/unattended-upgrades.log
sudo tail -n 50 /var/log/unattended-upgrades/unattended-upgrades-dpkg.log
sudo journalctl -u apt-daily-upgrade.service --since "7 days ago"

Cerca un'esecuzione completata, le origini consentite e se i pacchetti sono stati installati o se non ce n'erano in sospeso. Indaga su ripetuti errori di download, pacchetti bloccati o errori di dpkg. Il manuale elenca questi percorsi di log e spiega che il servizio systemd esegue il backend unattended-upgrade.

Cosa questa configurazione può e non può confermare

Una configurazione funzionante significa che i timer sono attivi, le impostazioni APT periodiche sono abilitate e i log mostrano esecuzioni automatiche riuscite. Non dimostra che ogni pacchetto in ogni repository sia aggiornato, che una correzione dipendente dal riavvio sia già attiva o che un servizio sia rimasto integro dopo una modifica del pacchetto. Il processo di aggiornamento delle release di Debian rimane un'operazione pianificata separatamente; gli aggiornamenti automatici servono per gli aggiornamenti dei pacchetti all'interno delle sorgenti configurate. Per i server critici, è necessario aggiungere il monitoraggio delle esecuzioni non riuscite, mantenere i backup, testare le modifiche in un ambiente rappresentativo e definire una finestra di riavvio verificata manualmente.

Questi passaggi seguono il manuale di aggiornamento automatico di Debian Bookworm , la guida agli aggiornamenti periodici di Debian e il manuale di Bookworm systemd.timer . Il manuale di Bookworm identifica la versione del pacchetto Debian come 2.9.1+nmu3; le versioni dei pacchetti possono cambiare con gli aggiornamenti di Debian.

Lascia un commento

Attivare l'esecuzione automatica di Nextcloud Cron con un timer Systemd

Controlla la modalità cron di Nextcloud, ripara il servizio systemd e il timer e verifica che i processi in background vengano eseguiti dopo l'avvio e ogni cinque minuti.

Rimuovi l'avviso di blocco dei file di Nextcloud con Redis

Abilita il blocco affidabile dei file in Nextcloud, scegli il backend Redis o Valkey più adatto e verifica che l'avviso scompaia senza rischiare modifiche simultanee ai file.

Cosa serve per ottenere una valutazione di sicurezza A+ da Nextcloud

Cosa serve per ottenere una valutazione di sicurezza A+ da Nextcloud

Risolvi i problemi più comuni riscontrati durante le scansioni di Nextcloud con gli aggiornamenti più recenti, HTTPS e HSTS, una configurazione precisa del proxy inverso e verifiche rispetto al server pubblico.

Abilita la crittografia lato server di Nextcloud con un impatto misurabile

Configura Nextcloud SSE per lo spazio di archiviazione che lo richiede, proteggi le chiavi di crittografia e misura l'impatto sul trasferimento dati e sulla CPU prima di crittografare i file esistenti.

Aggiungi la ricerca full-text di Elasticsearch a Nextcloud

Collega la ricerca file di Nextcloud a Elasticsearch, indicizza il contenuto dei documenti e scegli una configurazione adatta alle esigenze del tuo server e della tua sicurezza.

Imposta una politica di scadenza affidabile per i file eliminati da Nextcloud.

Imposta una politica di scadenza affidabile per i file eliminati da Nextcloud.

Configura Nextcloud per rimuovere i file eliminati dopo un periodo di conservazione definito, pianifica in modo affidabile le attività in background ed evita i comandi che svuotano il cestino di tutti gli utenti.

Risolvi l'avviso di Nextcloud relativo agli indici del database mancanti.

Risolvi l'avviso di Nextcloud relativo agli indici del database mancanti.

Esegui in modo sicuro la riparazione OCC di Nextcloud, visualizza in anteprima le modifiche al database e verifica il motivo per cui l'avviso potrebbe persistere.

Aumentare il limite di caricamento web di Nextcloud oltre i 2 GB

Aumentare il limite di caricamento web di Nextcloud oltre i 2 GB

Consenti il ​​caricamento di file di dimensioni maggiori nel browser Nextcloud allineando le impostazioni di PHP, Nginx o Apache, dello spazio di archiviazione temporaneo e del timeout, e verifica quale limite sta bloccando il file.

Rimuovi l'avviso di memoria PHP di Nextcloud sul server web

Imposta il limite di memoria PHP effettivamente utilizzato da Nextcloud, riavvia il servizio corretto e conferma l'impostazione di 512 MB nella Panoramica di amministrazione.

Collega un bucket compatibile con S3 allo storage esterno di Nextcloud.

Monta un bucket di object storage compatibile in Nextcloud utilizzando il suo backend S3, con l'endpoint, le credenziali, l'ambito di accesso e i passaggi di verifica corretti.