CyberCodeReview
  • Главная
  • 🔦Auditor
    • 📥Установка
      • Установка
      • Обновление
    • 🎯Функционал
    • ⚙️Настройки
      • Интеграция с Security Center
        • Настройка активов продукта
        • Конфигуратор Auditor
        • Последовательности
          • Создание последовательности
          • Изменение цепочек
      • Прямое использование Auditor
        • Очистка
        • Учетные данные Docker
        • Обработчики
        • Персонализация
      • Задания
        • Технические задания
        • Задания сканирования
        • Настройка заданий
    • 🚀Запуск аудита
      • Интеграция с Security Center
        • Запуск аудита вручную
        • Запуск аудита по расписанию
      • Прямое использование Auditor
  • 🖥️Security Center
    • 📥Установка
      • Установка
      • Начало работы с Security Center
        • Параметры конфигурации
      • Обновление
      • Доступ к конечным точкам API Security Center
      • Перенос базы данных
      • FAQ: типичные ошибки в процессе развертывания
    • 🎯Функционал
      • Активные задачи
      • Метрики безопасности
        • Дашборд статистики критичности
        • WRT (Weighted Risk Trend)
        • Как работать с WRT (для руководителей команд)
        • Настройки метрик
          • SLA
        • CVSS
          • Правило CVSS
      • Дедупликатор
        • Правила базовой дедупликации
        • Правила расширенной дедупликации
      • Пользовательские отчеты
    • 🎣Валидатор
      • Создание правила
      • Фильтрация и сортировка фильтров
    • 🕷️Просмотр обнаружений
      • Просмотр всех уязвимостей
      • Объединение уязвимостей в группы
      • Доступные массовые действия
      • Просмотр отдельной уязвимости
      • Фильтры и сортировка
    • 🔬Сканеры
      • Импорт отчетов от сканеров в Security Center
        • Ручной импорт используя файл отчета
        • Импорт через Терминал используя файл отчета
        • Импорт через лямбда-функцию используя файл отчета
      • Описание сканеров
        • Сканеры кода
          • Bandit
          • Brakeman
          • Checkov
          • CodeQL
          • ESLint
          • Gemnasium
          • Gosec
          • Hadolint
          • KICS
          • PHP_CodeSniffer
          • Retire.js
          • Semgrep
          • SpotBugs
          • Terrascan
        • Сканеры секретов
          • Gitleaks
          • Trufflehog3
        • Сканеры зависимостей образа и кода
          • Trivy
          • Плагин Trivy vulners.com
        • Веб-сканеры
          • Arachni Scan
          • Acunetix
          • Burp Enterprise Scan
          • OWASP Zap
        • Сканеры инфраструктуры
          • Prowler
          • Subfinder
          • Naabu
          • Nessus
          • Nuclei
        • Сканеры мобильной безопасности
          • MobSFScan
        • Прочие сканеры
          • Dependency-Track
          • Snyk
      • Кастомные импортеры
        • Актуальные кастомные импортеры
    • 📊Jira
      • Настройка интеграции Jira
      • Настройка веб-хука Jira
    • Dependency Track
    • 🛠️Основные настройки Security Center
      • Настройка уведомлений
        • Интеграция
        • Критерии и расписание
        • Управление расписанием уведомлений
      • Настройки SSO
        • GitLab SSO
        • Microsoft SSO
        • Okta SSO
      • Управление ролями пользователей и контролем доступа
        • Управление пользователями
        • Создание и редактирование ролей
      • Настройки продукта
        • Создание продукта
        • Импорт репозиториев
        • Параметры продукта
        • Оценка рисков
        • Активы продукта
      • Интеграция с системой контроля версий (VCS)
      • Настройки сканера
        • Автозакрытие
        • Группировка обнаружений
        • Пользовательское описание Jira
        • Пользовательское сопоставление критичности
        • Настройка задач Auditor
      • Настройка ссылок репозиториев
      • Страница тегов
      • Экран активов
Powered by GitBook
On this page
  • Системные требования для использования Auditor:
  • Подготовка
  • Установка
  1. Auditor
  2. Установка

Установка

Пошаговое руководство по развертыванию Auditor

PreviousУстановкаNextОбновление

Last updated 10 days ago

