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 и переходим на новый адрес.
Готово!