Actualizaciones de seguridad automáticas

En servidores Debian/Ubuntu podemos habilitar la descarga automática de actualizaciones de seguridad. Veamos cómo proteger tus servidores habilitando las actualizaciones desatendidas. Para este ejemplo vamos a habilitar actualizaciones desatendidas pero solamente vamos a habilitar las actualizaciones de seguridad y no todas las actualizaciones.

Para poder hacerlo deberás ejecutar el siguiente comando en Debian/Ubuntu:

sudo apt install -y unattended-upgrades

Después, actualiza el archivo /etc/apt/apt.conf.d/50unattended-upgrades para asegurarte que se contenga el siguiente bloque:

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

Nota como todo está comentado excepto las actualizaciones de seguridad.

Algunas actualizaciones pueden solicitar el reinicio del servidor; Tú deberás decidir si deseas que el servidor haga esta acción de manera automática o no. Si quieres que se reinicie de manera automática deberás comentar la siguiente regla:

Unattended-Upgrade::Automatic-Reboot "true";

Finalmente, crea o edita el archivo /etc/apt/apt.conf.d/10periodic para hacer que esto ocurra una vez al día. Asegúrate de que las siguientes líneas se encuentren presentes:

APT::Periodic::Upgrade-Package-Lists "1";
APT::Periodic::Download-Upgradeable-Packages "1";
APT::Periodic::AutocleanInterval "7";
APT::Periodic::Unattended-Upgrade "1";

Una vez finalizado, tu servidor estará listo.

Esto se ejecutará una vez a intervalos establecidos. Los elementos "periódicos" están configurados para ejecutarse una vez por día por medio del cron diario. Si tienes curiosidad, puedes revisar lo que está configurado en el archivo /usr/lib/apt/apt.systemd.daily

La información sobre las actualizaciones se guarda en un log en el directorio /var/log/unattended-upgrades/.