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_1RIP_PSQL_2RIP_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_1RIP_PSQL_2RIP_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_1RIP_PSQL_2RIP_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_1RIP_PSQL_2RIP_PSQL_3 |
RIP_PSQL_1RIP_PSQL_2RIP_PSQL_3 |
TCP 2379 | Port som brukes til driften av clusteret, og som ETCD lytter på. |
RIP_PSQL_1RIP_PSQL_2RIP_PSQL_3 |
RIP_PSQL_1RIP_PSQL_2RIP_PSQL_3 |
TCP 2380 | Port som brukes til driften av clusteret, og som ETCD lytter på. |
RIP_PSQL_1RIP_PSQL_2RIP_PSQL_3 |
RIP_PSQL_1RIP_PSQL_2RIP_PSQL_3 |
TCP 5432 | SQL-tilkoblingsport som PostgreSQL lytter på (standardporten kan endres). |
RIP_PSQL_1RIP_PSQL_2RIP_PSQL_3 |
RIP_PSQL_1RIP_PSQL_2RIP_PSQL_3 |
TCP 8008 | Port som brukes til driften av clusteret, og som Patroni lytter på. |
RIP_PSQL_1RIP_PSQL_2RIP_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_1RIP_PSQL_2RIP_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_1RIP_PSQL_2RIP_PSQL_3 |
TCP 22 | Port for fjernadministrasjon via SSH. |
| IP-adresser eller nettverksområde for administrasjonsarbeidsstasjonene | RIP_PSQL_1RIP_PSQL_2RIP_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 Namemå ha kortnavnet til serveren som verdi (hvis du angir FQDN, fører det til feil). - Attributtet
Key Usagemå ha verdienecritical,digitalSignatureogkeyEncipherment. - Attributtet
Extended Key Usagemå ha verdieneserverAuthogclientAuth. - Attributtet
Subject Alternative Namemå 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.