Zum Inhalt

Voraussetzungen

Maschine

OS

Der von der Appliance bereitgestellte PostgreSQL-Cluster basiert auf einem 64-Bit-Betriebssystem Debian 12 (bookworm).

CPU

Es wird empfohlen, 4 CPU-Kerne pro Knoten des PostgreSQL-Clusters zuzuweisen.

RAM

Es wird empfohlen, 4 GB RAM pro Knoten des PostgreSQL-Clusters zuzuweisen.

Festplatte

Die virtuelle Appliance wird mit einer virtuellen Festplatte von 60 GB ausgeliefert.

Netzwerk

Ein PostgreSQL-Cluster benötigt 4 IP-Adressen:

  • 1 reale IP-Adresse pro PostgreSQL-Knoten
  • 1 virtuelle IP-Adresse für den PostgreSQL-Cluster

Achtung!

Die realen und virtuellen IP-Adressen der Knoten des PostgreSQL-Clusters müssen alle demselben Subnetz angehören.

Die Knoten des PostgreSQL-Clusters werden in der Regel im LAN platziert, damit CyberElements Bastion über die Edge Gateways auf sie zugreift.

Um die verschiedenen Adressen der Maschinen besser zu identifizieren, werden sie in der Dokumentation wie folgt bezeichnet:

Name der IP-Adresse Bedeutung
RIP_PSQL_1 Reale IP-Adresse des PostgreSQL-Knotens Nr. 1.
RIP_PSQL_2 Reale IP-Adresse des PostgreSQL-Knotens Nr. 2.
RIP_PSQL_3 Reale IP-Adresse des PostgreSQL-Knotens Nr. 3.
VIP_PSQL Virtuelle IP-Adresse des PostgreSQL-Clusters.
Quelle Ziel Zielport Kommentare
RIP_PSQL_1
RIP_PSQL_2
RIP_PSQL_3
Debian-Repositorys TCP 80 Erforderlich, um die Abhängigkeiten von CyberElements Bastion zu installieren und das System aktuell zu halten. Die Dokumentation und die virtuellen Appliances verwenden ftp.fr.debian.org und security.debian.org.
RIP_PSQL_1
RIP_PSQL_2
RIP_PSQL_3
DNS-Server UDP 53 Erforderlich für die DNS-Auflösung. Optional, wenn im LAN oder in der DMZ ein DNS-Server verfügbar ist.
RIP_PSQL_1
RIP_PSQL_2
RIP_PSQL_3
NTP-Zeitserver UDP 123 Optional, wenn der Server seine Uhr mit einem Server im LAN oder in der DMZ synchronisieren muss. Standardmäßig werden die Debian-Pools verwendet: 0.debian.pool.ntp.org, 1.debian.pool.ntp.org, 2.debian.pool.ntp.org und 3.debian.pool.ntp.org.
Quelle Ziel Zielport Kommentare
RIP_PSQL_1
RIP_PSQL_2
RIP_PSQL_3
RIP_PSQL_1
RIP_PSQL_2
RIP_PSQL_3
TCP 2379 Port, der für den Betrieb des Clusters verwendet wird und auf dem ETCD lauscht.
RIP_PSQL_1
RIP_PSQL_2
RIP_PSQL_3
RIP_PSQL_1
RIP_PSQL_2
RIP_PSQL_3
TCP 2380 Port, der für den Betrieb des Clusters verwendet wird und auf dem ETCD lauscht.
RIP_PSQL_1
RIP_PSQL_2
RIP_PSQL_3
RIP_PSQL_1
RIP_PSQL_2
RIP_PSQL_3
TCP 5432 SQL-Verbindungsport, auf dem PostgreSQL lauscht (der Standardport kann geändert werden).
RIP_PSQL_1
RIP_PSQL_2
RIP_PSQL_3
RIP_PSQL_1
RIP_PSQL_2
RIP_PSQL_3
TCP 8008 Port, der für den Betrieb des Clusters verwendet wird und auf dem Patroni lauscht.
RIP_PSQL_1
RIP_PSQL_2
RIP_PSQL_3
DNS-Server UDP 53 Erforderlich für die DNS-Auflösung. Optional, wenn im WAN oder in der DMZ ein DNS-Server verfügbar ist.
RIP_PSQL_1
RIP_PSQL_2
RIP_PSQL_3
NTP-Zeitserver UDP 123 Optional, wenn der Server seine Uhr mit einem Server im WAN oder in der DMZ synchronisieren muss. Standardmäßig werden die Debian-Pools verwendet: 0.debian.pool.ntp.org, 1.debian.pool.ntp.org, 2.debian.pool.ntp.org und 3.debian.pool.ntp.org.
IP-Adressen oder Netzbereich der Administrationsarbeitsplätze RIP_PSQL_1
RIP_PSQL_2
RIP_PSQL_3
TCP 22 Port für die Fernadministration per SSH.
IP-Adressen oder Netzbereich der Administrationsarbeitsplätze RIP_PSQL_1
RIP_PSQL_2
RIP_PSQL_3
TCP 5432 SQL-Verbindungsport, der von PostgreSQL verwendet wird (der Standardport kann geändert werden).
IP-Adressen oder Netzbereich der Administrationsarbeitsplätze VIP_PSQL TCP 5432 SQL-Verbindungsport, der von PostgreSQL verwendet wird (der Standardport kann geändert werden).
IP-Adressen der Edge Gateways, die auf den PostgreSQL-Cluster zugreifen müssen VIP_PSQL TCP 5432 SQL-Verbindungsport, der von PostgreSQL verwendet wird (der Standardport kann geändert werden).

