Установка

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

Системные требования для работы Security Center:

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

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

  • Сетевой доступ для внешних пользователей (пользователи должны иметь возможность подключаться к Security Center по сети).

triangle-exclamation

Подготовка

Перед установкой Security Center, убедитесь что у вас установлены следующие компоненты (для установки с помощью Docker Compose):

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

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

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

ssh-keygen

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

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

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

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

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

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

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

circle-info

Обратите внимание, что Security Center в настоящее время несовместим с базой данных Amazon Aurora.

circle-exclamation

Критичным для функционирования платформы является:

  • Единоразовый сетевой доступ к серверу лицензирования (https://license.cybercodereview.ruarrow-up-right) для активации лицензии

  • Сетевая связность машин Security Center и Auditor

  • Доступность системы контроля версий (GitLab, GitHub и пр.) и таск-трекера (Jira, YouTrack, Kaiten и др.)

  • SSO-провайдера организации к Security Center

Установка

chevron-rightУстановка с использованием Helmhashtag

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

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

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

Шаг 2: Обновите репозиторий с чартом

Это позволит получить информацию о последней версии нашего чарта

Шаг 3: Создайте файл values с настройками чарта

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

Шаг 4: Задайте переменные настройки чарта

Далее необходимо заполнить файл values.yaml.

Далее необходимо отредактировать values под Ваши нужды.

Тег

Начнем с поля global.image.tag. Чтобы узнать актуальный тег, необходимо перейти в список релизов нашего репозиторияarrow-up-right. Берем самый верхний тег, например, на скриншоте 2.7.1.

Например:

Webhook для интеграции с Jira

Для настройки Webhook добавьте в файл values.yaml следующие поля:

Замените "your-webhook" в значении переменной на предварительно сгенерированный Webhook в Jira.

Домен

Для указания доменного имени Вашего Auditor необходимо отредактировать поле configs.configmap.variables.DOMAIN. Например:

COOKIES_SECURE: переменная определяет флаг безопасной передачи cookies. Она должна быть установлена в значение True, если вы используете HTTPS.

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

Подключение к СУБД PostgreSQL

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

  • configs.configmap.variables.DB_HOST - Это может быть как именем сервиса в kubernetes, так и внешним хостом.

  • configs.configmap.variables.DB_PORT - Порт, на котором PostgreSQL "слушает" подключения.

  • configs.configmap.variables.DB_NAME - Имя базы данных, созданной для Auditor.

  • configs.configmap.variables.DB_USER - Пользователь для базы данных из верхнего пункта.

  • configs.configmap.variables.DB_PASS - Пароль от пользователя из пункта выше.

Значения по умолчанию:

Чтобы поменять значения по-умолчанию(которые принимает сама Postgre), необходимо изменить следующие поля:

Подключение к брокеру сообщений RabbitMQ

Данная строчка строится из нескольких частей:

  • amqp:// - Не меняем, служебная часть.

  • user - Логин для подключения.

  • : - Разделитель для пароля и логина.

  • pass - Пароль для подключения

  • @ - Разделитель для данных и хоста.

  • auditor-rabbitmq - Либо имя сервиса в Kubernetes, либо внешний хост.

  • : - Разделитель между хостом и портом.

  • 5672 - Порт, на котором RabbitMQ "слушает" подключения.

  • Значения по-умолчанию:

Чтобы поменять значения по-умолчанию(которые принимает именно RabbitMQ), необходимо изменить следующие поля:

Ingress

Ingress-контроллер - компонент Kubernetes, который управляет входящим трафиком для сервисов.

  • ingress.host - Доменное имя Вашего Auditor.

  • ingress.class - Класс контроллера в Вашем кластере.

  • ingress.tls.enabled - Включение TLS для Вашего Auditor.

  • ingress.tls.secretName - Имя Kubernetes секрета, в котором лежит Ваш сертификат. Если верхнее поле false, можно игнорировать данное поле.

Значения по-умолчанию:

Другие настройки

Секреты

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

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

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

Шаг 6: Создайте пользователя с привилегированными правами

Для создания пользователя с привилегированными правами выполните следующие команды:

Этот пользователь и пароль позволяют выполнить вход в установленный Security Center

Следующий шаг: Запустите Security Center и добавьте лицензию

chevron-rightУстановка через Docker-composehashtag

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

Клонируйте репозиторий Security Center на Ваш сервер:

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

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

Шаг 3: Переместите файлы из папки docker-compose

В корневом каталоге проекта Security Center выполните следующую команду:

Шаг 4: Настройте переменные окружения

В корневом каталоге проекта Security Center выполните следующую команду:

Сценарий запрашивает значения для следующих переменных окружения, включая необязательные. Вы также можете принять значения по умолчанию для необязательных переменных, нажав Enter:

  • Переменная IMAGE_VERSION обязательно должна быть задана. Укажите версию приложения, например, 1.0.0, и скрипт установит последнюю актуальную версию. Актуальный тег Вы можете найти в репозиторииarrow-up-right.

  • Переменная DOMAIN обязательно должна быть задана. Укажите домен, в котором будет доступен Security Center

  • 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.

  • Переменная COOKIES_SECURE определяет флаг безопасности cookie. Она должна иметь значение True при использовании HTTPS.

Скрипт set_vars.sh создает файл .env с настроенными переменными окружения и генерирует пару JWT-ключей, которые используются для подписи JWT-ключей, а SECRET_KEY используется для генерации хэшей в Django.

НЕ ЗАПУСКАЙТЕ команду ./set_vars.sh дважды. Если вам нужно изменить значение переменной, сделайте это в файле .env.

Шаг 5: Запустите Security Center

Чтобы запустить Security Center, выполните следующую команду:

Шаг 6: Создайте учетную запись администратора

Чтобы создать учетную запись администратора, выполните следующую команду:

Это имя пользователя и пароль позволят вам войти в установленный Security Center

или

Создайте пользователей с помощью панели администратора Django

Чтобы получить доступ к настройкам администратора, перейдите по URL-адресу <ваш-домен>.com/admin и войдите в систему, используя учетные данные суперпользователя, затем выберите Users на левой панели. Отсюда вы можете добавлять пользователей. Не забудьте назначить пользователям необходимые разрешения.

Следующий шаг: Запустите Security Center и добавьте лицензию

Поздравляем, вы завершили установку Security Center! Далее добавьте полученную лицензию.

Если у вас возникнут какие-либо вопросы или проблемы в процессе установки или использования приложения, обратитесь за помощью в нашу службу поддержки [email protected].

Last updated