Kubernetes Deckhouse с сертификатом ФСТЭК — АйТи Фреш
Москва, Щёлковское шоссе, д. 92, корп. 7 · Пн–Пт 9:00–19:00 · +7 903 729-62-41
· 16 мин чтения

Kubernetes Deckhouse с сертификатом ФСТЭК: российский enterprise K8s

Kubernetes Deckhouse с сертификатом ФСТЭК: российский enterprise K8s

Deckhouse Kubernetes Platform — первое российское K8s-решение, официально сертифицированное ФСТЭК (сертификат № 4860 от 04.10.2024). Для госсектора и банков это единственный легальный способ запускать контейнеры в production. Реальный кейс: внедрение Deckhouse в одном региональном банке — 50 нод, больше 200 микросервисов, и вся эта система полностью соответствует строжайшим требованиям Центробанка РФ.

Deckhouse vs vanilla Kubernetes: ключевые отличия

АспектVanilla K8sDeckhouseПреимущество
СертификацияНет ФСТЭКФСТЭК № 4860Госсектор ready
УстановкаManual setupDeclarative installerZero-ops deployment
МониторингDIY stackIntegrated Prometheus/GrafanaOut-of-box observability
БезопасностьManual hardeningSecurity by designФСТЭК compliance
ПоддержкаCommunityEnterprise 24/7Russian timezone

Production кейс: региональный банк

Разбираем архитектуру Deckhouse для банковской инфраструктуры:

# Deckhouse cluster configuration
apiVersion: deckhouse.io/v1
kind: ClusterConfiguration
metadata:
  name: bank-production
clusterType: Static
podSubnetCIDR: "10.111.0.0/16"
serviceSubnetCIDR: "10.222.0.0/16"
kubernetesVersion: "1.28"
clusterDomain: "cluster.local"
---
# ФСТЭК compliance modules
apiVersion: deckhouse.io/v1alpha1
kind: ModuleConfig
metadata:
  name: security-policies
spec:
  enabled: true
  settings:
    enforcementMode: "strict"
    podSecurityStandards: "restricted"
    networkPolicies: "deny-all-default"
    auditPolicy: "fstec-compliant"

Безопасность по стандартам ФСТЭК

Интеграция с российскими SIEM

# MaxPatrol SIEM integration
apiVersion: deckhouse.io/v1alpha1
kind: DeckHouseConfig
metadata:
  name: siem-integration
spec:
  auditPolicy:
    rules:
    - level: "RequestResponse"
      namespaces: ["production", "critical"]
      verbs: ["create", "update", "delete"]
      resources:
      - group: ""
        resources: ["pods", "services", "secrets"]

    webhook:
      config:
        endpoint: "https://maxpatrol.bank.local/api/k8s-events"
        headers:
          Authorization: "Bearer ${SIEM_TOKEN}"

TCO и лицензирование

А теперь о главном для enterprise: стоимость Deckhouse на 3 года.

КомпонентStandardEnterpriseEnterprise + Support
Лицензия (до 50 нод)Free3.6M₽7.2M₽
Поддержка 24/7CommunityОпциональноВключена
ФСТЭК сертификатНетДаДа
Professional servicesНетОтдельноСкидка 30%

Migration с vanilla Kubernetes

# Migration strategy
# 1. Backup existing workloads
kubectl get all --all-namespaces -o yaml > k8s-backup.yaml

# 2. Install Deckhouse
curl -L https://deckhouse.io/install.sh | bash -s -- \
  --cluster-type=existing \
  --config=deckhouse-config.yaml

# 3. Migrate workloads gradually
# Namespace-by-namespace approach
kubectl label namespace production deckhouse.io/migrated=true

# 4. Enable ФСТЭК modules
kubectl apply -f fstec-compliance.yaml

Production опыт: что работает хорошо

Что может быть лучше

Что именно сертифицировано: редакция CSE и требования ФСТЭК

