Private Endpunkte verwenden
Gen 2
Cloud Databases der zweiten Generation ermöglichen einen „Secure-by-Default“-Ansatz mithilfe privater Verbindungen, die durch Virtual Private Endpoints (VPE) bereitgestellt werden.
IBM Cloud® nutzt private Endpunkte, die den Zugriff auf Ihr internes Netzwerk einschränken und so Ihre Daten und Anwendungen vor unerwünschten Zugriffen und Sicherheitslücken schützen.
Private Endpunkte bieten zudem eine bessere Kontrolle über den Netzwerkverkehr zu Ihren Datenbanken, was für mehr Transparenz sorgt und es Ihnen ermöglicht, die Einhaltung von Compliance- und regulatorischen Anforderungen nachzuweisen.
Dieses Dokument behandelt alle „ Cloud Databases “ der zweiten Generation: Databases for PostgreSQL und Databases for MongoDB. Die Einrichtung virtueller privater Endpunkte ist mit Kosten verbunden, und für die Nutzung von VPC-Diensten von „ IBM Cloud “ über private Endpunkte fallen Netzwerkübertragungsgebühren an. Die Gebühren richten sich nach dem übertragenen Datenvolumen und folgen einem gestaffelten Preismodell. Verwenden Sie den Kostenrechner, um anhand Ihres voraussichtlichen Verbrauchs einen Kostenvoranschlag zu erstellen.
Möglichkeiten zur Verbindung mit Ihrer VPC-Instanz über private Endpunkte
Sie können über private Endpunkte von Ihrem lokalen Gerät oder einem Client außerhalb der VPC auf Ihre Instanz zugreifen. Stellen Sie eine Verbindung zu „ VPE for VPC “ her, um eine sichere Verbindung zu Diensten und Instanzen herzustellen, die aus Ihrem VPC-Netzwerk stammen. Die Anweisungen zum Herstellen einer Verbindung zu Ihrer Gen 2 (VPC)-Instanz hängen davon ab, von wo aus Sie die Verbindung herstellen und wo Ihre Anwendung ausgeführt wird.
- VPE über VSI – Bei dieser Methode wird eine Virtual Server Instance (VSI) verwendet, die sich in Ihrer Virtual Private Cloud (VPC) befindet und den Virtual Private Endpoint (VPE) nutzt, um eine sichere, private Verbindung zwischen Ressourcen innerhalb der VPC und externen „ IBM Cloud “-Diensten herzustellen.
- Verwenden Sie eine über eine VPE hergestellte VPN-Verbindung (Client-to-Site). Über das VPN können Sie von einem lokalen Laptop oder Client aus eine Verbindung herstellen und die Verwaltung über die VPC/VPE vornehmen. Weitere Informationen finden Sie unter „ Client to Site “.
- Verwenden Sie ein VPC-/VPN-Gateway für einen sicheren und vertraulichen lokalen Zugriff auf Cloud-Ressourcen. Weitere Informationen finden Sie unter „ Site-to-Site “.
Einrichtung virtueller privater Endpunkte über eine VSI
Schritt 1: Erstellen Sie eine VPC
Befolgen Sie die Anweisungen unter „ IBM Cloud “, um eine Virtual Private Cloud(VPC)zu erstellen. Stellen Sie sicher, dass sich die VPC in derselben Region befindet wie Ihre Datenbankbereitstellung.
Schritt 2: Erstellen Sie eine VSI und einen SSH-Schlüssel
- Stellen Sie eine VSI innerhalb der VPC bereit, indem Sie die Anweisungen zum Erstellen virtueller Serverinstanzen in der Benutzeroberfläche „Virtuelle Serverinstanzen für VPC“ befolgen. Weisen Sie dem VSI eine Floating-IP zu, um externen SSH-Zugriff zu ermöglichen (optional für Testzwecke).
- Erstellen Sie einen SSH-Schlüssel für die sichere Anmeldung und fügen Sie ihn bei. Ausführliche Anweisungen zum Erstellen eines SSH-Schlüsselpaars finden Sie unter „ Erste Schritte mit SSH-Schlüsseln “.
- Sobald das Schlüsselpaar bereit ist, verschieben Sie den privaten Schlüssel in das Verzeichnis „
~/.ssh“ auf Ihrem lokalen Rechner, um die bewährten Verfahren für eine sichere SSH-Schlüsselverwaltung zu befolgen. - Ändern Sie die Berechtigungen für den privaten Schlüssel. Dadurch wird der Schlüssel für den Dateibesitzer schreibgeschützt. Führen Sie auf Systemen vom Typ „ Unix “, wie beispielsweise macOS,, den folgenden Befehl aus:
$ chmod 400 ~/.ssh/<NAME_OF_THE_SSH_KEY>
- Stellen Sie über SSH eine Verbindung zu Ihrem VSI her, indem Sie den folgenden Befehl verwenden:
$ ssh -i ~/.ssh/<NAME_OF_THE_SSH_KEY> root@<FLOATING_IP_ADDRESS>
Schritt 3: Erstellen Sie eine VPE
Klicken Sie in der „ IBM Cloud “-Konsole auf das Menüsymbol und wählen Sie „VPC-Infrastruktur“ > „Netzwerk“ > „Gateways für virtuelle private Endpunkte“ aus. Erstellen Sie anhand dieser Anleitung eine VPE für Ihre „ Cloud Databases “-Instanzen.
Verbinden Sie die VPE mit Ihrer VPC und Ihrem Subnetz.
Schritt 4: VPC-Sicherheitsgruppen aktualisieren
Passen Sie die Sicherheitsgruppe so an, dass ausgehender Datenverkehr von Ihrem VSI zur Datenbankinstanz zugelassen wird. Stellen Sie sicher, dass die von Ihrer Datenbank benötigten Ports (z. B. PostgreSQL oder MongoDB ) offen sind.
Schritt 5: Erstellen Sie einen Dienstschlüssel für Ihre Datenbank
Erstellen Sie mithilfe der CLI oder der Benutzeroberfläche von „ IBM Cloud “ einen Dienstschlüssel für die Datenbank. Der Dienstschlüssel enthält die Informationen, die für den Zugriff auf die Datenbank erforderlich sind.
Schritt 6: Stellen Sie über private Endpunkte eine Verbindung zu Ihrer Datenbank her
Installieren und überprüfen Sie den erforderlichen Datenbank-Client und stellen Sie mithilfe der Verbindungsdaten aus dem Service-Schlüssel eine Verbindung zur Datenbank her. Dieser Befehl hängt von der jeweiligen Datenbank ab. Die für die jeweilige Datenbank erforderlichen Anweisungen sind in der folgenden Tabelle aufgeführt.
| Service | Client-Tool | Beispielbefehl |
|---|---|---|
| Databases for PostgreSQL | psql |
Sie können von einer lokalen Umgebung aus eine Verbindung zur VSI herstellen, indem Sie das Stammzertifikat von einem lokalen Rechner an die VSI senden.$ PGPASSWORD=$PASSWORD psql “<PASSWORD> Sie können Ihre Verbindung
mit dem folgenden Befehl überprüfen (optional):$ /list |
| Databases for MongoDB | mongosh |
Mit dem folgenden Befehl können Sie Ihre Verbindung überprüfen:--eval "db.stats()" |
Einrichten virtueller privater Endpunkte über eine VPN-Verbindung
Verwenden Sie ein VPN, um eine Verbindung zu einer VPC herzustellen und auf eine VPE zuzugreifen. Über das VPN können Sie von einem lokalen Laptop oder Client aus über den virtuellen privaten Endpunkt in Ihrer VPC eine Verbindung zu Ihrer Instanz herstellen und diese verwalten.
Schritt 1: Erstellen Sie eine VPC
Befolgen Sie die Anweisungen unter „ IBM Cloud “, um eine Virtual Private Cloud(VPC)zu erstellen. Stellen Sie sicher, dass sich die VPC in derselben Region befindet wie Ihre Datenbankbereitstellung.
Schritt 2: Erstellen Sie eine VPE
- Klicken Sie in der „ IBM Cloud “-Konsole auf das Menüsymbol und wählen Sie „VPC-Infrastruktur“ > „Netzwerk“ > „Gateways für virtuelle private Endpunkte“ aus. Erstellen Sie anhand dieser Anleitung eine VPE für Ihre „ Cloud Databases “-Instanzen.
- Verbinden Sie die VPE mit Ihrer VPC und Ihrem Subnetz.
Schritt 3: VPC-Sicherheitsgruppen aktualisieren
Passen Sie die Sicherheitsgruppe so an, dass ausgehender Datenverkehr von Ihrem VSI zur Datenbankinstanz zugelassen wird. Stellen Sie sicher, dass die von Ihrer Datenbank benötigten Ports (z. B. PostgreSQL oder MongoDB ) offen sind.
Schritt 4: Erstellen Sie den VPN-Server
- Erstellen Sie eine „ IBM Cloud Instanz des Secrets-Managers “.
- Erstellen Sie im Secrets Manager eine Zertifikats-Engine und generieren Sie ein Zertifikat für den VPN-Server.
- Richten Sie eine IAM-Service-zu-Service-Autorisierung vom VPN-Server zum Secrets Manager ein, damit der VPN-Server das Zertifikat sicher abrufen kann.
- Erstellen Sie einen VPN-Server für die VPC und geben Sie dabei die in Schritt 1 erstellte VPC an. Konfigurieren Sie es so, dass das im Secrets Manager gespeicherte Zertifikat verwendet wird.
Sie haben nun einen VPN-Server eingerichtet, mit dem Sie einen sicheren Tunnel zur VPC herstellen können.
Schritt 5: Verbindung zum VPN herstellen
Laden Sie die VPN-Client-Datei herunter und stellen Sie mithilfe eines VPN-Clients eine Verbindung zum VPN her.
Schritt 6: Stellen Sie über private Endpunkte eine Verbindung zu Ihrer Datenbank her
| Service | Client-Tool | Beispielbefehl |
|---|---|---|
| Databases for PostgreSQL | psql |
Mit dem folgenden Befehl können Sie Ihre Verbindung überprüfen:$ /list |
| Databases for MongoDB | mongosh |
Mit dem folgenden Befehl können Sie Ihre Verbindung überprüfen:--eval "db.stats()" |
Einrichtung eines VPC-/VPN-Gateways vor Ort
Verwenden Sie ein VPC-/VPN-Gateway für einen sicheren und vertraulichen lokalen Zugriff auf Cloud-Ressourcen.
Schritt 1: Erstellen Sie eine VPC
Befolgen Sie die Anweisungen unter „ IBM Cloud “, um eine Virtual Private Cloud(VPC)zu erstellen. Stellen Sie sicher, dass sich die VPC in derselben Region befindet wie Ihre Datenbankbereitstellung.
Schritt 2: Erstellen Sie eine VPE
- Klicken Sie in der „ IBM Cloud “-Konsole auf das Menüsymbol und wählen Sie -> VPC-Infrastruktur -> Netzwerk -> Gateways für virtuelle private Endpunkte. Erstellen Sie anhand dieser Anleitung eine VPE für Ihre „ Cloud Databases “-Instanzen.
- Verbinden Sie die VPE mit Ihrer VPC und Ihrem Subnetz.
Schritt 3: VPC-Sicherheitsgruppen aktualisieren
Aktualisieren Sie die Sicherheitsgruppen mit Regeln, um den Datenverkehr zwischen dem VPN, dem Gateway und der VPE zu ermöglichen.
Schritt 4: Stellen Sie eine Verbindung her, indem Sie ein VPN einrichten
- Erstellen Sie ein VPN-Gateway in der VPC.
- Verwenden Sie strongSwan, ein beliebtes VPN-Gateway, um ein lokales VPN-Gateway zu simulieren.
- Konfigurieren Sie die DNS-Auflösung so, dass Anfragen über den DNS-Resolver von IBM Cloud weitergeleitet werden.
Schritt 5: Melden Sie sich im Netzwerk an
Melden Sie sich im Netzwerk an, indem Sie eine Verbindung über das VPN herstellen. Wenn das Service-to-Service-VPN aktiv ist, wird der sichere Verbindungspfad automatisch hergestellt, sodass der Zugriff auf den lokalen VSI und den Cloud-Bastion-Host möglich ist.
Schritt 6: Stellen Sie über private Endpunkte eine Verbindung zu Ihrer Datenbank her
Stellen Sie von einem lokalen Standort aus eine Verbindung zu Ihrer Datenbank her, indem Sie den erforderlichen Client installieren und überprüfen. Die Clients für die einzelnen Datenbanken sowie Beispiele für Überprüfungsbefehle sind in der folgenden Tabelle aufgeführt:
| Service | Client-Tool | Beispielbefehl |
|---|---|---|
| Databases for PostgreSQL | psql |
Sie können Ihre Verbindung mit dem folgenden Befehl überprüfen (optional):$ /list |
| Databases for MongoDB | mongosh |
Mit dem folgenden Befehl können Sie Ihre Verbindung überprüfen:--eval "db.stats()" |