Wie konfiguriere ich einen bereitgestellten Amazon Aurora-DB-Cluster so, dass er öffentlich zugänglich ist?

Lesedauer: 4 Minute
0

Ich habe einen bereitgestellten Amazon Aurora-DB-Cluster und möchte ihn so konfigurieren, dass er öffentlich zugänglich ist. Außerdem möchte ich meinen Aurora-DB-Cluster vor externen Verbindungen schützen. Wie kann ich dies tun?

Kurzbeschreibung

Um von außerhalb der Amazon Virtual Private Cloud (Amazon VPC) eine Verbindung zu einem Aurora-DB-Cluster herzustellen, müssen die Instances im Cluster die folgenden Anforderungen erfüllen:

  • Die DB-Instance hat eine öffentliche IP-Adresse.
  • Die DB-Instance wird in einem öffentlich zugänglichen Subnetz ausgeführt.

Zusätzlich zur Konfiguration Ihrer DB-Instance für die Verbindung von außerhalb einer VPC können Sie die Verbindungen mithilfe von Transport Layer Security (TLS) sichern.

Lösung

Setzen Sie die Einstellung „Öffentlich zugänglich“ der DB-Instance auf Ja

Die Einstellung Öffentlich zugänglich für eine Amazon Relational Database Service (Amazon RDS)-DB-Instance regelt die Zuweisung einer öffentlichen IP-Adresse an die DB-Instance.

  • Wenn diese auf Nein gesetzt ist, hat die DB-Instance keine öffentliche IP-Adresse.
  • Wenn diese auf Ja gesetzt ist, hat die DB-Instance sowohl öffentliche als auch private IP-Adressen.

Gehen Sie folgendermaßen vor, um die Einstellung Öffentlich zugänglich der DB-Instance zu Ja zu ändern:

  1. Öffnen Sie die Amazon RDS-Konsole.
  2. Wählen Sie im Navigationsbereich Datenbanken und anschließend die DB-Instance aus.
  3. Wählen Sie Ändern aus.
  4. Erweitern Sie unter Konnektivität den Abschnitt Zusätzliche Konfiguration und wählen Sie dann Öffentlich zugänglich aus.
  5. Wählen Sie Weiter aus.
  6. Wählen Sie DB-Instance bearbeiten aus

Hinweis: Sie müssen nicht Sofort anwenden auswählen. Weitere Informationen darüber, wie sich Sofort anwenden auf Ausfallzeiten auswirken kann, finden Sie unter Verwendung des Parameters Sofort anwenden.

Führen Sie eine DB-Instance in einem öffentlichen Subnetz aus

Ein öffentliches Subnetz ist ein Subnetz, das mit einer Routing-Tabelle verknüpft ist, die eine Route zum Internet-Gateway hat, normalerweise die Standardroute 0.0.0.0/0. Diese Route aktiviert die DB-Instances in einem Subnetz, um mit Ressourcen außerhalb der VPC zu kommunizieren.

Für Aurora-DB-Instances können Sie kein bestimmtes Subnetz auswählen. Wählen Sie stattdessen eine DB-Subnetzgruppe aus, wenn Sie die Instance erstellen.

Eine DB-Subnetzgruppe ist eine Sammlung von Subnetzen, die zu einer VPC gehören. Bei der Erstellung des zugrunde liegenden Hosts wählt Amazon RDS nach dem Zufallsprinzip ein Subnetz aus der DB-Subnetzgruppe aus. In der Regel hat eine VPC sowohl öffentliche als auch private Subnetze. Wenn die DB-Subnetzgruppe öffentliche und private Subnetze enthält, starten Sie den zugrunde liegenden Host in einem öffentlichen Subnetz oder einem privaten Subnetz. Sie können von außerhalb der VPC keine Verbindung zur DB-Instance herstellen, wenn der zugrunde liegende Host in einem privaten Subnetz gestartet wird.

