Установка SECURITM
Куда я попал?
Инструкция по установке On-Premise (локальной) версии SECURITM в инфраструктуре.
Есть 2 варианта локальной установки:
Есть 2 варианта локальной установки:
- Набор Docker-контейнеров, устанавливаемых на Linux сервер
- Набор сервисов, устанавливаемых в среду Kubernetes
Подготовка к установке
Получение секретов
Для установки локальной версии SECURITM требуется получить у производителя ключи и лицензии для установки.
Создание сервера
В базовой комплектации SECURITM устанавливается на 1 Linux сервер (виртуальную машину).
Подходит любой Linux дистрибутив свежей сборки: Ubuntu, CentOS, Astra Linux, РЕД ОС, МОС ОС и т.п.
Подходит любой Linux дистрибутив свежей сборки: Ubuntu, CentOS, Astra Linux, РЕД ОС, МОС ОС и т.п.
Рекомендуемые требования к виртуальной машине (ВМ)
- CPU: 6-12 шт. (если в инфраструктуре более 10 тыс. активов, рекомендуется выделить 12 vCPU);
- RAM: 16-32 ГБ;
- SSD: 100 ГБ (для разделов /opt и /var нужно минимум по 50 ГБ);
- Учетная запись: должна входить в группу sudo, или обладать root правами.
- Операционная система: Linux Ubuntu, CentOS, Astra Linux, РЕД ОС, МОС ОС и т.д.
Обновление операционной системы
DEB-based
sudo apt-get updateRPM-based
sudo yum updateУстановка Docker и Docker Compose
На большинстве Linux-дистрибутивов последние стабильные версии Docker CLI, Docker Engine, Docker Compose и их зависимости устанавливаются при помощи официального скрипта. Для этого выполните команды:
curl -fsSL https://get.docker.com -o install-docker.sh
sudo sh install-docker.shПодробнее о способах установки написано в официальной документации:
- Docker: https://docs.docker.com/engine/installation/
- Docker Compose: https://docs.docker.com/compose/install/linux/
Примечание:
Установка Docker и Docker Compose на Red OS, Astra Linux и других отечественных диcтрибутивах может отличаться от официальных инструкций. В частности, на Astra Linux установку можно выполнить из официальных репозиториев:
Установка Docker и Docker Compose на Red OS, Astra Linux и других отечественных диcтрибутивах может отличаться от официальных инструкций. В частности, на Astra Linux установку можно выполнить из официальных репозиториев:
sudo apt-get install docker.io
sudo apt-get install docker-composeНастройка сети
Если для сервера, на котором устанавливается SECURITM, доступ в Интернет по умолчанию заблокирован, то нужно разрешить доступ к следующим узлам:
- https://hub.securitm.ru (217.25.93.157, tcp/443) — для установки и обновлений приложения;
- https://git.securitm.ru (217.25.93.157, tcp/443) — для установки и обновлений приложения;
- https://service.securitm.ru (188.225.86.7, tcp/443) — для первичной установки и обновлений базы данных;
- https://lic.securitm.ru (87.249.53.99, tcp/443) — для активации и проверки лицензии.
Настройка доменной инфраструктуры
- Создайте на корпоративном DNS сервере A запись ведущую на сервер SECURITM.
например securitm.mycorp.local - Создайте на корпоративном удостоверяющем центре сертификат для сервера SECURITM:
- server.crt — сертификат для вашего сервера;
- server.key — закрытый ключ RSA для вашего сервера (без пароля).
- Создайте адрес электронной почты для интеграции SECURITM с корпоративным почтовым сервером. В паролях не должно быть кавычек.
- Создайте доменную учетную запись в корпоративном домене (доменах) для интеграции SECURITM с доменной инфраструктурой. Нужна учетная запись без прав администратора.
- Создайте в домене группу, в которой будут пользователи, которым разрешена доменная аутентификация в SECURITM. Вложенность групп работает. Это может быть уже существующая группа, например группа подразделения по информационной безопасности.
Примечание: у пользователей, входящих в группу, должен быть указан уникальный email, т.к. в SECURITM пользователи привязываются к email.
Установка приложения
Развертывание и настройка Docker контейнеров с компонентами приложения осуществляется через bash скрипт securitm.sh. При запуске скрипт проверяет права суперпользователя и автоматически повышает их при необходимости. Запуск скрипта без аргументов выполняет стандартную установку, или обновление приложения.
Структура приложения
Файлы и каталоги, необходимые для работы SECURITM, размещаются в директории:
/opt/securitmСтруктура каталога автоматически создается при выполнении скрипта securitm.sh и имеет вид:
/opt/securitm/ # Корневой каталог приложения
├ backup/ # Бэкапы по умолчанию (при необходимости)
├ certs/ # SSL сертификат веб-сайта (при необходимости)
│ └ ca/ # Корневые сертификаты локальных УЦ (при необходимости)
├ php/ # Собственные настройки PHP (при необходимости)
├ .env # Файл с переменными окружения
└ docker-compose.yaml # Файл с настройками сервисовСписок контейнеров (может изменяться в процессе разработки):
- app – основное приложение SECURITM;
- db – база данных;
- nginx – веб-сервер;
- service – дополнительные сервисные задачи;
- redis – БД redis;
- pg – БД PostgreSQL.
Загрузка и выполнение скрипта установки/обновления
1. Создайте директорию и перейдите в нее:
mkdir securitm
cd securitm2. Скопируйте скрипт securitm.sh и дайте права на исполнение:
wget [URL]
chmod +x securitm.sh[URL] – адрес для скачивания скрипта установки, предоставляется после приобретения лицензии.
3. Запустите скрипт securitm.sh
./securitm.sh4. В процессе выполнения скрипта будут запрошены следующие параметры:
- Прокси сервер (при необходимости);
- Список исключений через запятую, для которых прокси сервер не должен использоваться (при необходимости);
- Имя пользователя и пароль для доступа к GIT репозиторию (предоставляется после приобретения лицензии);
- Доменное имя сервера, по которому SECURITM будет доступен в локальной инфраструктуре (при необходимости).
5. После подтверждения начала установки, или обновления, в директории /opt/securitm будут сформированы файлы и каталоги:
- .env – файл с переменными окружения;
- docker-compose.yaml – файл, содержащий инструкции, необходимые для запуска и настройки сервисов;
- certs – директория для размещения SSL сертификата для сайта, или/и корневых сертификатов локального удостоверяющего центра (при необходимости). По умолчанию генерируется самоподписанный сертификат;
- php – директория для размещения файлов конфигурации PHP с собственными настройками (при необходимости).
6. После установки и начальной загрузки данных из GIT репозитория, скрипт напишет об успешном завершении и выведет URL для подключения к веб-интерфейсу.
Все последующие настройки, кроме импорта сертификата, осуществляются из веб-интерфейса приложения.
Все последующие настройки, кроме импорта сертификата, осуществляются из веб-интерфейса приложения.
Установка собственного SSL сертификата
При необходимости можно установить собственный сертификат для подключения к веб-интерфейсу по доменному имени, указанному в процессе установки.
Для этого необходимо в директории /opt/securitm/certs разместить два файла:
Для этого необходимо в директории /opt/securitm/certs разместить два файла:
- server.crt – сертификат для вашего сервера;
- server.key – закрытый ключ RSA для вашего сервера.
И перезапустить контейнер nginx:
cd /opt/securitm
sudo docker compose restart nginx
(либо sudo docker-compose restart nginx)Установка корневых сертификатов собственного удостоверяющего центра (УЦ)
В случае инспекции https трафика средствами защиты информации организации необходимо установить собственные корневые сертификаты в контейнер app. Для этого необходимо в директорию /opt/securitm/certs/ca скопировать файлы сертификатов с расширением .crt:
sudo mkdir /opt/securitm/certs/ca
sudo cp /your/ca/path/*.crt /opt/securitm/certs/ca/И перезапустить контейнер app:
cd /opt/securitm
sudo docker compose restart app
(либо sudo docker-compose restart app)Терминация SSL
Если необходимо обеспечить работу веб-сервера SECURITM по HTTP протоколу, например в случае размещения сервиса за корпоративным балансировщиком, необходимо внести следующие изменения в файл /opt/securitm/docker-compose.override.yaml:
services:
nginx:
environment:
- NGINX_TLS=falseПосле чего пересоздать docker контейнер nginx:
cd /opt/securitm/
sudo docker compose up -dСобственные настройки PHP и PHP-FPM
При необходимости можно задать собственные настройки PHP, или/и PHP-FPM. Для этого необходимо в директории /opt/securitm/php разместить файлы:
- php.ini – настройки PHP;
- php-fpm.conf – настройки PHP-FPM.
И перезапустить контейнер app:
cd /opt/securitm
sudo docker compose restart app
(либо sudo docker-compose restart app)Список всех ключей скрипта securitm.sh
-m modeРежим работы. Может принимать значения:
install (по умолчанию) – установка, или обновление;
reinstall – переустановка (используется по согласованию с техподдержкой);
backup – резервное копирование;
backupdontstop – резервное копирование без остановки работы приложения (использовать с осторожностью!);
restore – восстановление из резервной копии.
backupdontstop – резервное копирование без остановки работы приложения (использовать с осторожностью!);
restore – восстановление из резервной копии.
-p pathНеобязательный параметр с указанием произвольного пути для хранения/восстановления бэкапов. По умолчанию используется путь /opt/securitm/backup
-yОтвечать “Да” на все вопросы. Ключ используется при бэкапе через cron.
-g custom-git-urlПри использовании собственного зеркала GIT репозитория здесь указывается его URL.
-d custom-registryПри использовании собственного Docker Registry здесь указывается его доменное имя.
-s subnetЕсли подсеть докера пересекается с Вашими локальными подсетями, здесь можно указать произвольную подсеть для контейнеров в формате Network/Bitmask. Например:
-s 10.0.0.0/24
-s 10.0.0.0/24
-c no|yesЕсли Вы хотите отключить проверку сертификатов при работе с GIT репозиторием, используйте этот ключ со значением no. Внимание! Настоятельно не рекомендуется! Правильным решением является установка в контейнер корневых сертификатов Ваших УЦ.
-nНе проверять обновления образов и не загружать новые версии. Данный ключ можно использовать, если необходимо только изменить конфигурацию и не выполнять обновление.
Приложение готово к работе 🎉
Первичная настройка приложения
- Откройте в браузере веб-интерфейс приложения по доменному имени сервера.
- Действуйте в соответствии с Мастером установки
- Укажите электронную почту и пароль глобального администратора приложения.
Примечание: после установки приложения электронную почту глобального администратора можно поменять в глобальных настройках. - Укажите название и URL приложения, соответствующий доменному имени сервера.
- Настройте подключение к электронной почте.
Для серверов Exchange подключение настраивается по порту 587, для иных почтовых серверов по 25 или 2525. - Укажите название для общей команды (тенанта).
Примечание: именно на эту команду будет активирована лицензия. - Активируйте лицензию.
- Обновите код и базу данных приложения, для этого необходимо:
- указать логин/пароль для подключения к репозиторию и сохранить настройки;
- проверить подключение и Обновить код приложения;
- проверить подключение и Обновить базу данных.
Примечание: обновление базы данных может занимать до 10 минут. - Настройте интеграцию с Active Directory (не обязательно):
- Поле Имя почтового домена нужно, если учетная запись пользователя в домене отличается от его почтового адреса и поля userPrincipalName;
- В поле Команда для новых пользователей нужно указать название созданной команды (например, MyCorp);
- Проверьте подключение и запустите Синхронизацию пользователей. - Настройте импорт активов с Active Directory (не обязательно).
Инструкция: https://service.securitm.ru/help/integrations#active-directory - Настройте интеграцию с Kaspersky (не обязательно).
- Настройте интеграцию с Zabbix (не обязательно).
- Укажите электронную почту и пароль глобального администратора приложения.
Обновление и переустановка
Обновление
Обновление кода и базы данных приложения происходит автоматически, настраивается и запускается в Глобальных настройках приложения вручную.
Периодически публикуются новые версии сборок контейнеров SECURITM. О необходимости обновления сборок Docker контейнеров сообщает техническая поддержка.
Для обновления контейнеров SECURITM нужно подключиться по SSH к серверу, запустить свежий скрипт установки и следовать инструкциям.
sudo bash -c "$(curl -sSL [URL])"Переустановка приложения
В ряде ситуаций, когда приложение вышло из строя и пропал доступ к web консоли, может потребоваться переустановка приложения с сохранением базы данных, файлов и параметров. Сделать это можно следующим способом:
1. Подключитесь к серверу приложения по SSH.
2. Скачайте актуальный установочный скрипт SECURITM:
1. Подключитесь к серверу приложения по SSH.
2. Скачайте актуальный установочный скрипт SECURITM:
wget securitm.sh
chmod +x securitm.sh3. Запустите скрипт установки в режиме переустановки приложения:
./securitm.sh -m reinstallВнимание: если вы вносили произвольные изменения в скрипты установки и конфигурационный файл docker-compose.yaml, то их следует сохранить.
4. Будет выполнено резервное копирование базы данных, данных приложения, переустановка приложения и восстановление данных.
Полезные команды Docker (не нужны при эксплуатации системы, приведены для справки)
# Переход в каталог с контейнерами приложения
cd /opt/securitm/# Переход в контекст суперпользователя (root)
sudo -s# Загрузка новых версий образов
docker compose pull# (Пере)Запуск приложения после загрузки новых версий образов
docker compose up -d# Просмотр событий в контейнере приложения
docker compose logs -f app# Старт/стоп/перезапуск контейнера приложения
docker compose start/stop/restart app# Зайти в контейнер приложения
docker compose exec --user www-data app bash# Отключение/удаление контейнеров
docker compose downdocker stop $(docker ps -a -q) # остановка всех контейнеров
docker rm $(docker ps -a -q) # удаление всех контейнеров
#docker volume rm securitm_app-data securitm_app-src securitm_nginx-data securitm_db-pg-data securitm_db-data securitm_pg-data # удаление всех хранилищ
docker stats --no-stream # нагрузка на контейнерыРезервное копирование
Скрипт securitm.sh имеет функционал по созданию резервных копий БД и пользовательских данных либо в интерактивном (ручном) режиме, либо автоматически через cron.
Для создания бэкапа в ручном режиме выполните:
securitm.sh -m backupСкрипт предупредит о необходимости остановки на момент бэкапа приложения app (с целью исключения работы с БД в процессе бэкапа и тем самым дополнительной защиты целостности данных). И после получения согласия снимет дамп БД и скопирует другие критичные пользовательские данные в папку:
/opt/securitm/backup/DATE-ISO(где DATE-ISO – текущая дата и время в формате ISO 8601, например 2024-07-08T11:40:55+03:00)
Для создания бэкапа в автоматическом режиме добавьте ключ -y (отвечать “Да” на все вопросы):
securitm.sh -m backup -yЕсли Вы не хотите останавливать контейнер app в процессе выгрузки дампа базы данных, при этом Вы знаете, что в процессе бэкапа данные в БД не изменяются, можете использовать значение аргумента -m backupdontstop
securitm.sh -m backupdontstop [-y](ключ -y добавляется при необходимости)
Если Вы хотите указать другой каталог для бэкапов, используйте аргумент -p:
securitm.sh -m backup -p /my/backup/path [-y]
securitm.sh -m backupdontstop -p /my/backup/path [-y](ключ -y добавляется при необходимости)
Примечание: при создании резервных копий автоматическая ротация предыдущих бэкапов не выполняется. Например, если Вы хотите оставить 10 последних бэкапов, можно использовать следующий сценарий резервного копирования:
securitm.sh -m backup -p /my/backup/path -y
rm -rf $(ls -d1t /my/backup/path/*/ | tail -n +11)(в данном примере используется путь /my/backup/path)
Перенос базы данных на отдельный сервер
По умолчанию система устанавливается на 1 сервер. Но для больших инфраструктур (более 50 тыс. рабочих мест) рекомендуется выносить СУБД на отдельный сервер.
Для переноса базы данных PostgreSQL (далее – БД) из docker контейнера на внешний сервер необходимо подготовить виртуальный, или физический сервер со следующими минимальными характеристиками (рекомендация):
Для переноса базы данных PostgreSQL (далее – БД) из docker контейнера на внешний сервер необходимо подготовить виртуальный, или физический сервер со следующими минимальными характеристиками (рекомендация):
- PostgreSQL версии 17 (гарантировано работает на 17.6);
- 4 CPU;
- 8 Гб RAM;
- 80 Гб NVMe/SSD в разделе для хранения баз данных.
Примечание: если в вашей инфраструктуре более 10 тыс. активов, рекомендуется выделить от 12 CPU и от 16 Гб RAM.
Создание БД и пользователя
Предварительно на внешнем сервере необходимо создать 2 базы данных:
Создание БД и пользователя
Предварительно на внешнем сервере необходимо создать 2 базы данных:
- securitm_data
- securitm_static
Необходимо создать пользователя securitm для двух БД и выдать ему необходимые права.
Пример:
Пример:
CREATE DATABASE securitm_data;
CREATE DATABASE securitm_static;
CREATE USER securitm;
ALTER USER securitm WITH ENCRYPTED PASSWORD 'P@ssw0rd';
GRANT ALL ON DATABASE securitm_data TO securitm;
GRANT ALL ON DATABASE securitm_static TO securitm;
c securitm_data
ALTER SCHEMA public OWNER TO securitm;
GRANT ALL ON SCHEMA public TO securitm;
ALTER DEFAULT PRIVILEGES GRANT ALL ON SCHEMAS TO securitm;
ALTER DEFAULT PRIVILEGES GRANT ALL ON FUNCTIONS TO securitm;
c securitm_static
ALTER SCHEMA public OWNER TO securitm;
GRANT ALL ON SCHEMA public TO securitm;
ALTER DEFAULT PRIVILEGES GRANT ALL ON SCHEMAS TO securitm;
ALTER DEFAULT PRIVILEGES GRANT ALL ON FUNCTIONS TO securitm;Примечание: имена БД, пользователь и пароль могут быть другими. Главное их правильно указать в файле конфигурации.
Настройка параметров PostgreSQL
Рекомендуется (при необходимости) оптимизировать параметры в конфигурационном файле postgresql.conf, т.к. значения по умолчанию неоптимальны.
В файлах postgresql.conf и pg_hba.conf по умолчанию разрешены только локальные подключения. Для подключения с внешнего хоста этот параметр также следует изменить.
Для разрешения внешних подключений к БД в файл postgresql.conf добавляется/изменяется строка:
listen_addresses = '*'Для разрешения внешних подключений к БД в файл pg_hba.conf добавляется строка:
host all all all scram-sha-256Настройки параметров в файле postgresql.conf зависят от размера ОЗУ, количества ядер и типа хранилища (настоятельно рекомендуется SSD).
После правки конфигов PostgreSQL необходимо перезапустить сервис postgresql:
sudo systemctl restart postgresqlСоздание дампа БД
Потребуется актуальная версия скрипта установки securitm.sh, которая может быть загружена с сайта SECURITM.
Подключаемся через SSH серверу, на котором запущено приложение SECURITM в docker, и загружаем скрипт установки:
mkdir -p ~/securitm
cd ~/securitm/
wget -O securitm.sh https://[URL]/securitm.sh
# или
# curl -o securitm.sh https://[URL]/securitm.sh
chmod +x securitm.sh(где [URL] – адрес для скачивания скрипта установки, предоставляется после приобретения лицензии).
Выполняем резервное копирование (дамп) БД, работающей в docker контейнере:
Выполняем резервное копирование (дамп) БД, работающей в docker контейнере:
./securitm.sh -m backupИзменение настроек подключения к внешнему PostgreSQL серверу
Необходимо отредактировать, или создать, файл /opt/securitm/docker-compose.override.yaml
В блок определения переменных для сервиса app добавляем параметры подключения. Для сервиса db-pg задаем профиль "manual", т.к. его автоматический запуск больше не требуется.
services:
app:
environment:
- LARA_DB_HOST_DATA=pg.server.local
- LARA_DB_HOST_STATIC=pg.server.local
- LARA_DB_PASSWORD_DATA=P@ssw0rd
- LARA_DB_PASSWORD_STATIC=P@ssw0rd
db-pg:
profiles:
- manualгде pg.server.local - адрес сервера;
P@ssw0rd - пароль на БД.
Восстановление БД на внешний сервер
Выполняем восстановление из созданной ранее резервной копии:
P@ssw0rd - пароль на БД.
Восстановление БД на внешний сервер
Выполняем восстановление из созданной ранее резервной копии:
./securitm.sh -m restoreПосле успешного восстановления удалим запущенный в контейнере экземпляр PostgreSQL.
cd /opt/securitm/
sudo docker compose down db-pgПосле того, как вы убедились, что данные полностью скопировались на внешний PostgreSQL сервер, система работает как надо, и данные из локального экземпляра PostgreSQL больше не нужны, вы можете их удалить:
# Внимание! Сейчас все данные контейнера PostgreSQL будут удалены!
sudo docker volume rm securitm_db-pg-dataУстановка в Kubernetes
Установка и обновление выполняется через Helm Chart. В чарте используется Ingress-контроллер Nginx. Если в кластере развернут другой Ingress-контроллер, будет необходимо изменить чарт.
Установка Helm (при необходимости)
Если на рабочем месте, откуда выполняется управление Kubernetes при помощи утилиты kubectl, не установлен Helm, сделать это можно следующим образом:
sudo apt -y install git curl
curl https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bashДля работы helm необходим файл конфигурации ~/.kube/config. Если он еще не сконфигурирован, можно настроить его так:
# Бэкапим текущий файл настроек при его наличии
[ -f ~/.kube/config ] && cp ~/.kube/config ~/.kube/config.$(date +%s)
# Настраиваем
kubectl config view --raw > ~/.kube/configУстановка ingress-nginx (при необходимости)
В данном примере ingress-nginx устанавливается в одноименный namespace ingress-nginx.
helm upgrade ingress-nginx ingress-nginx --repo https://kubernetes.github.io/ingress-nginx --install --namespace ingress-nginx --create-namespaceЗагрузка чарта securitm, подготовка файла конфигурации
Все действия будем выполнять в директории ~/charts/
# Создадим директорию и перейдем в нее
mkdir -p ~/charts/ && cd ~/charts/
# Загрузим и распакуем чарт securitm
curl -o securitm-chart.tgz https://[kubernetes_install_url]/charts/securitm-chart.tgz
tar xzf securitm-chart.tgz
# Загрузим пример файла конфигурации
curl -o values-override-example.yaml https://[kubernetes_install_url]/charts/values-override-example.yaml
cp values-override-example.yaml values-override.yamlРедактируем файл с настройками
В примере выше мы скопировали файл с примером конфигурации с файл с именем values-override.yaml. Его и будем использовать далее.
Открываем файл values-override.yaml на редактирование и указываем необходимые параметры. В примере часть параметров закомментирована. При раскомментировании необходимо соблюдать отступы пробелами вы соответствии с синтаксисом YAML.
Блоки верхнего уровня определяют настройки для деплойментов Kubernetes (компоненты SECURITM):
- global:
Глобальные настройки. - app:
Основное приложение SECURITM. - ui:
Настройки Ingress-Nginx. - db-pg:
БД PostgreSQL - redis:
БД Redis - web:
Веб-сервер
Основные настройки
global:
domain: securitm.domain.local
timezone: Europe/MoscowЗдесь указывается доменное имя, под которым SECURITM будет открываться в веб-браузере. А также временная зона.
app:
GIT_USER: [username]
GIT_PASSWORD: [P@ssw0rd]
# Example: http://proxy.domain.local:3128
PROXY:
# Example: 10.0.0.0/8,192.168.0.0/16,.domain.local
NO_PROXY: Здесь указывается имя пользователя и пароль для доступа к Git репозиторию SECURITM, а также при необходимости можно задать переменные для прокси и для исключения из прокси.
Настройка TLS сертификата
Содержимое файлов crt (сертификат) и key (ключ) указывается в виде base64 строк. Получить данное содержимое можно следующим образом.
В данном примере файл сертификата называется server.crt, файл ключа server.key. Base64 содержимое server.crt записывается в переменную tls.crt, содержимое server.key в tls.key.
cat server.crt | base64
cat server.key | base64Соответствующие строки указываем в переменных
ui:
certificate:
tls.crt: |
base64string1
base64string2
base64string...
base64stringN
tls.key: |
base64string1
base64string2
base64string...
base64stringNОбязательно соблюдаем отступы пробелами.
Дополнительные настройки
Очень важным является определение настроек для хранилищ данных и ресурсов. Для этого в каждом блоке компонентов есть разделы storage: и resources:
По умолчанию для сущностей PVC/PV используется StorageClass local-path , что неверно при работе в кластере с общими файловыми хранилищами. Поэтому необходимо задать собственные параметры с тем учетом, что вольюм для БД (компонент db-pg: ) необходимо разместить на быстрых SSD хранилищах и с возможностью расширения в дальнейшем.
Пример:
db-pg:
storage:
data:
size: 50Gi
ClassName: local-path
resources:
requests:
cpu: "2"
memory: 4Gi
limits:
cpu: "16"
memory: 32GiУстановка чарта, запуск SECURITM
После формирования файла с переменными values-override.yaml выполняем установку Helm чарта.
helm upgrade securitm securitm --install --namespace=securitm --create-namespace --values values-override.yamlПосле первичной инициализации SECURITM должен быть доступен по доменному имени, определенному в настройках:
https://securitm.domain.local (в нашем примере это securitm.domain.local)
Указанное доменное имя должно разрешаться в IP адрес(а) Kubernetes кластера, через которые выполняется балансировка веб-приложений.
Полезные команды
Узнать сгенерированный при установке пароль от БД:
kubectl -n securitm get secrets/securitm-dbpwd --template='{{ index .data "db-password" | base64decode }}{{ "
" }}'
Развертывание в docker rootless режиме
Для развертывания SECURITM в docker rootless режиме необходимо установить и настроить docker в соответствии с инструкцией:
https://docs.docker.com/go/rootless/
К примеру, для ОС Ubuntu версий 22.04 и старше, где уже установлен docker в обычном режиме, последовательность действий сводится к следующим шагам.
1. Запустите скрипт установки docker rootless:
https://docs.docker.com/go/rootless/
К примеру, для ОС Ubuntu версий 22.04 и старше, где уже установлен docker в обычном режиме, последовательность действий сводится к следующим шагам.
1. Запустите скрипт установки docker rootless:
dockerd-rootless-setuptool.sh install2. В случае необходимости установки зависимостей скрипт выдаст инструкцию, что необходимо сделать. Например установить утилиты newuidmap и newgidmap:
sudo sh -eux <<EOF
# Install newuidmap & newgidmap binaries
apt-get install -y uidmap
EOF3. В случае ошибки в п. 1 и последующей установки зависимостей в п. 2, повторно запустите скрипт установки docker rootless:
dockerd-rootless-setuptool.sh install4. Разрешите утилите rootlesskit использовать привилегированные порты (ниже 1024), чтобы веб-сервер SECURITM смог работать на портах tcp/80 и 443:
sudo setcap cap_net_bind_service=ep $(which rootlesskit)
systemctl --user restart docker5. Разрешите непрерывную работу сервисов для пользователя, под которым будет работать docker rootless:
sudo loginctl enable-linger $USER6. Если нет необходимости использовать docker в обычном режиме, его системные сервисы можно отключить:
sudo systemctl disable --now docker.service docker.socketИспользование скрипта установки SECURITM
Для того, чтобы скрипт установки securitm.sh стал работать в docker rootless режиме, его имя должно быть securitm-rootless.sh.
Чтобы оставить возможность работы в обоих режимах, а также не копировать скрипт после каждого обновления, можно сделать ссылку с именем securitm-rootless.sh на securitm.sh.
ln -s securitm.sh securitm-rootless.shИзменения в путях к каталогам с данными
При работе в docker rootless режиме данные приложения и данные docker будут храниться в домашней папке пользователя.
Данные приложения
При работе в обычном режиме:
/opt/securitm/При работе в docker rootless режиме:
~/opt/securitm/Данные docker
При работе в обычном режиме:
/var/lib/docker/При работе в docker rootless режиме:
~/.local/share/docker/Скрипт securitm.sh
При работе в обычном режиме:
~/securitm/securitm.shПри работе в docker rootless режиме:
~/securitm/securitm-rootless.sh- О сервисе
- Управление активами
- Управление рисками
- Угрозы
- Каталоги
- Уязвимости
- Соответствие требованиям
- Управление защитными мерами
- Управление техническими уязвимостями
- Области
- Метрики
- Опросы и Заявки
- Управление задачами
- Автоматизация процессов (RPA)
- Профиль команды
- Глобальные настройки
- Интеграции
- API
- Установка SECURITM
- Мой профиль
- Библиотека скриптов
- О компании
- Правила технической поддержки
- Оферта
- EULA
- Согласие на обработку персональных данных
- Согласие на получение рассылок
- Политика обработки ПДн
- Политика cookie
Мы используем cookie-файлы, чтобы получить статистику, которая помогает нам улучшить сервис для вас с целью персонализации сервисов и предложений. Вы может прочитать подробнее о cookie-файлах или изменить настройки браузера. Продолжая пользоваться сайтом, вы даёте согласие на использование ваших cookie-файлов и соглашаетесь с Политикой обработки персональных данных.