Astra Linux SE 1.8.1: обновляем парк Yadro Vegman и пересобираем драйвер сетевой карты
Astra Linux SE 1.8.1 закрывает критические CVE и расширяет поддержку оборудования Yadro. Прошли обновление без инцидентов, но один in-house драйвер пришлось пересобирать.
Выход Astra Linux SE 1.8.1 с расширенной поддержкой оборудования Yadro и исправлением критических CVE
Astra Linux SE 1.8.1 вышла на прошлой неделе. В анонсе - расширенная поддержка оборудования Yadro и закрытие нескольких CVE, часть из которых классифицирована как критические. Для нас это означало обязательное обновление на серверах, которые стоят в managed-сопровождении - откладывать при критических уязвимостях не принято. Рассказываем, как прошло.
Что в релизе
Официальный changelog Astra Linux SE 1.8.1 сосредоточен на двух направлениях.
Поддержка Yadro. В 1.8.0 поддержка серверов Yadro Vegman появилась в базовом объёме, но ряд периферии требовал ручных патчей. В 1.8.1 вендор закрыл наиболее частые случаи: корректная инициализация контроллеров хранилища на некоторых конфигурациях Vegman R2/R4, улучшенная поддержка IPMI-интерфейсов для удалённого управления. По документации выглядит как планомерная доработка, а не революция.
Закрытые CVE. Несколько уязвимостей в ядре Linux и стеке glibc - среди них CVE с CVSS-оценкой выше 8.0, связанные с локальным повышением привилегий и потенциальной эксплуатацией через сетевой стек. На объектах КИИ такое обновление не обсуждается - ставить нужно.
Парк и план обновления
У нас под управлением несколько кластеров на Yadro Vegman - преимущественно модели R2 и R4. На них крутится комбинация вычислительных и хранилищных нод, часть из которых под zVirt, о котором мы писали недавно.
Стандартный порядок для rolling-обновления ОС у нас такой:
- Выкатываем на одну ноду - наблюдаем, смотрим логи загрузки, проверяем IPMI и сетевую связность.
- Если всё штатно - идём по остальным нодам с паузами между серверами, чтобы не ронять кворум.
- Хранилищные ноды - в самом конце, с обязательной проверкой состояния кластера хранилища до и после каждой ноды.
Сам apt-апдейт через зеркало репозитория Astra прошёл без неожиданностей. Пакеты подтянулись, ядро обновилось, перезагрузки штатные. Ни одного сервера, который завис бы при перезагрузке или не поднял сеть.
Единственный затык: in-house драйвер NIC
Мы поддерживаем несколько серверов, на которых стоят сетевые карты без официальной поддержки в дистрибутиве - карты хорошие, но вендор не торопится с upstream-патчами в ядро Linux. Для них есть самописный драйвер, который мы собирали под конкретный kernel ABI.
После обновления на 1.8.1 с новым ядром этот драйвер, разумеется, перестал загружаться - несовпадение kernel symbol версий. Ничего катастрофичного: сервер загрузился, просто без нужных интерфейсов. Стандартная ситуация для DKMS-несовместимых модулей.
Пересборка заняла около получаса с учётом установки заголовков нового ядра и прогона make. Модуль собрался чисто, загрузился, интерфейсы поднялись. После этого добавили его в DKMS-конфигурацию с явной привязкой к версии - чтобы в следующий раз не вспоминать руками.
Мелочь, но показательная: при наличии любых внешних или самописных модулей ядра обновление ОС - это не просто apt upgrade && reboot. Список таких модулей лучше держать в документации по серверу, а не в голове у того, кто их когда-то собирал.
Про IPMI на Vegman
Один из заявленных улучшений 1.8.1 - поддержка IPMI на Vegman. Честно говоря, у нас и на 1.8.0 IPMI работал нормально в части базового управления питанием и консоли. Разница в 1.8.1, судя по всему, касается более тонких вещей - корректного отображения датчиков температуры в ipmitool sensor и поведения IPMI при определённых сценариях ребута. После обновления показания датчиков действительно стали чище - раньше пара сенсоров периодически уходила в 0x20 | State Deasserted без видимых причин.
Итог
Обновление прошло штатно. Единственный ручной шаг - пересборка одного драйвера под новое ядро - это не баг релиза, а плановая работа, которую мы и так делаем при любой смене kernel ABI. CVE закрыты, оборудование работает, показания датчиков стали адекватнее.
Для клиентов на managed-сопровождении с парком Yadro Vegman - обновление рекомендуем. Если есть внешние модули ядра, проверьте их совместимость заранее: список модулей и их источников должен быть в runbook по серверу, а не только в памяти команды.
- zVirt 4.1: обновляем тестовый кластер и проверяем live migration под нагрузкой · 13 января 2025
- КИИ после 1 января: первый рабочий день и первые выводы · 6 января 2025