Installare gli aggiornamenti di sicurezza su una macchina ogni volta può risultare leggermente frustrante, specialmente se richiedono riavvio in un momento particolarmente importante in cui la macchina deve essere assolutamente accesa e funzionante. Per fortuna, per ovviare in parte a questo fastidio, Ubuntu e Debian possono essere configurate per installare da sole tali aggiornamenti.
Ovviamente ciò comporta un rischio (paradossalmente) per la sicurezza, nel senso che comunque qualunque utente diligente ci terrà a vedere cosa succede, e non è sicuramente un buon metodo attraverso il quale un sistemista fannullone possa godersi il mare a chilometri e chilometri di distanza sperando che un server si mantenga da solo; tuttavia, per le esigenze dell´utente comune, in ogni caso, un sistema configurato per installare tali pacchetti in autonomia può risparmiare molte rogne.
Prima di tutto occorre installare il pacchetto unattended-upgrades:
sudo apt-get install unattended-upgrades
Dopodiché, basta creare il file /etc/apt/apt.conf.d/10periodic così fatto:
APT::Periodic::Enable "1";
APT::Periodic::Update-Package-Lists "1";
APT::Periodic::Download-Upgradeable-Packages "1";
APT::Periodic::AutocleanInterval "5";
APT::Periodic::Unattended-Upgrade "1";
APT::Periodic::RandomSleep "1800";
Ed il file /etc/apt/apt.conf.d/50unattended-upgrades in questa maniera:
// Automatically upgrade packages from these (origin, archive) pairs
Unattended-Upgrade::Allowed-Origins {
// ${distro_id} and ${distro_codename} will be automatically expanded
"${distro_id} stable";
"${distro_id} ${distro_codename}-security";
"${distro_id} ${distro_codename}-updates";
// "${distro_id} ${distro_codename}-proposed-updates";
};
// List of packages to not update
Unattended-Upgrade::Package-Blacklist {
// "vim";
// "libc6";
// "libc6-dev";
// "libc6-i686";
};
// Send email to this address for problems or packages upgrades
// If empty or unset then no email is sent, make sure that you
// have a working email setup on your system. The package ´mailx´
// must be installed or anything that provides /usr/bin/mail.
//Unattended-Upgrade::Mail "root@localhost";
// Do automatic removal of new unused dependencies after the upgrade
// (equivalent to apt-get autoremove)
//Unattended-Upgrade::Remove-Unused-Dependencies "false";
// Automatically reboot *WITHOUT CONFIRMATION* if a
// the file /var/run/reboot-required is found after the upgrade
//Unattended-Upgrade::Automatic-Reboot "false";
Per controllare meglio le procedure di aggiornamento che vengono svolte in maniera capillare. Dopo questo, l´ultimo passo è definire un file per cron, allo scopo di far eseguire settimanalmente una procedura per gli aggiornamenti di sicurezza; andiamo quindi a editare il file /etc/cron.weekly/apt-security-updates con il seguente testo:
echo "**************" >> /var/log/apt-security-updates
date >> /var/log/apt-security-updates
aptitude update >> /var/log/apt-security-updates
aptitude safe-upgrade -o Aptitude::Delete-Unused=false --assume-yes --target-release ´lsb_release -cs´-security >> /var/log/apt-security-updates
echo "Security updates (if any) installed"
E rendiamo il tutto eseguibile:
sudo chmod +x /etc/cron.weekly/apt-security-updates
Fatto? Fatto! Godetevi la vostra workstation Ubuntu o il vostro server casalingo Debian sempre costantemente sicuri, con questa piccola procedura che vi consentirà di essere sempre aggiornati tappando ogni falla scoperta dagli sviluppatori.