Keycloak insatll script
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

26 lines
1.2 KiB

  1. #! /bin/bash
  2. if [ "$(whoami)" != "root" ]; then
  3. SUDO=sudo
  4. fi
  5. ${SUDO} apt install -y postgresql pwgen
  6. RAND_PASS=`pwgen -s1 16`
  7. POSTGRES_VERSION=`${SUDO} apt show postgresql | grep Version | cut -d" " -f2 | cut -d"+" -f1`
  8. read -p "Postgres replica ip: " -ei '' REPLICA_IP
  9. read -p "Postgres replica user: " -ei 'replica_user' REPLICA_USER
  10. read -p "Postgres replica password: " -ei "$RAND_PASS" REPLICA_PASS
  11. ${SUDO} echo $REPLICA_PASS > /usr/local/src/postgres_replica_password
  12. ${SUDO} echo "Password is stored in /usr/local/src/postgres_replica_password"
  13. sudo -u postgres pg_conftool set listen_addresses 0.0.0.0
  14. sudo -u postgres pg_conftool set log_destination syslog
  15. sudo -u postgres pg_conftool set max_wall_senders 3
  16. sudo -u postgres pg_conftool set wal_keep_size 1GB
  17. sudo -u postgres pg_conftool set wal_level replica
  18. sudo -u postgres pg_conftool set wal_log_hints on
  19. sudo -u postgres psql -c "CREATE USER '$REPLICA_USER' REPLICATION LOGIN CONNECTION LIMIT 3 ENCRYPTED PASSWORD '$REPLICA_PASS';"
  20. ${SUDO} echo "host replication $REPLICA_USER $REPLICA_IP/24 trust" >> /etc/postgresql/$POSTGRES_VERSION/main/pg_hba.conf
  21. ${SUDO} systemctl restart postgresql