From 145668c3dd67c5271eddcb62d1e7843487d768a7 Mon Sep 17 00:00:00 2001 From: Cullum Smith Date: Tue, 15 Oct 2024 23:35:53 -0400 Subject: huge amount of fixes --- scripts/hostclass/postgresql_server | 25 ++++++++++++++++--------- 1 file changed, 16 insertions(+), 9 deletions(-) (limited to 'scripts/hostclass/postgresql_server') diff --git a/scripts/hostclass/postgresql_server b/scripts/hostclass/postgresql_server index fb0ddcd..10bafc8 100644 --- a/scripts/hostclass/postgresql_server +++ b/scripts/hostclass/postgresql_server @@ -8,7 +8,10 @@ : ${postgres_maintenance_work_mem:="$(( memsize / 20 ))"} : ${postgres_temp_buffers:="$((32 * 1024 * 1024))"} : ${postgres_effective_cache_size:="$(( memsize * 3 / 4 ))"} +: ${postgres_ldap_username:='s-postgresql'} +: ${postgres_ldap_password:='changeme'} +postgres_dn="uid=${postgres_ldap_username},${robots_basedn}" postgres_user=postgres postgres_home=/var/db/postgres postgres_data_dir="${postgres_home}/data${postgresql_version}" @@ -16,10 +19,6 @@ postgres_tls_cert="${postgres_home}/postgres.crt" postgres_tls_key="${postgres_home}/postgres.key" postgres_keytab="${keytab_dir}/postgres.keytab" -psql(){ - command psql --quiet --no-align --echo-all --tuples-only --no-password --username=postgres --dbname=postgres "$@" -} - pkg install -y postgresql${postgresql_version}-server # Create ZFS dataset for postgresql data. @@ -46,8 +45,16 @@ postgres_uid=$(id -u "$postgres_user") install_directory -o "$postgres_user" -m 0700 "/var/krb5/user/${postgres_uid}" ln -snfv "$postgres_keytab" "/var/krb5/user/${postgres_uid}/keytab" -# Create postgresql PAM service. -install_template -m 0644 /etc/pam.d/postgresql +# Create PostgreSQL LDAP user account. +ldap_add "$postgres_dn" < /dev/null 2>&1 < /dev/null +service postgresql restart > /dev/null 2>&1 < /dev/null || die 'failed to start postgresql' # Create boxconf admin user. -psql -c "DO +psql --quiet --no-align --echo-all --tuples-only --no-password --username=postgres --dbname=postgres -c \ +"DO \$$ BEGIN IF NOT EXISTS (SELECT 1 FROM pg_roles WHERE rolname = '${boxconf_username}') THEN @@ -74,4 +82,3 @@ BEGIN END IF; END \$$" - -- cgit v1.2.3