Mirtov Alexey fb61894267 Update variables.tf il y a 2 ans
..
modules fb61894267 Update variables.tf il y a 2 ans
README.md 4d07b8ff1a Update README.md il y a 2 ans
backup_README.md f64c514b58 add managed opensearch solution il y a 2 ans
main.tf f64c514b58 add managed opensearch solution il y a 2 ans
provider.tf f64c514b58 add managed opensearch solution il y a 2 ans
terraform_tfvars f64c514b58 add managed opensearch solution il y a 2 ans
variables.tf f64c514b58 add managed opensearch solution il y a 2 ans

README.md

Развертывание примера через Terraform

По результатам выполнения tf скрипта и ручных действий указанных ниже, в указанный вами opensearch будут загружаться события audit trails из облака и будет загружен security content (dashboard, filters, mapping etc.)

1) Скачайте репозиторий:

git clone https://github.com/yandex-cloud/yc-solution-library-for-security.git

cd перейти в папку решения auditlogs/export-auditlogs-to-Opensearch/terraform

2) Создайте сервисный аккаунт для тераформ или используйте токен. Если используете sa то скачайте ключ

yc iam service-account create --name my-sa

yc iam key create --service-account-name my-sa --output key.json

3) Заполните файл tfvars.tf (он по сути заполняет variables.tf) значениями для:

  • opensearch_pass
  • opensearch_user
  • opensearch_dashboard_address вида "https://c-c9qct655ceh02mhabb4i.rw.mdb.yandexcloud.net"
  • opensearch_node_address вида "https://rc1a-xxx.mdb.yandexcloud.net"
  • folder_id
  • cloud_id
  • token (тут указать путь до файла ключа sa , по умолчанию key.json)
  • subnet_id (указать айди подсети в которой надо развернуть вм перекладчика, должна иметь доступ к opensearch)

!!Переименуйте файл, чтобы он назывался "terrafrom.tfvars"

4) Для заполнения поля token создайте ключ для сервисного аккаунта для аутентификации в terraform либо используйте ваш OAuth токен yc 5) Запустите:

terraform init
terraform apply

Terraform модуль создает следующий набор объектов в Yandex.Cloud: 2) Сервисный аккаунт с ролью storage.admin для создания бакета в Object Storage 2.1) Статический ключ для сервисного аккаунта 2.2) S3 бакет 3) Сервисный аккаунт с правами storage.editor для дальнейшей работы с бакетом 5) Контейнер и COI-инстанс из модуля для загрузки событий и контента

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

Важно: Необходимо указать пустой префикс для бакета, либо изменить префикс в вызове в файле main.tf.

Важно: Необходимо включить NAT на созданных подсетях.


Requirements

Name Version
terraform >= 0.14
yandex ~> 0.60

Providers

Name Version
random n/a
yandex ~> 0.60

Modules

Name Source Version
yc-opensearch-trail ./modules/yc-opensearch-trail/ n/a

Resources

Name Type
random_string.random resource
yandex_iam_service_account.sa-bucket-creator resource
yandex_iam_service_account.sa-bucket-editor resource
yandex_iam_service_account_static_access_key.sa-bucket-creator-sk resource
yandex_resourcemanager_folder_iam_binding.storage_admin resource
yandex_resourcemanager_folder_iam_binding.storage_editor resource
yandex_storage_bucket.trail-bucket resource

Inputs

Name Description Type Default Required
cloud_id Yandex.Cloud ID where resources will be created string "xxxxxx" no
folder_id Yandex.Cloud Folder ID where resources will be created string "xxxxxx" no
opensearch_dashboard_address FQDN-адрес инсталляции Opensearch вида https://c-xxx.rw.mdb.yandexcloud.net string "" no
opensearch_node_address FQDN-адрес инсталляции Opensearch вида https://rc1a-xxx.mdb.yandexcloud.net string "" no
opensearch_pass Пароль для аутентификации в Opensearch string "" no
opensearch_user Пользователь для аутентификации в Opensearch string "" no
subnet_id subnet_id where you need to place your coi_instance. Need to connect to Opensearch host string "" no
token Yandex.Cloud security OAuth token либо ключ сервисного аккаунта string "key.json" no

Outputs

Name Description
bucket-for-trails ## Outputs