Системные требования для использования Auditor:

  • Минимальные системные ресурсы: 16 ГБ ОЗУ и 4 ядра ЦПУ.

  • Свободное дисковое пространство для установки и хранения данных Auditor.

  • Доступ по сети до и от Security Center и к месту расположения вашего актива (месту расположения сканируемого продукта).

Для улучшения стабильности работы рекомендуется устанавливать Auditor и Security Center на разных машинах (физических или виртуальных)

Подготовка

Перед установкой Auditor убедитесь, что на вашем компьютере установлено следующее программное обеспечение:

Тип установки с использованием контейнеров:

  • (версия 19.03 или выше)

  • (версия 1.26 или выше)

  • (для установки через GitLab CI)

Установка в среде Kubernetes:

  • Helm сконфигурирован с кластером Kubernetes

Создание SSH-ключей

Чтобы безопасно подключиться к серверу Linux, вам нужно настроить SSH-ключи.

Если у вас еще нет SSH-ключей, вы можете сгенерировать их с помощью следующей команды в терминале сервера:

ssh-keygen

При копировании ключей убедитесь, что они скопированы без пробелов.

Установка SSH-ключа на сервер

После генерации SSH-ключей вам нужно скопировать открытый SSH-ключ на сервер Linux. Используйте эту команду для копирования открытого ключа:

ssh-copy-id <имя_пользователя>@<ip-адрес_сервера>

Замените <имя_пользователя> на имя пользователя вашей учетной записи Linux-сервера, а <ip-адрес_сервера> на IP-адрес Linux-сервера. Вам будет предложено ввести пароль для аутентификации.

Откройте на локальной машине файл, в котором хранится закрытый SSH-ключ. Закрытый ключ обычно сохраняется с расширением .pem или .ssh.

Выберите и скопируйте содержимое файла закрытого ключа. Убедитесь, что вы скопировали ключ с правильными разрешениями и разрывами строк.

При использовании в Заданиях сканеров, входящих в стандартную поставку продукта, необходимо разрешить доступ Auditor к удаленным ресурсам, расположенным по следующим адресам:

Сканер
URL-адреc

Обязательный для всех

*.docker.io

Checkov

pypi.org api0.prismacloud.io

Gitlab Semgrep

metrics.semgrep.dev

RetireJS

registry.npmjs.org raw.githubusercontent.com

Semgrep

semgrep.dev metrics.semgrep.dev

Snyk

pypi.org files.pythonhosted.org api.snyk.io

Terrascan

raw.githubusercontent.com github.com

Trivy Code Dependencies

ghcr.io pkg-containers.githubusercontent.com

Trivy Image Dependencies

ghcr.io pkg-containers.githubusercontent.com

Установка

Установка с использованием Helm

Перед использованием установите менеджер пакетов "Helm" для Kubernetes и сконфигурируйте подключение к кластеру

Шаг 1: Добавьте пакет Helm

Добавьте на локальный компьютер пакет Helm:

helm repo add auditor https://gitlab.cybercodereview.ru/api/v4/projects/7/packages/helm/stable

Шаг 2: Задайте переменные окружения

Задайте актуальную версию приложения:

global:
  image:
    tag: "1.0.0"

Задайте служебные переменные:

configs:
  configmap:
    variables:
      DOMAIN: "https://auditor.example.com"

Укажите в переменной DOMAIN хост, по которому будет доступен Auditor.

Задайте переменные для подключения к СУБД PostgreSQL:

configs:
  secret:
    variables:
      DB_HOST: "auditor-postgres" # имя Service в Kubernetes или внешний хост
      DB_PORT: "5432"
      DB_NAME: "auditor"
      DB_USER: "user"
      DB_PASS: "pass" 

Задайте переменные для подключения к СУБД Redis:

configs:
  secret:
    variables:
      REDIS_HOST: "auditor-redis-master" # имя Service в Kubernetes или внешний хост
      REDIS_PASSWORD: "11110000"

Задайте переменные для подключения к брокеру сообщений RabbitMQ:

configs:
  secret:
    variables:
      # auditor-rabbitmq - имя Service в Kubernetes или внешний хост
      AMQP_HOST_STRING: "amqp://user:pass@auditor-rabbitmq:5672"

Задайте параметры Ingress:

