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 Application Load Balancer oder einen 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 über einen Ziel-HTTPS-Proxy für einen unterstützten Load-Balancer bereit.
Weitere Informationen zur Bereitstellung von Zertifikaten finden Sie unter Bereitstellungsübersicht.
Hinweise
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Sie benötigen die folgenden Rollen, um die Aufgaben in dieser Anleitung auszuführen:
- Certificate Manager Owner (Inhaber des Zertifikatsmanagers): Erforderlich, um Zertifikatmanager-Ressourcen zu erstellen und zu verwalten.
- Administrator für Compute-Load-Balancer oder Compute-Netzwerkadministrator: Erforderlich zum Erstellen und Verwalten des HTTPS-Zielproxys.
Hier finden Sie weitere Informationen:
- Rollen und Berechtigungen für Zertifikatmanager
- Compute Engine-IAM-Rollen und -Berechtigungen für Compute Engine
Load-Balancer erstellen
Erstellen Sie den Load-Balancer, für den 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-Backends einrichten.
Informationen zum Erstellen eines klassischen Application Load Balancers finden Sie unter Klassischen Application Load Balancer mit den Backends einer verwalteten Instanzgruppe einrichten.
Informationen zum Erstellen eines globalen externen Proxy-Network Load Balancers (SSL-Proxys) finden Sie unter Globalen externen Proxy-Network Load Balancer (SSL-Proxy) mit VM-Instanzgruppen-Backends einrichten.
Informationen zum Erstellen eines globalen externen Proxy-Network 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 Regionsübergreifende interne 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 Zertifizierungsstelle eines Drittanbieters, um das Zertifikat 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 Certificate Manager 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. Anhand der Beschreibung können Sie später ein bestimmtes Zertifikat identifizieren.
Wählen Sie für Standort die Option Global aus.
Wählen Sie für Umfang eine der folgenden Optionen aus:
- Standard: Wählen Sie die Standardeinstellung für den globalen externen 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 Ihre PEM-formatierte Zertifikatsdatei 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. Die privaten Schlüssel müssen 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 mehrere Labels hinzufügen. Klicken Sie zum Hinzufügen eines Labels auf die Schaltfläche add_box Label hinzufügen und geben Sie
key
undvalue
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 Classic Application Load Balancer oder einen globalen externen Proxynetzwerk-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 das Zertifikat für den regionsübergreifenden internen Application Load Balancer 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 Zertifikatszuordnung, die auf den mit dem Zertifikat verknüpften Zertifikatszuordnungseintrag verweist:
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 Ihrer Zertifikatszuordnung:
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 Zertifikatszuordnungseintrags.CERTIFICATE_MAP_NAME
: der Name der Zertifikatszuordnung, an den der Zertifikatszuordnungseintrag angehängt istCERTIFICATE_NAME
: Der Zertifikatsname, den Sie mit dem Zertifikatzuordnungseintrag verknüpfen möchten.HOSTNAME
: Der Hostname, den Sie mit dem Zertifikatzuordnungseintrag verknüpfen möchten.
Prüfen, ob der Zertifikatzuordnungseintrag aktiv ist
Bevor Sie die Zertifikatszuordnung an den Zielproxy anhängen, führen Sie den folgenden Befehl aus, um zu prüfen, ob der Zertifikatszuordnungseintrag 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 Zertifikatszuordnungseintrags.CERTIFICATE_MAP_NAME
: der Name der Zertifikatszuordnung, an den der Zertifikatszuordnungseintrag angehängt ist
Wenn der Eintrag in der 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 den Eintrag Ihrer Zertifikatszuordnung 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.
Erstellen Sie eine Weiterleitungsregel.
Richten Sie eine Weiterleitungsregel ein und schließen Sie die Einrichtung des Load-Balancers ab. Weitere Informationen finden Sie unter Weiterleitungsregeln verwenden.
Zertifikat direkt an den Zielproxy anhängen
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
Führen Sie die folgenden Schritte aus, um die in dieser Anleitung vorgenommenen Änderungen rückgängig zu machen:
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/SSL-Zertifikat direkt an den Proxy angehängt ist. Wenn keine Zertifikate an den Proxy angehängt sind, können Sie die Zertifikatszuordnung nicht trennen.
- Durch das Trennen der Zertifikatszuordnung von einem Proxy kann der Proxy wieder TLS/SSL-Zertifikate verwenden, die direkt mit dem Proxy verbunden 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 Zieleintrags für die ZertifikatszuordnungCERTIFICATE_MAP_NAME
: der Name der Zielzertifikatszuordnung
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.