Большинство взломанных серверов пали не от чего-то хитрого. На них крутился софт с известной, уже закрытой дырой, и никто не поставил исправление. Автоматические обновления безопасности закрывают этот разрыв без необходимости помнить про вход на сервер. Это одни из самых ценных пяти минут на новом сервере.
Ubuntu и Debian: unattended-upgrades
В образах Ubuntu он обычно уже есть; в Debian может не быть. Установите и включите:
apt update
apt install -y unattended-upgrades apt-listchanges
dpkg-reconfigure -plow unattended-upgrades # answer "Yes"
Это создаст /etc/apt/apt.conf.d/20auto-upgrades:
APT::Periodic::Update-Package-Lists "1";
APT::Periodic::Unattended-Upgrade "1";
Оба значения 1 означают: обновлять списки пакетов и ставить обновления безопасности каждый день.
Решите вопрос с перезагрузкой
Патчи ядра требуют перезагрузки. Чтобы сервер перезагружался сам в спокойный час, отредактируйте /etc/apt/apt.conf.d/50unattended-upgrades и задайте:
Unattended-Upgrade::Automatic-Reboot "true";
Unattended-Upgrade::Automatic-Reboot-Time "04:00";
Unattended-Upgrade::Remove-Unused-Dependencies "true";
Сервер перезагрузится только тогда, когда обновление действительно этого требует (когда существует /var/run/reboot-required).
Проверьте
unattended-upgrade --dry-run --debug
Логи лежат в /var/log/unattended-upgrades/.
Rocky Linux и AlmaLinux: dnf-automatic
dnf install -y dnf-automatic
Отредактируйте /etc/dnf/automatic.conf:
[commands]
upgrade_type = security
apply_updates = yes
Включите таймер:
systemctl enable --now dnf-automatic.timer
systemctl list-timers dnf-automatic.timer
Чтобы узнать, нужна ли перезагрузка после обновлений, поставьте dnf-utils и выполните needs-restarting -r.
Какая политика перезагрузок подходит вам?
- Одно приложение, которое может моргнуть на минуту ночью (бот, личный сервис, небольшой сайт): автоперезагрузка включена.
- То, чем пользуются круглосуточно, или база данных, которую вы предпочитаете перезапускать сами: автоперезагрузка выключена, плюс напоминание перезагрузить, когда появится
/var/run/reboot-required.
Чего это не покрывает
Только системные пакеты. Ваши Docker-образы, зависимости языков (pip, npm) и вручную поставленные бинарники сами не обновятся — планируйте их отдельно. И обновления внутри релиза автоматические, а переход на новый релиз (Ubuntu 22.04 → 24.04) остаётся осознанной ручной работой.
Если неудачное обновление всё же сломает загрузку, веб-консоль в панели EQVPS пустит вас без SSH, а Managed Backups дадут точку восстановления до изменения.
Комментарии
Пока нет комментариев. Будьте первым.