ingress:
  enabled: true
  host: "auditor.example.com"
  class: nginx
  tls:
    enabled: true
    secretName: "<имя секрета>"
  annotations:
  labels: {}
  path: "/"
  pathType: Prefix

При необходимости использования внешних хранилищ секретов необходимо выключить создание секретов при помощи Helm Chart:

configs:
  secret:
    create: false

Шаг 3: Развертывание приложения в кластер Kubernetes

В примере по умолчанию используется установленный ранее ingress controller "nginx" и PostgreSQL и RabbitMQ из Helm чарта:

helm install auditor auditor/appsecauditor -n <namespace> .

После первого входа вы получите Access Token.

Скопируйте и задайте переменную Access Token:

configs:
  secret:
    variables:
      ACCESS_TOKEN: "<value from web ui>"

Обновите инсталляцию:

helm upgrade auditor auditor/appsecauditor -n <namespace> .

Сохраните значение Access Token в безопасном месте для дальнейшего использования при настройке Auditor.

Установка с помощью Docker-compose

Шаг 1: Клонируйте репозиторий

Клонируйте репозиторий Auditor на свой сервер:

git clone https://gitlab.cybercodereview.ru/cybercodereview/auditor.git auditor

Шаг 2: Перейдите в корневой каталог

Перейдите в корневой каталог проекта Auditor, выполнив следующую команду:

cd auditor

Шаг 3: Задайте переменные окружения

Переменные окружения установлены по умолчанию. Если необходимо внести изменения, создайте файл .env в корневой папке проекта.

Пример файла .env:

DB_NAME=postgres
DB_USER=postgres
DB_PASS=postgres
DB_HOST=postgres
DB_PORT=5432
RABBITMQ_DEFAULT_USER=admin
RABBITMQ_DEFAULT_PASS=mypass
AMQP_HOST_STRING=amqp://admin:mypass@rabbitmq:5672/
DOCKER_ENCRYPTION_TOKEN=defaultvaluetobechangedorelse...
ACCESS_TOKEN=<your value>
IMAGE_VERSION=<актуальный тег>
  • DB_NAME, DB_USER, DB_PASS, DB_HOST, DB_PORT переменные, необходимые для настройки базы данных.

  • Если брокер сообщений размещен на стороннем сервере, то только переменная AMQP_HOST_STRING должна быть задана. Однако если контейнер поднимается локально, то все три переменные, включая RABBITMQ_DEFAULT_USER и RABBITMQ_DEFAULT_PASS должны быть заданы. Имя пользователя и пароль в переменных RABBITMQ_DEFAULT_PASS и RABBITMQ_DEFAULT_USER должны быть такими же, как в переменной AMQP_HOST_STRING.

  • DOCKER_ENCRYPTION_TOKEN эта переменная необходима при доступе к образам из приватного репозитория. Если ваш репозиторий требует аутентификации, укажите здесь соответствующий токен шифрования.

  • ACCESS_TOKEN: После первого запуска Auditor (шаг 4) вы получите значение токена доступа. Вы должны скопировать его и поместить эту переменную и ее значение в файл .env.

Шаг 4. Запустите Auditor

В командной строке терминала перейдите в каталог, где находится файл docker-compose.yml.

Запустите приложение, выполнив следующую команду:

docker compose up -d

Это запустит все службы, описанные в файле docker-compose.yml, в фоновом режиме.

После успешного выполнения команды docker-compose up -d ваше приложение должно быть доступно на порту, указанном в конфигурации (по умолчанию используется порт 8080).

После первого запуска вы получите Access Token. Скопируйте его и задайте в файле .env в качестве значения переменной ACCESS_TOKEN (шаг 3)

После добавления переменной необходимо перезапустить службу из командной строки с помощью команд:

docker compose down
docker compose up -d

Вариант 1: (установка в среде Kubernetes)

Вариант 2: (ручная установка docker-compose)

IMAGE_VERSION: эта переменная указывает версию образов Docker для запуска. Актуальный тег Вы можете найти на странице .

Сохраните значение ключа в безопасном месте для последующего использования в Auditor

🔦
📥
репозитория
настройках
⚠️
Docker
Docker Compose
SSH-ключи
Установка с помощью Helm
Установка с помощью Docker-compose