Zertifikate

Der PostgreSQL-Cluster verschlüsselt die Kommunikationsflüsse zwischen seinen Knoten, sowohl für den Betrieb des Clusters als auch für die SQL-Verbindungen. Es handelt sich um eine TLS-Verschlüsselung, die die Verwendung von Zertifikaten erfordert.
Die nachstehenden Informationen fassen die für die Zertifikate des PostgreSQL-Clusters erforderlichen Parameter und Optionen zusammen.

Sicherheitsanforderung an das Zertifikat

Stellen Sie unabhängig vom verwendeten Zertifikat sicher, dass es der OpenSSL-Sicherheitsstufe 2 entspricht, die sich wie folgt zusammenfassen lässt:

  • Das Zertifikat und die Zertifikate seiner Zertifizierungsstellen müssen bei den Verschlüsselungsverfahren RSA, DSA und DH über einen privaten Schlüssel von mindestens 2048 Bit verfügen; bei Schlüsseln mit elliptischen Kurven (ECC) müssen es mindestens 224 Bit sein.
  • Die Signatur des Zertifikats darf nicht MD5 oder SHA-1 sein (SHA-512 wird bevorzugt).

Jeder PostgreSQL-Knoten verwendet ein einziges Zertifikat, muss aber auch das Zertifikat der Wurzelzertifizierungsstelle (CA) importieren.
Die Wurzel-CA wird im Format crt mit Base64-Kodierung erwartet.

Das Zertifikat des PostgreSQL-Knotens muss die folgenden Parameter erfüllen:

  • Die für die Signatur verwendete Hashfunktion muss der Familie SHA-2 angehören; wir empfehlen SHA-512.
  • Das Zertifikat und die Zertifikate seiner Zertifizierungsstellen müssen einen privaten Schlüssel von mindestens 2048 Bit mit RSA-, DSA- und DH-Verschlüsselung besitzen; bei Schlüsseln mit elliptischen Kurven (ECC) müssen es mindestens 224 Bit sein. Wir empfehlen eine Größe von 4096 Bit für RSA und die ECDSA-Kurve secp384r1 mit einer Größe von 384 Bit.
  • Das Attribut Common Name muss als Wert den Kurznamen des Servers haben (die Angabe des FQDN führt zu Fehlern).
  • Das Attribut Key Usage muss die Werte critical, digitalSignature und keyEncipherment aufweisen.
  • Das Attribut Extended Key Usage muss die Werte serverAuth und clientAuth haben.
  • Das Attribut Subject Alternative Name muss so definiert sein, dass es Folgendes abdeckt:
    • Den Namen des PostgreSQL-Knotens, der der realen IP-Adresse zugeordnet ist
    • Den Namen des PostgreSQL-Clusters, der der virtuellen IP-Adresse zugeordnet ist
    • Die reale IP-Adresse des PostgreSQL-Knotens
    • Die virtuelle IP-Adresse des PostgreSQL-Clusters

Erwartetes Zertifikatsformat: P12.