Документация по обеспечению безопасности DMT-SERVER

1. Хранение конфигурационных данных

  • Несекретные конфиденциальные данные хранятся в .env.
  • Секретные параметры хранятся через Docker Swarm Secrets.

2. Безопасность внешних соединений

  • Все внешние соединения защищены SSL/TLS.
  • Для настройки SSL/TLS необходимо выполнить команду:
    dmt-server reconfigure
  • В переменной «Путь к файлу SSL-сертификата» необходимо указать полный путь до файла сертификата.
  • В переменной «Путь к файлу SSL-ключа» необходимо указать полный путь до файла ключа.
  • В переменной «Адрес хоста в сети» необходимо указать доменное имя (например: example.com).
  • В переменную «Дополнительные разрешенные источники запросов (через пробел)» необходимо продублировать ранее указанное доменное имя
    (например: https://example.com).

3. Интерфейс возвращающий информацию о фактическом состоянии объектов аудита ИБ

Для получения информации о фактическом состоянии объектов аудита ИБ необходимо выполнить команду dmt-server reconfigure с хостовой машины.

Откроется конфигуратор, отображающий все необходимые данные по состояниям параметров аудита ИБ.

Основные параметры системы

  • Идентификатор системы: DMT-Server
  • Адрес хоста в сети: xx.xx.xx.xx
  • Дополнительные адреса хоста (через пробел): your-domain.com
  • Дополнительные разрешенные источники запросов (через пробел): http://your-domain.com:801
  • HTTP-порт веб-сервера: 80
  • HTTPS-порт веб-сервера: 443
  • Директория хранения загружаемых файлов: uploads_volume
  • Включить принудительное использование HTTPS (Y/n): false
  • Количество процессов веб-сервера: 6
  • Часовой пояс: Europe/Moscow
  • Минимальная длина пароля: 8
  • Пароль должен содержать буквы в разных регистрах: false
  • Пароль должен содержать цифры: true
  • Пароль должен содержать спецсимволы: false
  • Глубина истории паролей: 3
  • Обязательное изменение пароля при первом входе (Y/n): true
  • Ограничить время жизни пароля (Y/n): true
  • Время жизни пароля (дней): 31
  • Блокировать IP-адрес при превышении лимита попыток входа (Y/n): true
  • Лимит неудачных попыток входа: 3
  • Продолжительность блокировки IP-адреса (часов): 1
  • Режим debug (Y/n): true
  • Демо-режим (Y/n): false
  • Путь к файлу SSL-сертификата:
  • Путь к файлу SSL-ключа:
  • Аутентификация и авторизация через Keycloak (Y/n): true
  • Внешний URL сервера Keycloak: https://keyckoak.local:443
  • Внутренний URL сервера Keycloak: https://keyckoak.local:443
  • Наименование Keycloak Realm: RM-10000
  • ID клиента Keycloak: dmt-server
  • Время жизни сессии (сек): 120

Параметры логирования

  • Время хранения файлов журнала аудита безопасности (дней): 1
  • Время хранения файлов журнала системных событий (дней): 1
  • Время хранения сервисных лог-файлов (дней): 1
  • Использовать syslog (Y/n): true
  • Адрес сервера syslog: udp://хх.хх.хх.хх:хххх

4. Механизмы защиты от атак

  • Валидация входных данных на API.
  • Каждый сервис запускается в отдельном контейнере.
  • Минимальный сетевой доступ к контейнерам (ограничение экспонируемых портов).

5. Состав продукта и используемые порты

5.1. Проброшены наружу (доступны с хоста)

  • nginx
    • 8080/tcp
    • 443443/tcp
  • dmt-keycloak
    • 90968080/tcp
  • qr-service
    • 60618000/tcp

5.2. Не проброшены наружу (только внутри docker-сети)

  • dmt-worker — портов нет
  • dmt-beat — портов нет
  • dmt-web — портов нет
  • postgres5432/tcp (внутренний)
  • websocket_service — портов нет
  • redis6379/tcp (внутренний)

6. Регистрация событий ИБ

6.1. Регистрируемые события ИБ

Пользователи

  • user_created — Пользователь создан
  • user_updated — Данные пользователя изменены
  • user_removed — Пользователь удалён
  • user_privileges_updated — Права пользователя изменены

Подразделения / юниты

  • unit_created — Подразделение (юнит) создано
  • unit_updated — Подразделение (юнит) изменено
  • unit_removed — Подразделение (юнит) удалено

Файлы

  • file_created — Файл создан
  • file_updated — Файл изменён
  • file_removed — Файл удалён

Регистраторы

  • registrar_created — Регистратор создан
  • registrar_updated — Регистратор изменён
  • registrar_removed — Регистратор удалён

Связь пользователь ↔ подразделение

  • user_added_to_unit — Пользователь добавлен в подразделение
  • user_removed_from_unit — Пользователь удалён из подразделения
  • user_moved_to_another_unit — Пользователь перемещён в другое подразделение

Системные настройки

  • system_settings_changed — Системные настройки изменены
  • system_id_changed — Идентификатор системы изменён

Журналирование ИБ

  • sec_log_params_changed — Параметры журналирования ИБ изменены

Прочее

  • unspecified_event — Неопределённое событие

7. Хранилища данных

7.1. Docker Volumes

  • static_volume
  • media_volume
  • cache

7.2. uploads_volume / внешний путь

Изначально данные предполагается хранить в volume, но при развертке системы можно указать другой путь.
Поэтому в конфигурациях используется переменная: ${UPLOADS_PATH}

7.3. Использование volumes в контейнерах

web

  • static_volume:/home/app/web/static
  • media_volume:/home/app/web/media/content

nginx

  • static_volume:/home/app/web/static:ro
  • media_volume:/home/app/web/media/content:ro

redis

  • cache:/data

8. Требования к бэкапам

  • postgres_volume — обязательно
  • ${UPLOADS_PATH} или media_volume — опционально
  • (опционально) ИБ-логи: /var/log/dmt-server/audit

9. Процедура обращения к вендору (SECURITY)

  1. Сбор информации (логи, конфигурации, описание механизма воспроизведения).
  2. Обращение на почту s@dmtreg.ru (общая) или i@dmtreg.ru (отдел IT).
  3. Координация внедрения исправления (fix).
  4. Выпуск обновления с исправлениями.

Отправить заявку на бесплатное тестирование

Видеорегистратор на 1 месяц. Для юридических лиц

Я принимаю условия политики конфиденциальности