Первое, что я проверяю перед любым проектом с «сертифицированным Kubernetes», — какая редакция стоит у заказчика. Сертификат выдан не на Deckhouse вообще, а на конкретную сборку. По данным страницы безопасности на сайте вендора, действует сертификат ФСТЭК России №4860 от 04.10.2024 на ПО Deckhouse Platform CSE (Certified Security Edition). Продукт внесён в реестр российского ПО, запись №12338 от 21.12.2021.

Против каких требований проводилась сертификация:

Вендор указывает, что с этим сертификатом платформу можно применять на значимых объектах КИИ до 1-й категории значимости включительно (приказ ФСТЭК №239), в информационных системах персональных данных до 1-го уровня защищённости включительно (приказ ФСТЭК №21), в ГИС до 1-го класса защищённости (приказ ФСТЭК №117 от 11 апреля 2025 г.) и в АСУ ТП до 1-го класса (приказ ФСТЭК №31).

Отсюда практический вывод. Если в кластере работает редакция Community (CE) или обычная Enterprise, никакого сертификата у этой установки нет, как бы ни назывался продукт в договоре. Для аттестации нужна именно сертифицированная сборка CSE, полученная от вендора. В документации с версии 1.76 платформа переименована в Deckhouse Platform, а редакции получили новые имена: Open/CE, Core, BE, SE, SE+, Ultimate/EE, Certified Core (CSE Lite) и Certified Pro (CSE Pro). Я всегда сверяю название редакции в лицензии со списком из документации, чтобы не было путаницы.

Установка: как это выглядит руками

Deckhouse ставится не набором скриптов на каждом узле, а из контейнера установщика с утилитой dhctl. Для платных редакций сначала нужна авторизация в хранилище образов по лицензионному ключу, потом запуск контейнера с нужной редакцией и каналом обновлений:

docker login -u license-token registry.deckhouse.ru

docker run --pull=always -it \
  -v "$PWD/config.yml:/config.yml" \
  -v "$HOME/.ssh/:/tmp/.ssh/" \
  registry.deckhouse.ru/deckhouse/ee/install:stable bash

# внутри контейнера — развёртывание нового кластера
dhctl bootstrap --ssh-user=<user> \
  --ssh-agent-private-keys=/tmp/.ssh/id_ed25519 \
  --config=/config.yml

В адресе образа вместо ee подставляется код редакции (ce — Community Edition), а в теге — канал: alpha, beta, early-access, stable или rock-solid. Для установки в уже существующий кластер документация предписывает другую команду — dhctl bootstrap-phase install-deckhouse, а не bootstrap. Полный список ключей выводит dhctl bootstrap -h.

Перед запуском я проверяю три вещи: ОС узлов есть в списке поддерживаемых вендором, на все узлы есть вход по SSH-ключу, а сетевые доступы между узлами открыты по таблице из раздела о сетевом взаимодействии компонентов. Установщик сам выполняет предварительные проверки и останавливается, если что-то не так, но лучше не доводить до этого на площадке заказчика.

Обновления: каналы, окна и ручное подтверждение

Автоматические обновления — сильная сторона Deckhouse и одновременно главный риск для регулируемых систем. Поэтому первым делом после установки я настраиваю модуль deckhouse. Каналы обновлений в порядке роста стабильности: Alpha, Beta, EarlyAccess, Stable, RockSolid. Для продуктивных кластеров я выбираю Stable или RockSolid, для тестового стенда — EarlyAccess, чтобы видеть новые версии раньше.

apiVersion: deckhouse.io/v1alpha1
kind: ModuleConfig
metadata:
  name: deckhouse
spec:
  version: 1
  settings:
    releaseChannel: Stable
    update:
      mode: AutoPatch
      windows:
        - from: "20:00"
          to: "23:00"
          days: ["Sat", "Sun"]

Режим update.mode принимает три значения:

Время в окнах обновлений задаётся в UTC, а не в местном часовом поясе. Об этом легко забыть: окно «с 20:00 до 23:00» в конфигурации — это 23:00–02:00 по Москве. В сертифицированной среде я ставлю Manual или AutoPatch: любое изменение версии должно проходить через процедуру управления изменениями, а не случаться ночью само.

