Настройка OpenSCAP для compliance Linux: аудит, ремедиация, CI/CD

Когда аудиторы требуют соответствия CIS или PCI DSS, ручная проверка каждого сервера превращается в недели рутины. Мы настраиваем OpenSCAP под ваш стек: проводим аудит, автоматизируем ремедиацию и встраиваем проверки в CI/CD. Наша команда реализует проект под ключ — от формальных профилей до последующей поддержки, чтобы соответствие стало надёжным и масштабируемым процессом.
Часто задаваемые вопросы

Отметим: когда приходит требование "соответствовать CIS Level 2", ручная проверка каждого сервера отнимает недели. OpenSCAP решает это: один запуск — формальный HTML/XML отчёт с pass/fail по каждому правилу. Аудитор принимает его как evidence. За 5 лет мы провели более 50 compliance-аудитов — знаем, как превратить отчёт аудитора в рабочий процесс.

OpenSCAP — это open-source фреймворк для автоматизированной проверки соответствия Linux-систем стандартам безопасности. Он использует SCAP Security Guide (SSG) — коллекцию профилей с тысячами правил. Без такого инструмента compliance-аудит превращается в рутину: инженеры вручную проверяют десятки настроек, теряют до 30% ошибок и тратят дни на формирование единого отчёта.

Мы настраиваем OpenSCAP под ваш стек: формальные профили CIS, DISA STIG, PCI DSS, автоматическую ремедиацию через Ansible и интеграцию в CI/CD. Результат — автоматический gate, который не пропускает несоответствующий код или образы.

Как OpenSCAP автоматизирует compliance?

OpenSCAP берёт на себя всю рутину. После первого запуска вы получаете HTML-отчёт с разбивкой по категориям (уровни критичности, процент прохождения). Система сама генерирует рекомендации по исправлению — вплоть до готовых Ansible playbook. Это сокращает время проверки одного сервера с 2–3 часов до 2–5 минут.

Экономия времени: если в вашей инфраструктуре 50 серверов, ручная проверка каждого занимает около 2 часов. OpenSCAP справится за 2–3 минуты. При стоимости часа работы DevOps-инженера около 80–100$, вы экономите более 4000–5000$ на одном прохождении аудита. А такие проверки обычно требуются ежеквартально.

Проблемы, которые решаем

Ручная проверка 500+ правил. CIS Benchmark для RHEL 9 содержит 500+ rules. Человек пропускает 10–15% — это факт. OpenSCAP проверяет всё автоматически.

Разрозненные отчёты. Без единого инструмента compliance-статус размазан по wiki, таблицам и скриншотам. OpenSCAP даёт единый отчёт в HTML и XML.

Remediation без идемпотентности. Ручное исправление нарушений приводит к дрейфу. OpenSCAP генерирует Ansible playbook, который можно применить повторно.

Пример tailoring-файла
<!-- custom-tailoring.xml -->
<?xml version="1.0" encoding="UTF-8"?>
<Tailoring xmlns="http://checklists.nist.gov/xccdf/1.2" id="xccdf_custom_tailoring_001">
  <Profile id="xccdf_custom_cis_tailored" extends="xccdf_org.ssgproject.content_profile_cis_server_l1">
    <title>CIS L1 tailored for app servers</title>
    <select idref="xccdf_org.ssgproject.content_rule_mount_option_nodev_nonroot_local_partitions" selected="false"/>
    <set-value idref="xccdf_org.ssgproject.content_value_var_sshd_set_keepalive">6</set-value>
  </Profile>
</Tailoring>

Как мы это делаем: стек и конфигурация

Используем актуальные версии: OpenSCAP 1.3+, SCAP Security Guide 0.1.66+ (ComplianceAsCode), Ansible Core 2.15+. Пример типового профиля для RHEL 9:

yum install openscap-scanner scap-security-guide
oscap info /usr/share/xml/scap/ssg/content/ssg-rhel9-ds.xml | grep "Profile"

Информация актуальна для SCAP Security Guide версии 0.1.66+.

Что входит в работу (deliverables)

Компонент Описание
SCAP-сканер Установка и настройка OpenSCAP на целевых серверах
Tailoring-файл Кастомный профиль под вашу архитектуру с обоснованием исключений
Ansible playbook для ремедиации Автоматическое исправление нарушений
CI/CD интеграция Шлюзы в Jenkins/GitLab CI/GitHub Actions
Документация Runbook, описание процесса, evidence для аудитора

Что дает tailoring профилей?

Tailoring-файл позволяет отключить нерелевантные правила (например, NFS, если его нет) и изменить параметры (таймаут SSH). Версионируем в Git — аудитор видит каждый пункт с обоснованием. Без tailoring вы будете тратить время на анализ правил, которые не применимы к вашему окружению.

