In dieser Anleitung wird beschrieben, wie Sie mit dem Zertifikatmanager ein globales selbstverwaltetes Zertifikat bereitstellen.
Die folgenden Load-Balancer unterstützen globale selbstverwaltete Zertifikate:
- Globaler externer Application Load Balancer
- Klassischer Application Load Balancer
- Globaler externer Proxy-Network Load Balancer
- Regionsübergreifender interner Application Load Balancer
Informationen zum Bereitstellen eines selbstverwalteten Zertifikats für einen regionalen externen oder regionalen internen Application Load Balancer finden Sie unter Regionales selbstverwaltetes Zertifikat bereitstellen.
Lernziele
In diesem Anleitung werden die folgenden Aufgaben erläutert:
- Laden Sie ein selbstverwaltetes Zertifikat in den Zertifikatmanager hoch.
- Stellen Sie das Zertifikat mithilfe eines Ziel-HTTPS-Proxys auf einem unterstützten Load-Balancer bereit.
Weitere Informationen zum Bereitstellen von Zertifikaten finden Sie unter Bereitstellungsübersicht.
Hinweise
-
Wählen Sie in der Google Cloud Console auf der Seite der Projektauswahl ein Google Cloud-Projekt aus oder erstellen Sie eines.
Für die Ausführung der Aufgaben in dieser Anleitung benötigen Sie die folgenden Rollen:
- Inhaber des Zertifikatsmanagers: Erforderlich zum Erstellen und Verwalten von Zertifikatsmanager-Ressourcen.
- Compute Load Balancer Admin oder Compute Network Admin: Erforderlich zum Erstellen und Verwalten des HTTPS-Zielproxys.
Hier finden Sie weitere Informationen:
- Rollen und Berechtigungen für Certificate Manager
- Compute Engine-IAM-Rollen und -Berechtigungen für Compute Engine
Load-Balancer erstellen
Erstellen Sie den Load-Balancer, in dem Sie das Zertifikat bereitstellen möchten.
Informationen zum Erstellen eines globalen externen Application Load Balancers finden Sie unter Globalen externen Application Load Balancer mit VM-Instanzgruppen-Back-Ends einrichten.
Informationen zum Erstellen eines klassischen Application Load Balancers finden Sie unter Klassischen Application Load Balancer mit den Back-Ends einer verwalteten Instanzgruppe einrichten.
Informationen zum Erstellen eines globalen externen Proxy-Network Load Balancers (SSL-Proxy) finden Sie unter Globalen externen Proxy-Network Load Balancer (SSL-Proxy) mit VM-Instanzgruppen-Back-Ends einrichten.
Informationen zum Erstellen eines globalen externen Proxynetzwerk-Load-Balancers (TCP-Proxy) finden Sie unter Globalen externen Proxy-Network Load Balancer (TCP-Proxy) mit VM-Instanzgruppen-Back-Ends einrichten.
Informationen zum Erstellen eines regionsübergreifenden internen Application Load Balancers finden Sie unter Regionenübergreifenden internen Application Load Balancer mit VM-Instanzgruppen-Back-Ends einrichten.
Im weiteren Verlauf dieser Anleitung wird davon ausgegangen, dass Sie die Back-Ends, die Systemdiagnose, den Back-End-Dienst und die URL-Zuordnung des Load-Balancers bereits konfiguriert haben. Notieren Sie sich den Namen der URL-Zuordnung, da Sie ihn später in dieser Anleitung benötigen.
Privaten Schlüssel und Zertifikat erstellen
So erstellen Sie einen privaten Schlüssel und ein Zertifikat:
Verwenden Sie eine vertrauenswürdige externe Zertifizierungsstelle, um das Zertifikat zusammen mit dem zugehörigen Schlüssel auszustellen.
Prüfen Sie, ob das Zertifikat ordnungsgemäß verkettet und als Root-vertrauenswürdig eingestuft ist.
Bereiten Sie die folgenden PEM-codierten Dateien vor:
- Zertifikatsdatei (CRT)
- Die entsprechende private Schlüsseldatei (KEY)
Informationen zum Anfordern und Validieren eines Zertifikats finden Sie unter Privaten Schlüssel und Zertifikat erstellen.
Selbstverwaltetes Zertifikat in den Zertifikatmanager hochladen
Console
Rufen Sie in der Google Cloud Console die Seite Zertifikatmanager auf.
Wählen Sie auf der angezeigten Seite den Tab Zertifikate aus.
Klicken Sie auf Zertifikat hinzufügen.
Geben Sie einen Namen für das Zertifikat ein.
Dieser Name muss für das Projekt eindeutig sein.
Optional: Geben Sie eine Beschreibung für das Zertifikat ein. Die Beschreibung hilft Ihnen, ein bestimmtes Zertifikat später wiederzufinden.
Wählen Sie für Standort die Option Global aus.
Wählen Sie für Umfang eine beliebige der folgenden Optionen aus:
- Standard: Wählen Sie die Standardeinstellung für Globaler externer Application Load Balancer, einen klassischen Application Load Balancer oder einen globalen externen Proxy-Network Load Balancer aus.
- Alle Regionen: Wählen Sie alle Regionen für einen regionenübergreifenden internen Application Load Balancer aus.
Wählen Sie für Zertifikatstyp die Option Selbstverwaltetes Zertifikat erstellen aus.
Führen Sie im Feld Zertifikat einen der folgenden Schritte aus:
- Klicken Sie auf die Schaltfläche Hochladen und wählen Sie die Zertifikatsdatei im PEM-Format aus.
- Kopieren Sie den Inhalt eines PEM-formatierten Zertifikats und fügen Sie ihn ein. Der Inhalt muss mit
-----BEGIN CERTIFICATE-----
beginnen und mit-----END CERTIFICATE-----
enden.
Führen Sie im Feld Zertifikat für privaten Schlüssel einen der folgenden Schritte aus:
- Klicken Sie auf Hochladen und wählen Sie Ihren privaten Schlüssel aus. Ihr privater Schlüssel muss das Format PEM haben und darf nicht mit einer Passphrase geschützt sein.
- Kopieren Sie den Inhalt des privaten Schlüssels im PEM-Format und fügen Sie ihn ein. Der private Schlüssel muss mit
-----BEGIN PRIVATE KEY-----
beginnen und mit-----END PRIVATE KEY-----
enden.
Geben Sie ein Label an, das mit dem Zertifikat verknüpft werden soll. Sie können bei Bedarf mehr als ein Label hinzufügen. Klicken Sie zum Hinzufügen eines Labels auf die Schaltfläche add_box Label hinzufügen und geben Sie eine
key
und einevalue
für das Label an.Klicken Sie auf Erstellen. Prüfen Sie, ob das neue Zertifikat in der Liste der Zertifikate angezeigt wird.
gcloud
So laden Sie das Zertifikat in den Zertifikatmanager hoch:
Für einen globalen externen Application Load Balancer, einen klassischen Application Load Balancer oder einen globalen externen Proxy-Network Load Balancer:
Führen Sie dazu diesen Befehl aus:
gcloud certificate-manager certificates create CERTIFICATE_NAME \ --certificate-file="CERTIFICATE_FILE" \ --private-key-file="PRIVATE_KEY_FILE"
Ersetzen Sie Folgendes:
CERTIFICATE_NAME
: der eindeutige Name des ZertifikatsCERTIFICATE_FILE
: Pfad und Dateiname der CRT-ZertifikatsdateiPRIVATE_KEY_FILE
: Pfad und Dateiname der privaten KEY-Schlüsseldatei
Für einen regionsübergreifenden internen Application Load Balancer:
Führen Sie dazu diesen Befehl aus:
gcloud certificate-manager certificates create CERTIFICATE_NAME \ --certificate-file="CERTIFICATE_FILE" \ --private-key-file="PRIVATE_KEY_FILE" \ --scope=all-regions
Ersetzen Sie Folgendes:
CERTIFICATE_NAME
: der eindeutige Name des ZertifikatsCERTIFICATE_FILE
: Pfad und Dateiname der CRT-ZertifikatsdateiPRIVATE_KEY_FILE
: Pfad und Dateiname der privaten KEY-Schlüsseldatei
Selbstverwaltetes Zertifikat für einen Load-Balancer bereitstellen
In den folgenden Abschnitten wird beschrieben, wie Sie das selbstverwaltete Zertifikat, das Sie in den Zertifikatmanager hochgeladen haben, auf einem Load-Balancer bereitstellen.
Je nach Load-Balancer-Typ können Sie Zertifikate so bereitstellen:
- Stellen Sie für die folgenden Load-Balancer das Zertifikat mithilfe einer Zertifikatszuordnung bereit:
- Globaler externer Application Load Balancer
- Globaler externer Proxy-Network Load Balancer
- Klassischer Application Load Balancer
- Stellen Sie für den regionsübergreifenden internen Application Load Balancer das Zertifikat bereit, indem Sie es direkt an den Zielproxy anhängen.
Zertifikat mithilfe einer Zertifikatszuordnung bereitstellen
In diesem Abschnitt werden die Schritte zum Bereitstellen eines Zertifikats mithilfe einer Zertifikatszuordnung beschrieben.
Zertifikatzuordnung erstellen
Erstellen Sie eine Zertifikatzuordnung, die auf den Zertifikatszuordnungseintrag verweist, der mit Ihrem Zertifikat verknüpft ist:
gcloud certificate-manager maps create CERTIFICATE_MAP_NAME
Ersetzen Sie CERTIFICATE_MAP_NAME
durch den Namen der Zielzertifikatzuordnung.
Eintrag für Zertifikatszuordnung erstellen
Erstellen Sie einen Zertifikatszuordnungseintrag und verknüpfen Sie ihn mit Ihrem selbstverwalteten Zertifikat und der Zertifikatzuordnung:
gcloud certificate-manager maps entries create CERTIFICATE_MAP_ENTRY_NAME \ --map="CERTIFICATE_MAP_NAME" \ --certificates="CERTIFICATE_NAME" \ --hostname="HOSTNAME"
Ersetzen Sie Folgendes:
CERTIFICATE_MAP_ENTRY_NAME
: ein eindeutiger Name des ZertifikatszuordnungseintragsCERTIFICATE_MAP_NAME
: der Name der Zertifikatszuordnung, an den der Zertifikatszuordnungseintrag angehängt istCERTIFICATE_NAME
: der Zertifikatsname, den Sie mit dem Zertifikatzuordnungseintrag verknüpfen möchtenHOSTNAME
: der Hostname, den Sie mit dem Zertifikatzuordnungseintrag verknüpfen möchten
Prüfen, ob der Eintrag für die Zertifikatszuordnung aktiv ist
Bevor Sie die Zertifikatszuordnung an den Zielproxy anhängen, führen Sie den folgenden Befehl aus, um zu prüfen, ob der Eintrag für die Zertifikatszuordnung aktiv ist:
gcloud certificate-manager maps entries describe CERTIFICATE_MAP_ENTRY_NAME \ --map="CERTIFICATE_MAP_NAME"
Ersetzen Sie Folgendes:
CERTIFICATE_MAP_ENTRY_NAME
: ein eindeutiger Name des ZertifikatszuordnungseintragsCERTIFICATE_MAP_NAME
: der Name der Zertifikatszuordnung, an den der Zertifikatszuordnungseintrag angehängt ist
Wenn der Eintrag für die Zertifikatszuordnung aktiv ist, gibt die Google Cloud CLI in etwa folgende Ausgabe zurück:
certificates: createTime: '2021-09-06T10:01:56.229472109Z' hostname: example.com name: projects/my-project/locations/global/certificateMaps/myCertMap/certificateMapEntries/myCertMapEntry state: ACTIVE updateTime: '2021-09-06T10:01:58.277031787Z'
HTTPS-Zielproxy erstellen
Informationen zum Erstellen eines HTTPS-Zielproxys finden Sie unter Zielproxy erstellen.
Zertifikatszuordnung an den Zielproxy anhängen
So hängen Sie die konfigurierte Zertifikatszuordnung an den Zielproxy an:
Rufen Sie in der Google Cloud Console die Seite Zielproxys auf.
Notieren Sie sich den Namen des Zielproxys.
Führen Sie den folgenden Befehl aus, um die Zertifikatszuordnung an den Zielproxy anzuhängen:
gcloud compute target-https-proxies update PROXY_NAME \ --certificate-map="CERTIFICATE_MAP_NAME"
Ersetzen Sie Folgendes:
PROXY_NAME
: der Name des ZielproxysCERTIFICATE_MAP_NAME
: der Name der Zertifikatszuordnung, die auf Ihren Zertifikatszuordnungseintrag und das zugehörige Zertifikat verweist
Wenn TLS (SSL)-Zertifikate direkt an den Proxy angehängt sind, bevorzugt der Proxy die Zertifikate, auf die in der Zertifikatszuordnung verwiesen wird, gegenüber direkt angehängten Zertifikaten.
Weiterleitungsregel erstellen
Richten Sie eine Weiterleitungsregel ein und schließen Sie die Einrichtung des Load-Balancers ab. Weitere Informationen finden Sie unter Weiterleitungsregeln verwenden.
Hängen Sie das Zertifikat direkt an den Zielproxy an
Führen Sie den folgenden Befehl aus, um das Zertifikat direkt an den Proxy anzuhängen:
gcloud compute target-https-proxies update PROXY_NAME \ --url-map=URL_MAP \ --global \ --certificate-manager-certificates=CERTIFICATE_NAME
Ersetzen Sie Folgendes:
PROXY_NAME
: Ein eindeutiger Name des Proxys.URL_MAP
ist der Name der URL-Zuordnung. Sie haben die URL-Zuordnung beim Erstellen des Load-Balancers erstellt.CERTIFICATE_NAME
: der Name des Zertifikats.
Bereinigen
So machen Sie die in dieser Anleitung vorgenommenen Änderungen rückgängig:
Trennen Sie die Zertifikatszuordnung vom Proxy:
gcloud compute target-https-proxies update PROXY_NAME \ --clear-certificate-map
Ersetzen Sie
PROXY_NAME
durch den Namen des Zielproxys.Beachten Sie Folgendes, bevor Sie die Zertifikatszuordnung vom Proxy trennen:
- Achten Sie darauf, dass mindestens ein TLS-Zertifikat (SSL) direkt an den Proxy angehängt ist. Wenn keine Zertifikate an den Proxy angehängt sind, können Sie die Zertifikatszuordnung nicht trennen.
- Wenn Sie die Zertifikatszuordnung von einem Proxy trennen, kann der Proxy weiterhin TLS (SSL)-Zertifikate verwenden, die direkt an den Proxy angehängt waren.
Löschen Sie den Zertifikatszuordnungseintrag aus der Zertifikatszuordnung:
gcloud certificate-manager maps entries delete CERTIFICATE_MAP_ENTRY_NAME \ --map="CERTIFICATE_MAP_NAME"
Ersetzen Sie Folgendes:
CERTIFICATE_MAP_ENTRY_NAME
: der Name des Eintrags für die ZielzertifikatzuordnungCERTIFICATE_MAP_NAME
: der Name der Zielzertifikatzuordnung
Löschen Sie die Zertifikatszuordnung:
gcloud certificate-manager maps delete CERTIFICATE_MAP_NAME
Ersetzen Sie
CERTIFICATE_MAP_NAME
durch den Namen der Zielzertifikatzuordnung.Löschen Sie das hochgeladene Zertifikat:
gcloud certificate-manager certificates delete CERTIFICATE_NAME
Ersetzen Sie
CERTIFICATE_NAME
durch den Namen des Zielzertifikats.