Подробный гайд: Secret Net Studio для Linux: поддержка ядер ОС и установка модулей защиты

Гайд по поддержке ядер Linux в Secret Net Studio: проверка совместимости, установка модулей, устранение проблем и требования ФСТЭК.

2026.05.13                  


Подробный гайд: Secret Net Studio для Linux: поддержка ядер ОС и установка модулей защитыПодробный гайд: Secret Net Studio для Linux: поддержка ядер ОС и установка модулей защиты

1. Как определить текущее ядро ОС

Перед установкой или обновлением СНС всегда проверяйте активное ядро:

uname -r
uname -a
cat /etc/os-release | grep -E "NAME|VERSION"

Пример вывода:

6.1.0-28-amd64 на Debian-based или 5.15.0-91-generic на Ubuntu/Astra.


2. Где найти точный список поддерживаемых ядер

Secret Net Studio сертифицирован ФСТЭК России, поэтому поддержка ядер строго регламентирована и привязана к конкретной версии СНС и дистрибутиву ОС.

Источник Что содержит
Таблица совместимости (официальный PDF/веб-страница на портале code.ru или в личном кабинете партнёра) Точные версии ОС + ядра, прошедшие валидацию для вашей сборки СНС (например, 9.0, 9.1, 9.2)
README.DKMS или COMPATIBILITY.md в архиве дистрибутива СНС Локальная копия таблицы, поставляемая вместе с установочными файлами
snsadm --check-kernel (если доступна в вашей версии) Быстрая проверка текущего ядра на совместимость

Важно:

Версии ядер в открытых репозиториях (например, HWE-стеки Ubuntu, linux-lts в Astra) могут отставать или опережать валидированные списки.

Использование непроверенного ядра может привести к:

  • отказу загрузки модулей СНС,
  • потере контроля целостности/мандатного доступа,
  • нарушению требований ФСТЭК при аттестации.

3. Подготовка ОС перед установкой модулей ядра

СНС использует DKMS (Dynamic Kernel Module Support) для автоматической сборки модулей под текущее ядро.

Для корректной работы необходимы:

Для Debian/Ubuntu/Astra Linux:

sudo apt update
sudo apt install -y dkms build-essential linux-headers-$(uname -r) kmod

Для RHEL/RED OS/CentOS/Alma:

sudo dnf install -y dkms kernel-devel-$(uname -r) kernel-headers-$(uname -r) gcc make kmod

Для ALT Linux:

sudo apt-get install dkms kernel-headers-$(uname -r) kernel-source-std-def kmod

Проверьте наличие заголовков:

ls -l /usr/src/linux-headers-$(uname -r)  # Debian/Ubuntu
ls -l /usr/src/kernels/$(uname -r)        # RHEL/RED

4. Установка и сборка модулей ядра

После установки пакета СНС (обычно secret-net-studio-core или аналогичный):

1. Автоматическая сборка через DKMS:
   sudo dkms status
Если модуль не собран:
   sudo dkms install -m secret_net -v <версия_модуля>

<версия_модуля> можно узнать из вывода dpkg -l | grep secret или rpm -qa | grep secret.

2. Проверка загрузки модулей:
   lsmod | grep -E "sn_|secret"
   dmesg | tail -n 20
Ожидаемый статус:

secret_net_core, secret_net_mac, secret_net_integrity и т.д. в выводе lsmod.

3. Включение сервисов СНС:
   sudo systemctl enable --now sns-agent sns-monitor
   sudo snsadm status

5. Проверка корректности работы

Команда Что проверяет
snsadm kernel-check Соответствие ядра валидированному списку
dkms status Состояние собранных модулей
journalctl -u sns-agent --no-pager -n 50 Логи загрузки и политики
cat /proc/modules | grep secret Наличие модулей в памяти ядра
snsadm policy-test --dry-run Тестовое применение политик без перезагрузки

6. Типичные проблемы и решения

Симптом Причина Решение
DKMS: make failed for module secret_net Отсутствуют заголовки или несоответствие версий GCC/clang Установите linux-headers точно под uname -r, проверьте gcc --version
Module secret_net_core: Invalid argument Ядро не в таблице совместимости Обновите СНС до версии, поддерживающей ваше ядро, либо выполните downgrade ядра
Secure Boot enabled, module not loaded Подпись модуля отсутствует или не соответствует MOK Добавьте ключ в MOK: sudo mokutil --import /opt/secret_net/certs/sns_sign.der или отключите Secure Boot (только для тестовых сред)
snsadm показывает ядро как unsupported Используется HWE/предпросмотрное ядро Переключитесь на LTS-ядро: sudo apt install linux-image-generic (Ubuntu) или выберите профиль ядра в загрузчике

Важные ограничения и рекомендации

  1. ФСТЭК и аттестация: Использование непроверенных ядер снимает действие сертификата соответствия. Для рабочих контуров применяйте только ядра из официальной таблицы совместимости.
  2. Обновления ОС: При плановом обновлении дистрибутива (apt upgrade, dnf update) ядро может смениться. Всегда проверяйте uname -r после перезагрузки и при необходимости запускайте sudo dkms autoinstall.
  3. Livepatch/Ksplice: Динамическое обновление ядра без перезагрузки не поддерживается СНС. Требуется полная перезагрузка после обновления ядра.
  4. Контейнеры и ядра: СНС контролирует хост-ядро. Контейнеры (Docker, LXC) работают поверх него, но изоляция контейнеров не заменяет мандатный контроль хоста.

Рекомендация:

Перед развёртыванием в production выполните стендовое тестирование на точной копии целевой ОС, включая имитацию обновления ядра и отката. Сохраните выводы uname -a, dkms status, snsadm status и journalctl в архив для аудита.