Модули безопасности, которые я включаю первыми

Список «безопасность из коробки» в маркетинговых материалах выглядит длинным, но на практике работу делают три модуля. Важно учитывать редакцию: runtime-audit-engine и operator-trivy доступны в Ultimate/EE и сертифицированных редакциях, а admission-policy-engine в младших редакциях работает с ограничениями.

admission-policy-engine проверяет манифесты в момент создания и изменения объектов. Политики делятся на три категории: Pod Security Standards, операционные политики (например, разрешённые префиксы образов, обязательные пробы) и политики безопасности (доступ к IPC и PID хоста, привилегии контейнеров). Политика PSS включается меткой на пространстве имён, режим — второй меткой:

kubectl label ns production security.deckhouse.io/pod-policy=restricted
kubectl label ns production security.deckhouse.io/pod-policy-action=warn

Режимы: deny запрещает запуск, warn пускает с предупреждением, dryrun только фиксирует нарушения в отчётах. На существующих приложениях я начинаю с dryrun, разбираю нарушения и лишь потом перевожу в deny. Системные пространства имён модуль не трогает.

operator-trivy сканирует образы на известные CVE, в том числе по базам Astra Linux, ALT Linux и РЕД ОС, и проверяет кластер на соответствие CIS Kubernetes Benchmark. Сканируются пространства имён с меткой security-scanning.deckhouse.io/enabled=""; если ни одной такой нет — только default. Проверка запускается раз в 24 часа и при появлении новых образов, результаты видны в Grafana.

runtime-audit-engine построен на Falco: собирает события ядра через eBPF и аудит API Kubernetes и ловит оболочки, запущенные внутри контейнеров, привилегированные контейнеры, монтирование /proc, попытки прочитать /etc/shadow. Его события я отправляю в SIEM заказчика — именно эти записи потом просят показать при проверке.

Заключение: когда выбирать Deckhouse

Обязательно для:

Рассмотреть для:

Deckhouse — это полностью зрелое российское решение, идеальное для корпоративного Kubernetes. А вот сертификат ФСТЭК делает его по-настоящему уникальным: это теперь единственный вариант для всех регулируемых отраслей.

Столкнулись с похожей задачей? Обращайтесь — решим

Если у вас происходит что-то из описанного в этой статье — или любая другая проблема с ИТ-инфраструктурой, — обращайтесь в любое время. Мои специалисты и я лично разберём ситуацию, найдём настоящую причину и доведём до решения.

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

📞 +7 903 729-62-41 ✈ Telegram @ITfresh_Boss

С уважением, Семёнов Евгений Сергеевич, директор «АйТи Фреш» — IT-аутсорсинг для компаний до 50 рабочих мест, 15+ лет практики

Источники

📄
Скачайте подробный разбор в PDF Кейсы, статистика, типовые ошибки и чек-лист самопроверки — 12 страниц
Скачать PDF

Подпишитесь на рассылку ITfresh

И, кстати, не забудьте: раз в неделю мы публикуем свежие практические гайды. Они — прямо в точку для руководителя IT или сисадмина. Мы охватываем всё: от безопасности и 1С до сложных миграций и резервных копий. И, конечно, делимся множеством проверенных лайфхаков из наших реальных проектов.

Письмо придёт в течение минутыНе нашли его во «Входящих» — загляните в папку «Спам» или «Промоакции» и нажмите «Не спам». Так все следующие выпуски будут приходить прямо в основную почту.
Реквизиты оператора персональных данных

ООО «АЙТИ-ФРЕШ», ИНН 7719418495, КПП 771901001. Юридический адрес: 105523, г. Москва, Щёлковское шоссе, д. 92, корп. 7. Контакт: info@itfresh.ru, +7 903 729-62-41. Оператор обрабатывает e-mail подписчика в целях рассылки информационных и рекламных материалов до момента отзыва согласия.