Модуль сканирования образов контейнеров (Trivy)

В этом разделе можно настроить сканер уязвимостей Trivy.

Trivy - это инструмент сканирования уязвимостей для контейнерных образов и файловой системы, используемый при разработке и эксплуатации приложений на платформе Docker. Он служит для обнаружения уязвимостей в зависимостях и пакетах, используемых в контейнерах.

В кластере Trivy обеспечивает автоматизированный процесс сканирования и формирования отчетности для своевременного обнаружения возможных уязвимостей:

Для настройки сканера уязвимостей Trivy перейдите на страницу “Установленные сервисы” раздела “Сервисы и репозитории”, найдите “Модуль сканирования образов контейнеров” (shturval-scanner).

Если в кластере такой сервис отсутствует, перейдите на страницу “Доступные чарты” раздела “Сервисы и репозитории”. На вкладке “shturval” выберите чарт shturval-scanner и нажмите “Установить”.

Выберите необходимую версию чарта. После выбора версии чарта в правой части экрана отобразятся доступные “Параметры конфигурации для сервиса” (values). Пропишите в блоке “Спецификация сервиса” необходимые параметры в качестве customvalues.

Перезапуск сканирования и хранение отчетов

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

  1. Подготовить манифест объекта ShturvalServicePatch (PatchSSC) для применения к спецификации (ssc) Модуля сканирования образов контейнеров (shturval-scanner) с требуемыми параметрами в customvalues, как в приведенном примере ниже.
Пример ShturvalServicePatch
apiVersion: ops.shturval.tech/v1beta2
kind: ShturvalServicePatch
metadata:
  name: <имя ресурса>
spec:
  shturvalServiceConfigName: shturval-scanner
  customvalues:
    operator:
      scanJobTTL: "<ваше значение параметра>"
      scannerReportTTL: "<ваше значение параметра>"

Параметр Описание Тип данных Пример
metadata.name Имя создаваемого PatchSSC string shturval-scanner-ttl
scanJobTTL Интервал перезапуска сканирования. По умолчанию 24 часа string 12h
scannerReportTTL Срок хранения отчетов перед удалением. По умолчанию 24 часа string 12h
  1. В графическом интерфейсе с помощью импорта манифеста загрузить в кластер подготовленный ShturvalServicePatch:
  • Нажмите на иконку импорта манифестов, расположенную слева от имени пользователя. Загрузите файл с подготовленным манифестом ShturvalServicePatch для shturval-scanner или перетащите манифест в открывшееся окно. Выполните проверку и нажмите Загрузить.
Скриншот

manif

trivypatch1

После загрузки ShturvalServicePatch потребуется некоторое время для применения изменений.

ClusterComplianceReports

Отчеты ClusterComplianceReports могут быть сформированы в общем или расширенном формате. Чтобы информации о проверках была доступна в графическом интерфейсе платформы, в Trivy настроена детализация отчета: reportType:all. Если в reportType вы укажете summary, в графическом интерфейсе не будет отображаться информация по отчетам.

Для отчетов вида ClusterComplianceReports по умолчанию настроено сканирование раз в 6 часов. Чтобы изменить дефолтное значение, необходимо:

  1. Подготовить манифест объекта ShturvalServicePatch (PatchSSC) для применения к спецификации (ssc) Модуля сканирования образов контейнеров (shturval-scanner), где в параметре cron указать период сканирования, как в приведенном примере ниже.
Пример ShturvalServicePatch
apiVersion: ops.shturval.tech/v1beta2
kind: ShturvalServicePatch
metadata:
  name: <имя ресурса>
spec:
  shturvalServiceConfigName: shturval-scanner
  customvalues:
    compliance:
      cron: <ваше значение параметра>

Параметр Описание Тип данных Пример
metadata.name Имя создаваемого PatchSSC string shturval-scanner-cron
compliance.cron Период сканирования отчетов ClusterComplianceReports в крон формате. Обратите внимание, между значениями должны быть пробелы. string 0 7 * * *
  1. В графическом интерфейсе с помощью импорта манифеста загрузить в кластер подготовленный ShturvalServicePatch.
Скриншот

manif

scanner_cronpatch1

После загрузки ShturvalServicePatch потребуется некоторое время для применения изменений.

Настройка сканирования из локального репозитория

Для настройки сканирования образов из локального репозитория, в случае использования SSL сертификата, выпущенного непубличным УЦ, например, корпоративным или самоподписным, необходимо:

  1. Подготовить манифест объекта ShturvalServicePatch (PatchSSC) для применения к спецификации (ssc) Модуля сканирования образов контейнеров (shturval-scanner), где задать в параметре nameOfRegistry имя репозитория, как в приведенном примере ниже.
Пример ShturvalServicePatch
apiVersion: ops.shturval.tech/v1beta2
kind: ShturvalServicePatch
metadata:
  name: <имя ресурса>
spec:
  shturvalServiceConfigName: shturval-scanner
  customvalues:
    trivy:
      insecureRegistries:
        nameOfRegistry: <ваше значение параметра>

Параметр Описание Тип данных Пример
metadata.name Имя создаваемого PatchSSC string shturval-scanner-localrepo
nameOfRegistry DNS-имя локального репозитория string registry.corp.domain
  1. В графическом интерфейсе с помощью импорта манифеста загрузить в кластер подготовленный ShturvalServicePatch.
Скриншот

manif

scanner_localrepopatch

После загрузки ShturvalServicePatch потребуется некоторое время для применения изменений.

С дополнительной информацией можно ознакомиться на сайте Trivy и сайте Trivy Operator.

×