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

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

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

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

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

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

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

Чтобы задать желаемый интервал для перезапуска сканирования, в блоке “Спецификация сервиса” укажите время для параметра scanJobTTL:

Пример customvalues
operator:
  scanJobTTL: <ваше значение параметра>
  scannerReportTTL: <ваше значение параметра>
Параметр Описание Тип данных Пример
scanJobTTL Интервал перезапуска сканирования. По умолчанию 24 часа string 12h
scannerReportTTL Срок хранения отчетов. По умолчанию 24 часа string 12h

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

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

Пример customvalues
compliance:
  cron: <ваше значение параметра>
Параметр Описание Тип данных Пример
cron Период сканирования отчетов ClusterComplianceReports в крон формате. Обратите внимание, между значениями должны быть пробелы. string 0 */6 * * *

Нажмите “Сохранить” для применения спецификации.

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

Пример customvalues
trivy:
  insecureRegistries:
    nameOfRegistry: <ваше значение параметра>
Параметр Описание Тип данных Пример
nameOfRegistry DNS-имя локального репозитория string registry.corp.domain
Пример customvalues для кластера, установленного из зеркала в закрытом контуре
operator:
  scanJobTTL: "30m"
  scannerReportTTL: "1h"
trivy:
  dbRepository: stm-mirror.corp.domain:443/trivy-db
  dbRepositoryInsecure: true
  insecureRegistries:
    mainShturvalRegistry: r.shturval.tech
    mirrorShturvalRegistry: stm-mirror.corp.domain:443
    mirrorShturvalNexus: nexus.corp.domain
  registry:
    mirror:
      r.shturval.tech: stm-mirror.corp.domain:44

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