

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# Aktivieren Sie verschlüsselte Verbindungen für PostgreSQL-DB-Instances in Amazon RDS
<a name="enable-encrypted-connections-for-postgresql-db-instances-in-amazon-rds"></a>

*Rohit Kapoor, Amazon Web Services*

## Zusammenfassung
<a name="enable-encrypted-connections-for-postgresql-db-instances-in-amazon-rds-summary"></a>

Amazon Relational Database Service (Amazon RDS) unterstützt SSL-Verschlüsselung für PostgreSQL-DB-Instances. Mit SSL können Sie eine PostgreSQL-Verbindung zwischen Ihren Anwendungen und Ihren Amazon RDS for PostgreSQL PostgreSQL-DB-Instances verschlüsseln. Standardmäßig verwendet Amazon RDS for PostgreSQL Verschlüsselung SSL/TLS und erwartet, dass alle Clients eine Verbindung herstellen. SSL/TLS Amazon RDS for PostgreSQL unterstützt die TLS-Versionen 1.1 und 1.2.

Dieses Muster beschreibt, wie Sie verschlüsselte Verbindungen für eine Amazon RDS for PostgreSQL PostgreSQL-DB-Instance aktivieren können. Sie können dasselbe Verfahren verwenden, um verschlüsselte Verbindungen für Amazon Aurora PostgreSQL-Compatible Edition zu aktivieren.