Erstellen Sie stattdessen eine DB-Subnetzgruppe mit Subnetzen mit ähnlicher Netzwerkkonfiguration. Erstellen Sie beispielsweise eine DB-Subnetzgruppe für öffentliche Subnetze und eine zweite DB-Subnetzgruppe für private Subnetze. Weitere Informationen finden Sie unter Arbeiten mit einer DB-Instance in einer Subnetzgruppe.

Gehen Sie wie folgt vor, um sicherzustellen, dass das von Ihrer DB-Instance verwendete Subnetz über einen Internetzugang verfügt:

  1. Stellen Sie sicher, dass an Ihre VPC mit einem Internet-Gateway verbunden ist.
  2. Stellen Sie sicher, dass alle Subnetze in der DB-Subnetzgruppe eine Routing-Tabelle mit Internet-Gateway verwenden.
    • Wenn das Subnetz die Haupt-Routing-Tabelle der VPC verwendet, fügen Sie die Route für das Internet-Gateway hinzu (Ziel ist 0.0.0.0/0).
    • Erstellen Sie bei Bedarf eine benutzerdefinierte Routing-Tabelle mit der Route zum Internet-Gateway und ordnen Sie sie dem Subnetz zu.
  3. Fügen Sie die öffentliche Quell-IP-Adresse, von der aus Sie eine Verbindung zur DB-Instance herstellen möchten, den Eingangsregeln für die Sicherheitsgruppe hinzu.
  4. Wählen Sie als Regeltyp je nach Engine-Typ MySQL/Aurora oder PostgreSQL aus.
  5. Geben Sie für Quelle den CIDR-Bereich manuell ein oder wählen Sie Meine IP aus, um von derselben Workstation aus eine Verbindung zur DB-Instance herzustellen.

Schützen Sie den DB-Cluster vor Verbindungen von außerhalb der VPC

Sie können TLS verwenden, um Verbindungen zu verschlüsseln, die von außerhalb einer VPC eingehen, da die Datenübertragung über das Internet erfolgt. Um sicherzustellen, dass Sie die höchste Sicherheitsstufe nutzen, verwenden Sie den Parameter ssl-ca, um das CA-Zertifikat zu übergeben, und aktivieren Sie anschließend die Hostnamenüberprüfung. Verwenden Sie die folgenden Beispielbefehle für TLS-Verbindungen, je nachdem, welche Version von Aurora Sie verwenden.

Amazon Aurora MySQL-kompatible Edition 5.6 und höher:

mysql -h test-aurora-56.cluster-xxxxxxxxxxxx.us-east-1.rds.amazonaws.com -u master_user --ssl-ca=rds-combined-ca-bundle.pem --ssl-verify-server-cert

Aurora MySQL-kompatibel 5.7 und höher:

mysql -h test-aurora-57.cluster-xxxxxxxxxxxx.us-east-1.rds.amazonaws.com -u master_user --ssl-ca=rds-combined-ca-bundle.pem --ssl-mode=VERIFY_IDENTITY

Amazon Aurora PostgreSQL-kompatible Edition:

psql -h test-aurora-pg.cluster-xxxxxxxxxxxx.us-east-1.rds.amazonaws.com -p 5432 "dbname=postgres user=master_user sslrootcert=rds-combined-ca-bundle.pem sslmode=verify-full"

Hinweis: Sie können TLS auch für DB-Cluster erzwingen. Für Aurora MySQL müssen Sie TLS auf der Datenbankbenutzerebene erzwingen. Setzen Sie für Aurora PostgreSQL-kompatibel den Parameter rds.force_ssl auf 1.


Ähnliche Informationen

Verwendung von SSL/TLS mit Aurora MySQL-DB-Clustern

Sicherung von Aurora PostgreSQL-Daten mit SSL

Wie kann ich über einen Bastion-Host von meinem Linux/macOS-Computer aus eine Verbindung zu meiner Amazon RDS-DB-Instance herstellen?

Wie kann ich private und öffentliche Aurora-Endpunkte in der Amazon RDS-Konsole konfigurieren?

AWS OFFICIAL
AWS OFFICIALAktualisiert vor 2 Jahren