mirror of
https://github.com/Security-Onion-Solutions/securityonion.git
synced 2025-12-07 01:32:47 +01:00
Fix kafka keystore script
Signed-off-by: reyesj2 <94730068+reyesj2@users.noreply.github.com>
This commit is contained in:
@@ -1,101 +1,109 @@
|
|||||||
# Copyright Security Onion Solutions LLC and/or licensed to Security Onion Solutions LLC under one
|
# Copyright Security Onion Solutions LLC and/or licensed to Security Onion Solutions LLC under one
|
||||||
# or more contributor license agreements. Licensed under the Elastic License 2.0 as shown at
|
# or more contributor license agreements. Licensed under the Elastic License 2.0 as shown at
|
||||||
# https://securityonion.net/license; you may not use this file except in compliance with the
|
# https://securityonion.net/license; you may not use this file except in compliance with the
|
||||||
# Elastic License 2.0.
|
# Elastic License 2.0.
|
||||||
|
|
||||||
{% from 'allowed_states.map.jinja' import allowed_states %}
|
{% from 'allowed_states.map.jinja' import allowed_states %}
|
||||||
{% if sls.split('.')[0] in allowed_states %}
|
{% if sls.split('.')[0] in allowed_states %}
|
||||||
{% from 'vars/globals.map.jinja' import GLOBALS %}
|
{% from 'vars/globals.map.jinja' import GLOBALS %}
|
||||||
|
|
||||||
{% set kafka_ips_logstash = [] %}
|
{% set kafka_ips_logstash = [] %}
|
||||||
{% set kafka_ips_kraft = [] %}
|
{% set kafka_ips_kraft = [] %}
|
||||||
{% set kafkanodes = salt['pillar.get']('kafka:nodes', {}) %}
|
{% set kafkanodes = salt['pillar.get']('kafka:nodes', {}) %}
|
||||||
{% set kafka_nodeid = salt['pillar.get']('kafka:nodes:' ~ GLOBALS.hostname ~ ':nodeid') %}
|
{% set kafka_nodeid = salt['pillar.get']('kafka:nodes:' ~ GLOBALS.hostname ~ ':nodeid') %}
|
||||||
{% set kafka_ip = GLOBALS.node_ip %}
|
{% set kafka_ip = GLOBALS.node_ip %}
|
||||||
|
|
||||||
{% set nodes = salt['pillar.get']('kafka:nodes', {}) %}
|
{% set nodes = salt['pillar.get']('kafka:nodes', {}) %}
|
||||||
{% set combined = [] %}
|
{% set combined = [] %}
|
||||||
{% for hostname, data in nodes.items() %}
|
{% for hostname, data in nodes.items() %}
|
||||||
{% do combined.append(data.nodeid ~ "@" ~ hostname) %}
|
{% do combined.append(data.nodeid ~ "@" ~ hostname ~ ":9093") %}
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
{% set kraft_controller_quorum_voters = ','.join(combined) %}
|
{% set kraft_controller_quorum_voters = ','.join(combined) %}
|
||||||
|
|
||||||
{# Create list for kafka <-> logstash/searchnode communcations #}
|
{# Create list for kafka <-> logstash/searchnode communcations #}
|
||||||
{% for node, node_data in kafkanodes.items() %}
|
{% for node, node_data in kafkanodes.items() %}
|
||||||
{% do kafka_ips_logstash.append(node_data['ip'] + ":9092") %}
|
{% do kafka_ips_logstash.append(node_data['ip'] + ":9092") %}
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
{% set kafka_server_list = "','".join(kafka_ips_logstash) %}
|
{% set kafka_server_list = "','".join(kafka_ips_logstash) %}
|
||||||
|
|
||||||
{# Create a list for kraft controller <-> kraft controller communications. Used for Kafka metadata management #}
|
{# Create a list for kraft controller <-> kraft controller communications. Used for Kafka metadata management #}
|
||||||
{% for node, node_data in kafkanodes.items() %}
|
{% for node, node_data in kafkanodes.items() %}
|
||||||
{% do kafka_ips_kraft.append(node_data['nodeid'] ~ "@" ~ node_data['ip'] ~ ":9093") %}
|
{% do kafka_ips_kraft.append(node_data['nodeid'] ~ "@" ~ node_data['ip'] ~ ":9093") %}
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
{% set kraft_server_list = "','".join(kafka_ips_kraft) %}
|
{% set kraft_server_list = "','".join(kafka_ips_kraft) %}
|
||||||
|
|
||||||
|
|
||||||
include:
|
include:
|
||||||
- ssl
|
- ssl
|
||||||
|
|
||||||
kafka_group:
|
kafka_group:
|
||||||
group.present:
|
group.present:
|
||||||
- name: kafka
|
- name: kafka
|
||||||
- gid: 960
|
- gid: 960
|
||||||
|
|
||||||
kafka:
|
kafka:
|
||||||
user.present:
|
user.present:
|
||||||
- uid: 960
|
- uid: 960
|
||||||
- gid: 960
|
- gid: 960
|
||||||
|
|
||||||
{# Future tools to query kafka directly / show consumer groups
|
{# Future tools to query kafka directly / show consumer groups
|
||||||
kafka_sbin_tools:
|
kafka_sbin_tools:
|
||||||
file.recurse:
|
file.recurse:
|
||||||
- name: /usr/sbin
|
- name: /usr/sbin
|
||||||
- source: salt://kafka/tools/sbin
|
- source: salt://kafka/tools/sbin
|
||||||
- user: 960
|
- user: 960
|
||||||
- group: 960
|
- group: 960
|
||||||
- file_mode: 755 #}
|
- file_mode: 755 #}
|
||||||
|
|
||||||
kakfa_log_dir:
|
kafka_sbin_jinja_tools:
|
||||||
file.directory:
|
file.recurse:
|
||||||
- name: /opt/so/log/kafka
|
- name: /usr/sbin
|
||||||
- user: 960
|
- source: salt://kafka/tools/sbin_jinja
|
||||||
- group: 960
|
- user: 960
|
||||||
- makedirs: True
|
- group: 960
|
||||||
|
- file_mode: 755
|
||||||
kafka_data_dir:
|
- template: jinja
|
||||||
file.directory:
|
|
||||||
- name: /nsm/kafka/data
|
kakfa_log_dir:
|
||||||
- user: 960
|
file.directory:
|
||||||
- group: 960
|
- name: /opt/so/log/kafka
|
||||||
- makedirs: True
|
- user: 960
|
||||||
|
- group: 960
|
||||||
{# When docker container is created an added to registry. Update so-kafka-generate-keystore script #}
|
- makedirs: True
|
||||||
kafka_keystore_script:
|
|
||||||
cmd.script:
|
kafka_data_dir:
|
||||||
- source: salt://kafka/tools/sbin_jinja/so-kafka-generate-keystore
|
file.directory:
|
||||||
- tempalte: jinja
|
- name: /nsm/kafka/data
|
||||||
- cwd: /opt/so
|
- user: 960
|
||||||
- defaults:
|
- group: 960
|
||||||
GLOBALS: {{ GLOBALS }}
|
- makedirs: True
|
||||||
|
|
||||||
kafka_kraft_server_properties:
|
kafka_keystore_script:
|
||||||
file.managed:
|
cmd.script:
|
||||||
- source: salt://kafka/etc/server.properties.jinja
|
- source: salt://kafka/tools/sbin_jinja/so-kafka-generate-keystore
|
||||||
- name: /opt/so/conf/kafka/server.properties
|
- template: jinja
|
||||||
- template: jinja
|
- cwd: /opt/so
|
||||||
- defaults:
|
- defaults:
|
||||||
kafka_nodeid: {{ kafka_nodeid }}
|
GLOBALS: {{ GLOBALS }}
|
||||||
kraft_controller_quorum_voters: {{ kraft_controller_quorum_voters }}
|
|
||||||
kafka_ip: {{ kafka_ip }}
|
kafka_kraft_server_properties:
|
||||||
- user: 960
|
file.managed:
|
||||||
- group: 960
|
- source: salt://kafka/etc/server.properties.jinja
|
||||||
- makedirs: True
|
- name: /opt/so/conf/kafka/server.properties
|
||||||
- show_changes: False
|
- template: jinja
|
||||||
|
- defaults:
|
||||||
{% else %}
|
kafka_nodeid: {{ kafka_nodeid }}
|
||||||
|
kraft_controller_quorum_voters: {{ kraft_controller_quorum_voters }}
|
||||||
{{sls}}_state_not_allowed:
|
kafka_ip: {{ kafka_ip }}
|
||||||
test.fail_without_changes:
|
- user: 960
|
||||||
- name: {{sls}}_state_not_allowed
|
- group: 960
|
||||||
|
- makedirs: True
|
||||||
|
- show_changes: False
|
||||||
|
|
||||||
|
{% else %}
|
||||||
|
|
||||||
|
{{sls}}_state_not_allowed:
|
||||||
|
test.fail_without_changes:
|
||||||
|
- name: {{sls}}_state_not_allowed
|
||||||
|
|
||||||
{% endif %}
|
{% endif %}
|
||||||
@@ -8,7 +8,7 @@
|
|||||||
. /usr/sbin/so-common
|
. /usr/sbin/so-common
|
||||||
|
|
||||||
if [ ! -f /etc/pki/kafka.jks ]; then
|
if [ ! -f /etc/pki/kafka.jks ]; then
|
||||||
docker run -v /etc/pki/kafka.p12:/etc/pki/kafka.p12 --name so-kafka-keystore --user root --entrypoint keytool so-kafka -importkeystore -srckeystore /etc/pki/kafka.p12 -srcstoretype PKCS12 -srsstorepass changeit -destkeystore /etc/pki/kafka.jks -deststoretype JKS -deststorepass changeit -alias kafkastore -noprompt
|
docker run -v /etc/pki/kafka.p12:/etc/pki/kafka.p12 --name so-kafka-keystore --user root --entrypoint keytool {{ GLOBALS.registry_host }}:5000/{{ GLOBALS.image_repo }}/so-kafka:{{ GLOBALS.so_version }} -importkeystore -srckeystore /etc/pki/kafka.p12 -srcstoretype PKCS12 -srcstorepass changeit -destkeystore /etc/pki/kafka.jks -deststoretype JKS -deststorepass changeit -noprompt
|
||||||
docker cp so-kafka-keystore:/etc/pki/kafka.jks /etc/pki/kafka.jks
|
docker cp so-kafka-keystore:/etc/pki/kafka.jks /etc/pki/kafka.jks
|
||||||
docker rm so-kafka-keystore
|
docker rm so-kafka-keystore
|
||||||
else
|
else
|
||||||
|
|||||||
Reference in New Issue
Block a user