MAATRIX / Блог / Как установить и настроить автообновления безопасности на VPS

Как установить и настроить автообновления безопасности на VPS

Как установить и настроить автообновления безопасности на VPS

MAATRIX

Большинство взломов серверов происходит не через хитрые атаки, а через известные уязвимости, для которых давно вышли патчи, — просто их вовремя не установили. Автообновления безопасности решают эту проблему: сервер сам ставит критические заплатки, пока вы заняты другими делами. Разберём, как установить и настроить автообновления безопасности на VPS через unattended-upgrades: выбрать, что обновлять, настроить перезагрузку и уведомления, не превратив автоматику в источник простоев.

Обсудить статью, задать вопрос или начать новую тему

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

Перейти в сообщество →

Зачем нужны автообновления

Логика простая. Когда в популярном пакете находят уязвимость, о ней узнают все, включая атакующих, и почти сразу выходит обновление с исправлением. Промежуток между появлением патча и его установкой — это окно, в котором сервер уязвим для уже известной и автоматизированной атаки. Чем дольше вы тянете с обновлением, тем шире это окно. Автообновления безопасности сводят его к минимуму, устанавливая заплатки в течение суток после выхода.

Особенно это важно для серверов, которые работают без ежедневного присмотра. Никто не будет каждое утро вручную проверять список обновлений, и на практике патчи откладываются на недели. Автоматика снимает эту рутину и человеческий фактор. Есть и обратная сторона, о которой мы честно поговорим: обновление изредка может что-то сломать, поэтому автообновления настраивают так, чтобы ставить только патчи безопасности, а не все подряд, и разумно управлять перезагрузками.

Установка unattended-upgrades

На Ubuntu и Debian штатный инструмент автообновлений — пакет unattended-upgrades. Часто он уже установлен, но выключен. Установите его и сопутствующий пакет, помогающий с настройкой.

apt update
apt install -y unattended-upgrades apt-listchanges

После установки нужно активировать автоматический запуск. Проще всего сделать это через интерактивную настройку, которая создаёт нужные файлы конфигурации с ответом на главный вопрос — включать ли автообновления.

dpkg-reconfigure -plow unattended-upgrades

Выберите включение, и система создаст базовую конфигурацию. Но полагаться только на неё не стоит — дальше мы разберём ключевые файлы настройки, чтобы точно понимать, что и когда будет обновляться. Слепо включённая автоматика без понимания её поведения может однажды преподнести сюрприз.

Нужен сервер под эту задачу?

Разверните VPS MAATRIX за пару минут: NVMe, AMD EPYC, root-доступ, локации UK, США и РФ. Оплата картой РФ и по СБП.

Арендовать VPS

Выбор источников обновлений

Главный файл настройки — /etc/apt/apt.conf.d/50unattended-upgrades. В нём задаётся, из каких источников ставить обновления автоматически. Ключевой принцип безопасной автоматики: обновлять только патчи безопасности, а не вообще все пакеты. Так вы получаете защиту без риска, что автоматика подтянет мажорное обновление какого-нибудь сервиса и сломает совместимость.

Unattended-Upgrade::Allowed-Origins {
    "${distro_id}:${distro_codename}-security";
    "${distro_id}ESMApps:${distro_codename}-apps-security";
    "${distro_id}ESM:${distro_codename}-infra-security";
};

Обратите внимание: в списке разрешённых источников оставлены только security-репозитории, а обычные обновления закомментированы. Это осознанный выбор — критические заплатки ставятся сами, а функциональные обновления вы контролируете вручную, когда есть время проверить. Такой баланс подходит для большинства серверов. В этом же файле можно задать список пакетов-исключений, которые никогда не обновлять автоматически, — полезно для критичных сервисов, обновление которых вы хотите проводить только руками.

Расписание и автоматическая перезагрузка

За то, как часто запускается автообновление, отвечает файл /etc/apt/apt.conf.d/20auto-upgrades. В нём включается ежедневная проверка и установка обновлений. Значения задаются в днях: единица означает ежедневно.

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

