From d2bae91d9a5bb7d1ec25497297d236c4c0b56fe0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Johan=20Bj=C3=B6rklund?= Date: Mon, 18 Nov 2024 14:32:01 +0100 Subject: [PATCH] Setup script for eventdb. --- .../modules/soc/files/intelmq/setup-pgsql.sh | 19 +++++++++++++++++++ .../puppet/modules/soc/manifests/intelmq.pp | 11 +++++++++++ 2 files changed, 30 insertions(+) create mode 100644 global/overlay/etc/puppet/modules/soc/files/intelmq/setup-pgsql.sh diff --git a/global/overlay/etc/puppet/modules/soc/files/intelmq/setup-pgsql.sh b/global/overlay/etc/puppet/modules/soc/files/intelmq/setup-pgsql.sh new file mode 100644 index 0000000..a77c103 --- /dev/null +++ b/global/overlay/etc/puppet/modules/soc/files/intelmq/setup-pgsql.sh @@ -0,0 +1,19 @@ +#!/bin/bash +set -e + +# Create user + +cd /tmp +sudo -u postgres psql <<-EOSQL +CREATE USER intelmq WITH NOSUPERUSER NOCREATEDB ENCRYPTED PASSWORD 'intelmq'; +CREATE DATABASE eventdb WITH OWNER intelmq ENCODING UTF8; +GRANT ALL PRIVILEGES ON DATABASE eventdb TO intelmq; +\c eventdb; +CREATE SCHEMA intelmq AUTHORIZATION intelmq; +EOSQL + +rm -f /tmp/initdb.sql +sudo -u intelmq /opt/intelmq/venv/bin/intelmq_psql_initdb +sudo -u intelmq psql eventdb -f /tmp/initdb.sql +rm -f /tmp/initdb.sql +touch /opt/intelmq/.evendb-installed diff --git a/global/overlay/etc/puppet/modules/soc/manifests/intelmq.pp b/global/overlay/etc/puppet/modules/soc/manifests/intelmq.pp index 1cd0be8..cb4b6f8 100644 --- a/global/overlay/etc/puppet/modules/soc/manifests/intelmq.pp +++ b/global/overlay/etc/puppet/modules/soc/manifests/intelmq.pp @@ -77,6 +77,17 @@ class soc::intelmq( returns => ['0', '1',], } + file { '/opt/intelmq/setup-pgsql.sh': + ensure => file, + content => file('soc/intelmq/setup-pgsql.sh'), + mode => '0500', + } + + exec { 'Setup IntelMQ eventdb': + command => '/opt/intelmq/setup-pgsql.sh', + creates => '/opt/intelmq/.evendb-installed', + } + file { '/etc/sudoers.d/01_intelmq-api': ensure => file, content => file('soc/intelmq/sudoers-01-intelmq-api'),