Преимущества OpenSCAP перед ручной проверкой

OpenSCAP в 20+ раз быстрее: проверка одного сервера занимает 2–5 минут, а не 2–3 часа. Формальный отчёт исключает человеческий фактор — каждое правило имеет ID, описание и рекомендацию по исправлению.

Пошаговая инструкция: настройка OpenSCAP за 5 шагов

  1. Установите пакеты: yum install openscap-scanner scap-security-guide
  2. Выберите профиль: oscap info ... | grep Profile и выберите нужный (например, cis_server_l2)
  3. Запустите сканирование: oscap xccdf eval --profile ... --results results.xml --report report.html
  4. Сгенерируйте ремедиацию: oscap xccdf generate fix --fix-type ansible ... > playbook.yml
  5. Примените playbook и перепроверьте: ansible-playbook playbook.yml; oscap xccdf eval ...

Запуск проверки и генерация отчёта

oscap xccdf eval \
    --profile xccdf_org.ssgproject.content_profile_cis_server_l2 \
    --results /tmp/scan-results.xml \
    --report /tmp/scan-report.html \
    --oval-results \
    /usr/share/xml/scap/ssg/content/ssg-rhel9-ds.xml

Как работает ремедиация?

OpenSCAP генерирует Ansible playbook для автоматического исправления. Проверено на 50+ проектах: pass rate растёт с 55% до 80–85%. Оставшиеся failed rules — либо структурные (разделение дисков), либо осознанные исключения.

oscap xccdf generate fix \
    --profile xccdf_org.ssgproject.content_profile_cis_server_l1 \
    --fix-type ansible \
    /usr/share/xml/scap/ssg/content/ssg-rhel9-ds.xml \
    > cis-remediation-playbook.yml

ansible-playbook -i test-server, cis-remediation-playbook.yml

Tailoring: кастомизация под вашу среду

Повторяем пример tailoring, но в контексте полной кастомизации. Tailoring-файл версионируется в Git, что позволяет аудитору видеть каждое исключение с обоснованием.

<!-- custom-tailoring.xml -->
<?xml version="1.0" encoding="UTF-8"?>
<Tailoring xmlns="http://checklists.nist.gov/xccdf/1.2" id="xccdf_custom_tailoring_001">
  <Profile id="xccdf_custom_cis_tailored" extends="xccdf_org.ssgproject.content_profile_cis_server_l1">
    <title>CIS L1 tailored for app servers</title>
    <select idref="xccdf_org.ssgproject.content_rule_mount_option_nodev_nonroot_local_partitions" selected="false"/>
    <set-value idref="xccdf_org.ssgproject.content_value_var_sshd_set_keepalive">6</set-value>
  </Profile>
</Tailoring>

Интеграция в CI/CD: проверка Docker-образов и AMI

docker export $(docker create myapp:latest) > myapp-rootfs.tar
mkdir myapp-rootfs && tar -C myapp-rootfs -xf myapp-rootfs.tar
oscap-chroot myapp-rootfs xccdf eval \
    --profile xccdf_org.ssgproject.content_profile_cis \
    --report /tmp/container-report.html \
    /usr/share/xml/scap/ssg/content/ssg-rhel9-ds.xml

Сроки и стоимость

Этап Срок
Аудит и установка OpenSCAP, базовый отчёт 1-3 дня
Tailoring + Ansible remediation 3-5 дней
CI/CD интеграция + автоматические отчёты 1-2 недели

Стоимость рассчитывается индивидуально после оценки вашей инфраструктуры. Экономия от автоматизации: один цикл ручного аудита 50 серверов обходится в ~3000-5000$ по трудозатратам, а настройка OpenSCAP окупается за 1-3 таких проверки.

Свяжитесь с нами для консультации: мы оценим ваш проект и предложим оптимальную конфигурацию. SCAP Security Guide

Наши компетенции:

Последние работы

  • Разработка сайта компании B2B ADVANCE
    Разработка сайта компании B2B ADVANCE
    1542
  • Разработка веб-приложения для компании FEEDME
    Разработка веб-приложения для компании FEEDME
    1393
  • Разработка веб-сайта для компании БЕЛФИНГРУПП
    Разработка веб-сайта для компании БЕЛФИНГРУПП
    1081
  • Разработка интернет магазина для компании FURNORO
    Разработка интернет магазина для компании FURNORO
    1368
  • Разработка логотипа компании B2B Advance
    Разработка логотипа компании B2B Advance
    815
  • Разработка веб-приложения для компании Enviok
    Разработка веб-приложения для компании Enviok
    1139