Отдельный важный вопрос — перезагрузки. Некоторые обновления, особенно ядра, вступают в силу только после перезагрузки. В файле 50unattended-upgrades можно включить автоматическую перезагрузку и задать время, когда она безопасна для вашего сервиса.

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

Здесь нужен честный расчёт. Автоматическая перезагрузка в четыре утра удобна для сервера, где ночью нет нагрузки, но неприемлема для сервиса, работающего круглосуточно без окна обслуживания. Если простой недопустим, оставьте автоперезагрузку выключенной и перезагружайтесь вручную в удобное время, следя за флагом необходимости перезагрузки. Выбор зависит от вашего сценария, и универсального ответа нет.

Отдельно стоит понимать разницу между установкой обновления и его вступлением в силу. Большинство патчей безопасности начинают действовать сразу после установки, потому что при обновлении пакета зависимые сервисы автоматически перезапускаются. Но обновление ядра или системных библиотек, которые уже загружены в память работающих процессов, полноценно применяется только после перезагрузки — до неё сервер продолжает работать на старом, всё ещё уязвимом ядре. Именно поэтому вопрос перезагрузки не косметический: без неё часть критических обновлений остаётся неактивной. Инструмент needrestart, который стоит на многих системах, помогает увидеть, какие службы работают на устаревших библиотеках и требуют перезапуска, и подсказывает, нужна ли перезагрузка на самом деле.

Проверка работы и уведомления

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

unattended-upgrade --dry-run --debug

Вывод покажет, какие пакеты попадают под автообновление и какие источники учитываются. Если всё выглядит верно, автоматика настроена правильно. Полезно настроить уведомления на почту о выполненных обновлениях, чтобы быть в курсе, что сервер обновляется, и вовремя замечать проблемы. За это отвечает параметр с адресом почты в файле настройки. Периодически заглядывайте в лог автообновлений, чтобы видеть историю.

cat /var/log/unattended-upgrades/unattended-upgrades.log

Лог хранит историю установленных обновлений и любых ошибок. Автообновления безопасности — недооценённая, но одна из самых эффективных мер защиты, дополняющая фаервол, ключи и fail2ban. Развернуть сервер, который с первого дня сам поддерживает себя в актуальном состоянии, удобно на VPS у MAATRIX: свежий образ системы, нужная локация и оплата из России картой, СБП или криптой. Настройте автообновления по шагам выше — и известные уязвимости перестанут быть вашей проблемой.

Нужен сервер под эту задачу?

Разверните VPS MAATRIX за пару минут: NVMe, AMD EPYC, root-доступ, локации UK, США и РФ. Оплата картой РФ и по СБП.

Арендовать VPS

Обсудить статью, задать вопрос или начать новую тему

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

Перейти в сообщество →

Частые вопросы

Не сломают ли автообновления рабочий сервер?

Риск минимизируется тем, что в Allowed-Origins оставляют только security-репозитории. Тогда автоматика ставит лишь заплатки безопасности, а функциональные обновления вы контролируете вручную, снижая шанс несовместимости.

Нужна ли автоматическая перезагрузка?

Зависит от сценария. Для сервера с ночным окном простоя удобна перезагрузка, например в четыре утра. Для круглосуточного сервиса без окна обслуживания лучше перезагружаться вручную в удобное время.

Как проверить, что автообновления работают?

Запустите unattended-upgrade с флагом dry-run — он покажет, какие пакеты обновились бы, ничего не устанавливая. Проверьте также лог в /var/log/unattended-upgrades.

Можно ли исключить пакет из автообновлений?

Да, в файле 50unattended-upgrades есть список пакетов-исключений. Добавьте туда критичные сервисы, которые хотите обновлять только вручную после проверки совместимости.

Нужны сами нейросети для контента?

Генерируйте изображения, видео и озвучку нейросетями на falapi.io — десятки моделей в одном окне. Оплата картой РФ и по СБП.