Автообновления безопасности в Linux: unattended-upgrades и dnf-automatic

Один раз обновляем систему вручную, потом включаем автоматическую установку обновлений безопасности. Ubuntu, Debian и семейство RHEL.

5 ноября 2026 г.·2 мин чтения·ubuntu, debian, almalinux, apt

Даже с идеальным SSH и брандмауэром сервер со старым OpenSSL или ядром остаётся уязвимым: дыры в них публикуются вместе с готовыми эксплойтами. Решение в два шага: обновиться сейчас и настроить, чтобы обновления безопасности ставились сами. Останется изредка перезагружать сервер.

Все команды проверены на VPS с Ubuntu 24.04 и Debian 12 — на tanaka.host оба образа ставятся при заказе сервера, а если что-то пойдёт не так, выручит консоль в кабинете.

1. Обновите систему вручную

Ubuntu и Debian:

sudo apt update && sudo apt upgrade -y

AlmaLinux, Rocky, CentOS, Oracle Linux:

sudo dnf upgrade -y

Если обновилось ядро, перезагрузитесь: sudo reboot. Через минуту сервер снова доступен. Проверить, нужна ли перезагрузка, на Ubuntu можно так: ls /var/run/reboot-required — если файл есть, нужна.

2. Ubuntu и Debian: unattended-upgrades

sudo apt install -y unattended-upgrades
sudo dpkg-reconfigure -plow unattended-upgrades

На вопрос «Automatically download and install stable updates?» ответьте Yes. Это создаст /etc/apt/apt.conf.d/20auto-upgrades:

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

По умолчанию ставятся только обновления из репозитория безопасности, раз в сутки. Проверка без изменений:

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

Если хотите, чтобы сервер сам перезагружался после обновления ядра, добавьте в /etc/apt/apt.conf.d/50unattended-upgrades:

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

Для сервера с сайтом это нормально: минута простоя в четыре утра. Для сервера с базой данных, где перезагрузка может быть болезненной, лучше перезагружать руками.

Журнал: /var/log/unattended-upgrades/unattended-upgrades.log.

3. AlmaLinux и семейство RHEL: dnf-automatic

sudo dnf install -y dnf-automatic
sudo sed -i 's/^apply_updates = no/apply_updates = yes/' /etc/dnf/automatic.conf
sudo systemctl enable --now dnf-automatic.timer
systemctl list-timers dnf-automatic.timer

Чтобы ставились только обновления безопасности, а не все подряд, в /etc/dnf/automatic.conf укажите upgrade_type = security.

Это не касается ваших программ

Автообновления затрагивают только пакеты из системных репозиториев. WordPress, панели управления, VPN-панели, приложения в Docker, всё, что поставлено через curl | sh, — обновляется отдельно и по инструкциям разработчиков. Именно через такие программы серверы чаще всего и ломают, потому что про них забывают. Заведите привычку раз в месяц проверять версии всего, что стоит не из apt.

Docker-образы обновляются так:

cd /opt/проект
docker compose pull
docker compose up -d

Подробнее — в шпаргалке по Docker Compose.