Gå til innhold

Forutsetninger

Maskin

OS

PostgreSQL-clusteret som appliancen leverer, er basert på et 64-bits operativsystem Debian 12 (bookworm).

CPU

Det anbefales å tilordne 4 CPU-kjerner per node i PostgreSQL-clusteret.

RAM

Det anbefales å tilordne 4 GB RAM per node i PostgreSQL-clusteret.

Disk

Den virtuelle appliancen leveres med en virtuell disk på 60 GB.

Nettverk

Et PostgreSQL-cluster krever 4 IP-adresser:

  • 1 reell IP-adresse per PostgreSQL-node
  • 1 virtuell IP-adresse for PostgreSQL-clusteret

Adadvarsel!

De reelle og virtuelle IP-adressene til nodene i PostgreSQL-clusteret må alle tilhøre samme subnett.

Nodene i PostgreSQL-clusteret plasseres vanligvis i LAN-et, slik at CyberElements Bastion får tilgang til dem via Edge Gateway-serverne.

For å identifisere de ulike maskinadressene bedre kalles de som følger i dokumentasjonen:

Navn på IP-adresse Betydning
RIP_PSQL_1 Reell IP-adresse til PostgreSQL-node nr. 1.
RIP_PSQL_2 Reell IP-adresse til PostgreSQL-node nr. 2.
RIP_PSQL_3 Reell IP-adresse til PostgreSQL-node nr. 3.
VIP_PSQL Virtuell IP-adresse til PostgreSQL-clusteret.
Kilde Mål Målport Kommentarer
RIP_PSQL_1
RIP_PSQL_2
RIP_PSQL_3
Debian-repositoryer TCP 80 Kreves for å installere avhengighetene til CyberElements Bastion og for å holde systemet oppdatert. Dokumentasjonen og de virtuelle appliancene bruker ftp.fr.debian.org og security.debian.org.
RIP_PSQL_1
RIP_PSQL_2
RIP_PSQL_3
DNS-server UDP 53 Kreves for DNS-oppslag. Valgfritt hvis en DNS-server er tilgjengelig på LAN-et eller i DMZ-en.
RIP_PSQL_1
RIP_PSQL_2
RIP_PSQL_3
NTP-tidsserver UDP 123 Valgfritt hvis serveren må synkronisere klokken sin med en server på LAN-et eller i DMZ-en. Som standard brukes Debian-poolene: 0.debian.pool.ntp.org, 1.debian.pool.ntp.org, 2.debian.pool.ntp.org og 3.debian.pool.ntp.org.
Kilde Mål Målport Kommentarer
RIP_PSQL_1
RIP_PSQL_2
RIP_PSQL_3
RIP_PSQL_1
RIP_PSQL_2
RIP_PSQL_3
TCP 2379 Port som brukes til driften av clusteret, og som ETCD lytter på.
RIP_PSQL_1
RIP_PSQL_2
RIP_PSQL_3
RIP_PSQL_1
RIP_PSQL_2
RIP_PSQL_3
TCP 2380 Port som brukes til driften av clusteret, og som ETCD lytter på.
RIP_PSQL_1
RIP_PSQL_2
RIP_PSQL_3
RIP_PSQL_1
RIP_PSQL_2
RIP_PSQL_3
TCP 5432 SQL-tilkoblingsport som PostgreSQL lytter på (standardporten kan endres).
RIP_PSQL_1
RIP_PSQL_2
RIP_PSQL_3
RIP_PSQL_1
RIP_PSQL_2
RIP_PSQL_3
TCP 8008 Port som brukes til driften av clusteret, og som Patroni lytter på.
RIP_PSQL_1
RIP_PSQL_2
RIP_PSQL_3
DNS-server UDP 53 Kreves for DNS-oppslag. Valgfritt hvis en DNS-server er tilgjengelig på WAN-et eller i DMZ-en.
RIP_PSQL_1
RIP_PSQL_2
RIP_PSQL_3
NTP-tidsserver UDP 123 Valgfritt hvis serveren må synkronisere klokken sin med en server på WAN-et eller i DMZ-en. Som standard brukes Debian-poolene: 0.debian.pool.ntp.org, 1.debian.pool.ntp.org, 2.debian.pool.ntp.org og 3.debian.pool.ntp.org.
IP-adresser eller nettverksområde for administrasjonsarbeidsstasjonene RIP_PSQL_1
RIP_PSQL_2
RIP_PSQL_3
TCP 22 Port for fjernadministrasjon via SSH.
IP-adresser eller nettverksområde for administrasjonsarbeidsstasjonene RIP_PSQL_1
RIP_PSQL_2
RIP_PSQL_3
TCP 5432 SQL-tilkoblingsport som PostgreSQL bruker (standardporten kan endres).
IP-adresser eller nettverksområde for administrasjonsarbeidsstasjonene VIP_PSQL TCP 5432 SQL-tilkoblingsport som PostgreSQL bruker (standardporten kan endres).
IP-adresser til Edge Gateway-serverne som må ha tilgang til PostgreSQL-clusteret VIP_PSQL TCP 5432 SQL-tilkoblingsport som PostgreSQL bruker (standardporten kan endres).

Sertifikater

PostgreSQL-clusteret krypterer kommunikasjonsflytene mellom nodene sine, både for driften av clusteret og for SQL-tilkoblingene. Det er en TLS-kryptering, som krever bruk av sertifikater.
Informasjonen nedenfor oppsummerer innstillingene og alternativene som kreves for sertifikatene til PostgreSQL-clusteret.

Sikkerhetskrav til sertifikatet

Uansett hvilket sertifikat som brukes, må du sikre at det oppfyller OpenSSL sikkerhetsnivå 2, som kan oppsummeres slik:

  • Sertifikatet og sertifikatene til sertifiseringsinstansene må ha en privat nøkkel på minst 2048 bit med krypteringen RSA, DSA og DH; for nøkler med elliptiske kurver (ECC) må de være på minst 224 bit.
  • Signaturen til sertifikatet må ikke være MD5 eller SHA-1 (SHA-512 foretrekkes).

Hver PostgreSQL-node bruker ett enkelt sertifikat, men må også importere sertifikatet til rotsertifiseringsinstansen (CA).
Rot-CA-en forventes i crt-format med base64-koding.

Sertifikatet til PostgreSQL-noden må oppfylle følgende innstillinger:

  • Hashfunksjonen som brukes til signaturen, må tilhøre SHA-2-familien; vi anbefaler SHA-512.
  • Sertifikatet og sertifikatene til sertifiseringsinstansene må ha en privat nøkkel på minst 2048 bit med RSA-, DSA- og DH-kryptering; for nøkler med elliptiske kurver (ECC) må de være på minst 224 bit. Vi anbefaler en størrelse på 4096 bit for RSA og ECDSA-kurven secp384r1 med en størrelse på 384 bit.
  • Attributtet Common Name må ha kortnavnet til serveren som verdi (hvis du angir FQDN, fører det til feil).
  • Attributtet Key Usage må ha verdiene critical, digitalSignature og keyEncipherment.
  • Attributtet Extended Key Usage må ha verdiene serverAuth og clientAuth.
  • Attributtet Subject Alternative Name må defineres slik at det dekker:
    • Navnet på PostgreSQL-noden som er knyttet til den reelle IP-adressen
    • Navnet på PostgreSQL-clusteret som er knyttet til den virtuelle IP-adressen
    • Den reelle IP-adressen til PostgreSQL-noden
    • Den virtuelle IP-adressen til PostgreSQL-clusteret

Forventet sertifikatformat: P12.