TheHive – open source решение и с поиском документации при работе с ним у меня возникали небольшие проблемы. Да, решение имеет большое коммьюнити, но некоторые вопросы проработаны очень кратко. Один из таких, это использование и настройка сертификата.  Итак, начнем.

Для того чтобы сертификат заработал, нужно настроить проксирование запросов с помощью nginx.

В папку, где у нас лежит файл docker-compose.yml добавим следующие папки: nginx, ssl, thehive. Ссылка на GitHub.

Внутри nginx находятся конфиги certs.conf и thehive.conf

certs.conf, сюда записываем названия нашего сертификата и соответственно ключа:

ssl_certificate /etc/ssl/nginx-selfsigned.crt;
ssl_certificate_key /etc/ssl/nginx-selfsigned.key;

Внутри thehive.conf , в proxy_pass указываем адрес, где крутится наш Хайв.

server {
  listen 443 ssl;

  proxy_connect_timeout   600;
  proxy_send_timeout      600;
  proxy_read_timeout      600;
  send_timeout            600;
  client_max_body_size    2G;
  proxy_buffering off;
  client_header_buffer_size 8k;

  location / {
    add_header              Strict-Transport-Security "max-age=31536000; includeSubDomains";
    proxy_pass            http://thehive:9000;
    proxy_http_version      1.1;
  }
}

Так же тут можно добавить server_name:

В папку ssl добавляем наш сертификат.

Внутри папки thehive лежат конфиги application.conf

play.http.secret.key="ThehiveTestPassword"

## For test only !
db.janusgraph {
   storage.backend: berkeleyje
   storage.directory: /opt/thp/thehive/db
   berkeleyje.freeDisk: 200

  ## Index configuration
  index {
    search {
      backend: lucene
      directory: /opt/thp/thehive/index
    }
  }
}

storage {
   provider: localfs
   localfs.directory: /opt/thp/thehive/data
}

play.http.parser.maxDiskBuffer: 20MB

Нужно задеплоить nginx, добавим в docker-compose.yml в разделе services следующее:

nginx:
 container_name: nginx
 hostname: nginx
 image: nginx:1.19.5
 ports:
  - 443:443
 volumes:
  - ./vol/nginx:/etc/nginx/conf.d
  - ./vol/ssl:/etc/ssl
 restart: on-failure
 links:
  - thehive
  
 

Если thehive стоит локально на виртуальной машине не забываем указать в папке etc/hosts соответствие ip(VM) и имени хайва, как в server_name. Перезагружаем контейнер : docker-compose up и переходим на новый адрес.

Готово!

Комментарии (5)


  1. Thero
    20.08.2021 19:38

    было бы неплохо вначале хоть немного справки о том что такое the hive и для чего оно нужно..


    1. LikaSvoykina Автор
      20.08.2021 20:04

      Да, я делала недавно сравнение, можно изучить хайв поподробнее


      1. Thero
        21.08.2021 22:27

        я к тому что в статью очень просится краткое описание и ссылка на другую статью чтобы не бросать случайного читателя сразу в пекло. ну и в целом полезно в начале статьи-инструкции описать о чём дальше пойдёт речь и каких целей достигать


        1. LikaSvoykina Автор
          21.08.2021 22:35

          Спасибо за совет! Добавлю описание


  1. Protos
    22.08.2021 05:50

    Почему люди так любят эти конфиги…. Пол часа кодинга и все это можно было бы делать через веб в несколько действий.