Загрузка аудитных логов в Yandex Managed Service for OpenSearch
- Перед началом работы
- Создайте трейл, который отправляет логи в поток данных Data Streams
- Создайте кластер Managed Service for OpenSearch
- Настройте трансфер для доставки логов в кластер Managed Service for OpenSearch
- Проверьте результат
- Загрузите дополнительный контент
- Удалите созданные ресурсы
- Дополнительные материалы
Создайте трейл, который будет загружать аудитные логи ресурсов Yandex Cloud в поток данных Yandex Data Streams. Затем настройте непрерывную доставку логов в кластер Yandex Managed Service for OpenSearch с помощью Yandex Data Transfer.
Вы можете выгружать логи организации, облака или каталога.
Чтобы экспортировать аудитные логи:
- Подготовьте облако к работе.
- Создайте трейл, который отправляет логи в поток данных Data Streams.
- Создайте кластер Managed Service for OpenSearch.
- Настройте трансфер для доставки логов в кластер Managed Service for OpenSearch.
- Проверьте результат.
- Загрузите дополнительный контент.
Если созданные ресурсы вам больше не нужны, удалите их.
Перед началом работы
Зарегистрируйтесь в Yandex Cloud и создайте платежный аккаунт:
- Перейдите в консоль управления
, затем войдите в Yandex Cloud или зарегистрируйтесь. - На странице Yandex Cloud Billing
убедитесь, что у вас подключен платежный аккаунт, и он находится в статусеACTIVE
илиTRIAL_ACTIVE
. Если платежного аккаунта нет, создайте его и привяжите к нему облако.
Если у вас есть активный платежный аккаунт, вы можете создать или выбрать каталог, в котором будет работать ваша инфраструктура, на странице облака
Подробнее об облаках и каталогах.
Необходимые платные ресурсы
В стоимость поддержки инфраструктуры входит:
- плата за вычислительные ресурсы и объем хранилища кластера OpenSearch (см. тарифы Yandex Managed Service for OpenSearch).
- использование потока данных (см. тарифы Data Streams).
- использование Yandex Managed Service for YDB в бессерверном режиме (см. тарифы Managed Service for YDB).
Создайте трейл, который отправляет логи в поток данных Data Streams
Создайте трейл, который отправляет логи в поток данных с именем audit‑trails
. Использование потока с таким именем позволяет упростить загрузку объектов библиотеки Security Content.
При создании трейла выберите нужную область сбора логов.
Создайте кластер Managed Service for OpenSearch
Создайте кластер Managed Service for OpenSearch любой подходящей конфигурации.
-
Если у вас еще нет Terraform, установите его.
-
Получите данные для аутентификации. Вы можете добавить их в переменные окружения или указать далее в файле с настройками провайдера.
-
Настройте и инициализируйте провайдер. Чтобы не создавать конфигурационный файл с настройками провайдера вручную, скачайте его
. -
Поместите конфигурационный файл в отдельную рабочую директорию и укажите значения параметров. Если данные для аутентификации не были добавлены в переменные окружения, укажите их в конфигурационном файле.
-
Скачайте в ту же рабочую директорию файл конфигурации trails-to-opensearch.tf
.В этом файле описаны:
- сеть;
- подсеть;
- группа безопасности и правила, необходимые для подключения к кластеру Managed Service for OpenSearch;
- кластер-приемник Managed Service for OpenSearch;
- трансфер.
-
Укажите в файле
trails-to-opensearch.tf
переменные:os_version
— версия OpenSearch в кластере-приемнике;os_admin_password
— пароль пользователяadmin
;transfer_enabled
— значение0
, чтобы не создавать трансфер до создания эндпоинтов вручную.
-
Проверьте корректность файлов конфигурации Terraform с помощью команды:
terraform validate
Если в файлах конфигурации есть ошибки, Terraform на них укажет.
-
Создайте необходимую инфраструктуру:
-
Выполните команду для просмотра планируемых изменений:
terraform plan
Если конфигурации ресурсов описаны верно, в терминале отобразится список изменяемых ресурсов и их параметров. Это проверочный этап: ресурсы не будут изменены.
-
Если вас устраивают планируемые изменения, внесите их:
-
Выполните команду:
terraform apply
-
Подтвердите изменение ресурсов.
-
Дождитесь завершения операции.
-
В указанном каталоге будут созданы все требуемые ресурсы. Проверить появление ресурсов и их настройки можно в консоли управления
. -
Настройте трансфер для доставки логов в кластер Managed Service for OpenSearch
-
Создайте эндпоинт для источника:
-
Тип базы данных —
Yandex Data Streams
. -
Параметры эндпоинта:
-
Настройки подключения:
- База данных — выберите базу данных Managed Service for YDB из списка.
- Поток — укажите имя потока Data Streams.
- Сервисный аккаунт — выберите или создайте сервисный аккаунт с ролью
yds.editor
.
-
Расширенные настройки:
- Правила конвертации —
Парсер AuditTrails.v1
.
- Правила конвертации —
-
-
-
Создайте эндпоинт для приемника:
-
Тип базы данных —
OpenSearch
. -
Параметры эндпоинта:
-
Настройки подключения:
-
Тип подключения —
Кластер Managed Service for OpenSearch
.- Кластер Managed Service for OpenSearch — выберите кластер-приемник из списка.
-
Пользователь и Пароль — укажите имя и пароль пользователя с доступом к базе, например, пользователя
admin
.
-
-
-
-
Создайте и активируйте трансфер:
ВручнуюС помощью Terraform- Создайте трансфер типа Репликация, использующий созданные эндпоинты.
- Активируйте трансфер и дождитесь его перехода в статус Реплицируется.
-
Укажите в файле
trails-to-opensearch.tf
переменные:source_endpoint_id
— идентификатор эндпоинта для источника;target_endpoint_id
— идентификатор эндпоинта для приемника;transfer_enabled
— значение1
для создания трансфера.
-
Проверьте корректность файлов конфигурации Terraform с помощью команды:
terraform validate
Если в файлах конфигурации есть ошибки, Terraform на них укажет.
-
Создайте необходимую инфраструктуру:
-
Выполните команду для просмотра планируемых изменений:
terraform plan
Если конфигурации ресурсов описаны верно, в терминале отобразится список изменяемых ресурсов и их параметров. Это проверочный этап: ресурсы не будут изменены.
-
Если вас устраивают планируемые изменения, внесите их:
-
Выполните команду:
terraform apply
-
Подтвердите изменение ресурсов.
-
Дождитесь завершения операции.
-
-
-
Трансфер активируется автоматически. Дождитесь его перехода в статус Реплицируется.
Проверьте результат
Убедитесь, что данные из Audit Trails успешно загружаются в OpenSearch:
-
Дождитесь перехода трансфера в статус Реплицируется.
-
Подключитесь к кластеру-приемнику с помощью OpenSearch Dashboards.
-
Выберите общий тенант
Global
. -
Создайте новый шаблон индекса с именем
audit-trails*
:- Откройте панель управления, нажав на значок
. - В разделе Management выберите Stack Management.
- Перейдите в раздел Index Patterns и внизу страницы нажмите на ссылку create an index pattern.
- В поле Index pattern name укажите
audit-trails*
и нажмите кнопку Next step. - В поле Time field выберите
application_usage_daily.timestamp
и нажмите кнопку Create index pattern.
- Откройте панель управления, нажав на значок
-
Откройте панель управления, нажав на значок
. -
В разделе OpenSearch Dashboards выберите Discover.
-
В открывшемся дашборде должны появиться данные из Audit Trails в формате Elastic Common Schema
.
Важно
Поставка данных в приемники Managed Service for Elasticsearch и Managed Service for OpenSearch работает в режиме at least once
: если в переносимых таблицах нет первичного ключа, то в аудитных логах могут создаваться дубликаты.
Загрузите дополнительный контент
Для удобства пользователей команда безопасности Yandex Cloud подготовила библиотеку Solution Library — набор примеров и рекомендаций по построению безопасной инфраструктуры в Yandex Cloud. Библиотека доступна в публичном репозитории на GitHub
- дашборд с вариантами использования и статистикой;
- набор готовых запросов для поиска событий безопасности;
- примеры событий, на которые предварительно настроены оповещения (назначение уведомлений клиент указывает самостоятельно).
Все необходимые поля событий преобразованы в формат Elastic Common Schema (ECS)
Чтобы воспользоваться Security Content:
-
Клонируйте репозиторий Yandex Cloud Security Solution Library:
git clone https://github.com/yandex-cloud-examples/yc-export-auditlogs-to-opensearch.git
-
Подключитесь к кластеру-приемнику с помощью OpenSearch Dashboards.
-
Откройте панель управления, нажав на значок
. -
В разделе Management выберите Stack Management.
-
Перейдите в раздел Saved Objects и импортируйте файлы из каталога
yc-export-auditlogs-to-opensearch/update-opensearch-scheme/content-for-transfer/
:dashboard.ndjson
filters.ndjson
search.ndjson
Дашборд
Воспользуйтесь подготовленным дашбордом Audit-trails-dashboard
:
- Откройте панель управления, нажав на значок
. - В разделе OpenSearch Dashboards выберите Dashboard.
- В списке дашбордов выберите
Audit-trails-dashboard
.
События безопасности
Используйте подготовленный запрос для просмотра событий безопасности, которые можно отбирать с помощью фильтров.
- Откройте панель управления, нажав на значок
. - В разделе OpenSearch Dashboards выберите Discover.
- На вкладке Open выберите запрос
Search:Yandexcloud: Yandexcloud: Interesting fields
.
Настройка алертов
Используйте примеры кода для сущностей monitor
и trigger
при настройке алертов
-
Откройте панель управления, нажав на значок
. -
В разделе OpenSearch Plugins выберите Alerting.
-
Скопируйте содержимое файлов примеров в окно создания:
Удалите созданные ресурсы
Примечание
Перед тем как удалить созданные ресурсы, деактивируйте трансфер.
Некоторые ресурсы платные. Чтобы за них не списывалась плата, удалите ресурсы, которые вы больше не будете использовать:
- Удалите трансфер.
- Удалите эндпоинты для источника и приемника.
- Удалите базу данных Managed Service for YDB.
- Удалите созданные сервисные аккаунты.
- Удалите трейл Audit Trails.
Остальные ресурсы удалите в зависимости от способа их создания:
-
В терминале перейдите в директорию с планом инфраструктуры.
Важно
Убедитесь, что в директории нет Terraform-манифестов с ресурсами, которые вы хотите сохранить. Terraform удаляет все ресурсы, которые были созданы с помощью манифестов в текущей директории.
-
Удалите ресурсы:
-
Выполните команду:
terraform destroy
-
Подтвердите удаление ресурсов и дождитесь завершения операции.
Все ресурсы, которые были описаны в Terraform-манифестах, будут удалены.
-
Дополнительные материалы
Смотреть на YouTube вебинар Yandex Data Transfer в сценариях, о которых редко говорят