## Voraussetzungen und Einschränkungen
<a name="enable-encrypted-connections-for-postgresql-db-instances-in-amazon-rds-prereqs"></a>
+ Ein aktives AWS-Konto
+ Eine [Amazon RDS for PostgreSQL PostgreSQL-DB-Instance](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_RDS_Configuring.html)
+ [Ein SSL-Bundle](https://www.postgresql.org/docs/current/ssl-tcp.html)

## Architektur
<a name="enable-encrypted-connections-for-postgresql-db-instances-in-amazon-rds-architecture"></a>

![Aktivieren verschlüsselter Verbindungen für PostgreSQL-DB-Instances in Amazon RDS](https://docs.aws.amazon.com/de_de/prescriptive-guidance/latest/patterns/images/pattern-img/4f87c6a3-b4ff-4248-96d3-a4a498659735/images/ccc5c880-1191-4c12-a255-6908b96b96a5.png)


## Tools
<a name="enable-encrypted-connections-for-postgresql-db-instances-in-amazon-rds-tools"></a>
+ [pgAdmin](https://www.pgadmin.org/) ist eine Open-Source-Verwaltungs- und Entwicklungsplattform für PostgreSQL. Sie können pgAdmin unter Linux, Unix, macOS und Windows verwenden, um Ihre Datenbankobjekte in PostgreSQL 10 und höher zu verwalten.
+ [PostgreSQL-Editoren](https://wiki.postgresql.org/wiki/PostgreSQL_Clients) bieten eine benutzerfreundlichere Oberfläche, mit der Sie Abfragen erstellen, entwickeln und ausführen und Code gemäß Ihren Anforderungen bearbeiten können.

## Best Practices
<a name="enable-encrypted-connections-for-postgresql-db-instances-in-amazon-rds-best-practices"></a>
+ Überwachen Sie unsichere Datenbankverbindungen.
+ Überwachen Sie die Datenbankzugriffsrechte.
+ Stellen Sie sicher, dass Backups und Snapshots im Ruhezustand verschlüsselt sind.
+ Überwachen Sie den Datenbankzugriff.
+ Vermeiden Sie Gruppen mit uneingeschränktem Zugriff.
+ Verbessern Sie Ihre Benachrichtigungen mit [Amazon GuardDuty](https://docs.aws.amazon.com/guardduty/latest/ug/what-is-guardduty.html).
+ Überwachen Sie regelmäßig die Einhaltung der Richtlinien.

## Epen
<a name="enable-encrypted-connections-for-postgresql-db-instances-in-amazon-rds-epics"></a>

### Laden Sie ein vertrauenswürdiges Zertifikat herunter und importieren Sie es in Ihren Trust Store
<a name="download-a-trusted-certificate-and-import-it-into-your-trust-store"></a>


| Aufgabe | Description | Erforderliche Fähigkeiten | 
| --- | --- | --- | 
| Laden Sie ein vertrauenswürdiges Zertifikat auf Ihren Computer. | Gehen Sie wie folgt vor, um Zertifikate zum Speicher vertrauenswürdiger Stammzertifizierungsstellen für Ihren Computer hinzuzufügen. (In diesen Anweisungen wird Windows Server als Beispiel verwendet.)1. Wählen Sie in Windows Server **Start** und **Ausführen** aus, und geben Sie dann **mmc** ein.<br />2. Wählen Sie in der Konsole „**Datei“, „Snap-In** **hinzufügen/entfernen**“.<br />3. **Wählen Sie unter **Verfügbare Snap-Ins** die Option **Zertifikate** und dann Hinzufügen aus.**<br />4. **Wählen Sie unter **Dieses Snap-In verwaltet immer Zertifikate für die** Option **Computerkonto** und Weiter aus.**<br />5. Wählen Sie **Lokaler Computer**, **Fertig stellen** aus.<br />6. **Wenn Sie der Konsole keine weiteren Snap-Ins hinzufügen möchten, wählen Sie OK.**<br />7. **Doppelklicken Sie in der Konsolenstruktur auf Zertifikate.**<br />8. Klicken Sie mit der rechten Maustaste auf **vertrauenswürdige Stammzertifizierungsstellen**<br />9. Wählen Sie **Alle Aufgaben**, **Import**, um die heruntergeladenen Zertifikate zu importieren.<br />10. Folgen Sie den Schritten im Assistenten zum Import von Zertifikaten. | DevOps Ingenieur, Migrationsingenieur, DBA | 

### SSL-Verbindungen erzwingen
<a name="force-ssl-connections"></a>


| Aufgabe | Description | Erforderliche Fähigkeiten | 
| --- | --- | --- | 
| Erstellen Sie eine Parametergruppe und legen Sie den rds.force\_ssl-Parameter fest. | Wenn die PostgreSQL-DB-Instance über eine benutzerdefinierte Parametergruppe verfügt, bearbeiten Sie die Parametergruppe und ändern Sie `rds.force_ssl` sie auf 1.<br />Wenn die DB-Instance die Standardparametergruppe verwendet, für die keine `rds.force_ssl` Option aktiviert wurde, erstellen Sie eine neue Parametergruppe. Sie können die neue Parametergruppe mithilfe der Amazon RDS-API oder manuell wie in der folgenden Anleitung beschrieben ändern.<br />Um eine neue Parametergruppe zu erstellen:1. Melden Sie sich bei der AWS-Managementkonsole an und öffnen Sie [die Amazon RDS-Konsole](https://console.aws.amazon.com/rds/) für die AWS-Region, in der die DB-Instance gehostet wird.<br />2. Wählen Sie im Navigationsbereich **Parameter groups (Parametergruppen)** aus.<br />3. Wählen Sie **Parametergruppe erstellen** und legen Sie die folgenden Werte fest: Wählen Sie für **Parametergruppenfamilie** die Option **postgres14** aus.<database\_instance>Geben Sie als **Gruppenname **pgsql**** - -ssl ein.Geben Sie **unter Beschreibung** eine formlose Beschreibung für die Parametergruppe ein, die Sie hinzufügen.Wählen Sie **Erstellen** aus.<br />4. Wählen Sie die Parametergruppe aus, die Sie erstellt haben.<br />5. Wählen Sie für **Parameter group actions (Parametergruppenaktionen)** die Option **Bearbeiten**.<br />6. **Suchen Sie **rds.force\_ssl** und ändern Sie die Einstellung auf 1.**Führen Sie clientseitige Tests durch, bevor Sie diesen Parameter ändern.<br />7. Wählen Sie **Änderungen speichern ** aus.<br />So verknüpfen Sie die Parametergruppe mit Ihrer PostgreSQL-DB-Instance:1. Wählen Sie in der Amazon RDS-Konsole im Navigationsbereich **Datenbanken** und dann die PostgreSQL-DB-Instance aus.<br />2. Wählen Sie **Ändern** aus.<br />3. **Wählen Sie unter **Zusätzliche Konfiguration** die neue Parametergruppe aus und klicken Sie dann auf Weiter.**<br />4. Wählen Sie unter **Änderungen planen** die Option **Sofort anwenden** aus.<br />5. Wählen Sie **Modify DB Instance (DB-Instance ändern)** aus.<br />Weitere Informationen finden Sie in der [Dokumentation zu Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_WorkingWithDBInstanceParamGroups.html). | DevOps Ingenieur, Migrationsingenieur, DBA | 
| SSL-Verbindungen erzwingen. | Connect zur Amazon RDS for PostgreSQL PostgreSQL-DB-Instance her. Verbindungsversuche, die kein SSL verwenden, werden mit einer Fehlermeldung zurückgewiesen. Weitere Informationen finden Sie in der [Dokumentation zu Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/PostgreSQL.Concepts.General.SSL.html#PostgreSQL.Concepts.General.SSL.Requiring). | DevOps Ingenieur, Migrationsingenieur, DBA | 

### Installieren Sie die SSL-Erweiterung
<a name="install-ssl-extension"></a>


| Aufgabe | Description | Erforderliche Fähigkeiten | 
| --- | --- | --- | 
| Installieren Sie die SSL-Erweiterung. | 1. Starten Sie eine psql- oder pgAdmin-Verbindung als DBA.<br />2. Rufen Sie die Funktion **ssl\_is\_used () auf, um festzustellen, ob SSL verwendet wird**.<pre>select ssl_is_used();</pre><br />Die Funktion gibt zurück, `t` ob die Verbindung SSL verwendet; andernfalls kehrt sie zurück. `f`<br />3. Installieren Sie die SSL-Erweiterung.<pre>create extension sslinfo;<br />show ssl;<br />select ssl_cipher();</pre>Weitere Informationen finden Sie in der [Dokumentation zu Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/PostgreSQL.Concepts.General.SSL.html). | DevOps Ingenieur, Migrationsingenieur, DBA | 

### Konfigurieren Sie Ihren PostgreSQL-Client für SSL
<a name="configure-your-postgresql-client-for-ssl"></a>


| Aufgabe | Description | Erforderliche Fähigkeiten | 
| --- | --- | --- | 
| Konfigurieren Sie einen Client für SSL. | Mithilfe von SSL können Sie den PostgreSQL-Server mit Unterstützung für verschlüsselte Verbindungen starten, die TLS-Protokolle verwenden. Der Server überwacht sowohl Standard- als auch SSL-Verbindungen auf demselben TCP-Port und verhandelt mit jedem Client, der eine Verbindung herstellt, darüber, ob SSL verwendet werden soll. Standardmäßig ist dies eine Client-Option.<br />Wenn Sie den PSQL-Client verwenden:1. Stellen Sie sicher, dass das Amazon RDS-Zertifikat auf Ihren lokalen Computer geladen wurde.<br />2. Starten Sie eine SSL-Client-Verbindung, indem Sie Folgendes hinzufügen:<pre>psql postgres -h SOMEHOST.amazonaws.com -p 8192 -U someuser sslmode=verify-full sslrootcert=rds-ssl-ca-cert.pem<br />select ssl_cipher();</pre><br />Für andere PostgreSQL-Clients:+ Ändern Sie den jeweiligen öffentlichen Schlüsselparameter der Anwendung. Dies ist möglicherweise als Option, als Teil Ihrer Verbindungszeichenfolge oder als Eigenschaft auf der Verbindungsseite in GUI-Tools verfügbar. <br />Sehen Sie sich die folgenden Seiten für diese Clients an:+ [pgAdmin-Dokumentation](https://www.pgadmin.org/docs/)<br />+ [JDBC-Dokumentation](https://jdbc.postgresql.org/documentation/ssl/) | DevOps Ingenieur, Migrationsingenieur, DBA | 

## Fehlerbehebung
<a name="enable-encrypted-connections-for-postgresql-db-instances-in-amazon-rds-troubleshooting"></a>


| Problem | Lösung | 
| --- | --- | 
| Das SSL-Zertifikat kann nicht heruntergeladen werden. | Überprüfen Sie Ihre Verbindung zur Website und versuchen Sie erneut, das Zertifikat auf Ihren lokalen Computer herunterzuladen. | 

## Zugehörige Ressourcen
<a name="enable-encrypted-connections-for-postgresql-db-instances-in-amazon-rds-resources"></a>
+ [Dokumentation zu Amazon RDS for PostgreSQL](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_PostgreSQL.html)
+ [Verwenden von SSL mit einer PostgreSQL-DB-Instance](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/PostgreSQL.Concepts.General.SSL.html) (Amazon RDS-Dokumentation)
+ [Sichere TCP/IP Verbindungen mit SSL](https://www.postgresql.org/docs/9.1/ssl-tcp.html) (PostgreSQL-Dokumentation)
+ [Verwendung von SSL](https://jdbc.postgresql.org/documentation/ssl/) (JDBC-Dokumentation)