In dieser Anleitung wird beschrieben, wie Sie mit dem Zertifikatmanager einem regionalen von Google verwalteten Zertifikat mit CA Service an einen regionalen externen Application Load Balancer oder einen regionalen internen Application Load Balancer.
Lernziele
In diesem Anleitung werden die folgenden Aufgaben erläutert:
- Mit dem Zertifikatmanager ein von Google verwaltetes Zertifikat mit dem CA-Dienst erstellen
- Zertifikat mithilfe eines Ziel-HTTPS für einen unterstützten Load-Balancer bereitstellen Proxy.
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 diesem Anleitung:
- Certificate Manager Owner (Inhaber des Zertifikatsmanagers): Erforderlich zum Erstellen und Zertifikatmanager-Ressourcen verwalten können.
- Administrator für Compute-Load-Balancer: Erforderlich zum Erstellen und Verwalten von HTTPS Zielproxy.
- CA Service Admin: Erforderlich, um Aktionen in CA-Dienst.
Hier finden Sie weitere Informationen:
- Rollen und Berechtigungen für Zertifikatmanager
- Compute Engine-IAM-Rollen und ‑Berechtigungen
- Berechtigungen und Rollen für CA Service
Erstellen Sie einen CA-Pool. Sie müssen zuerst erstellen und aktivieren mindestens eine Zertifizierungsstelle in diesem Zertifizierungsstellenpool vorhanden ist.
CA Service-Integration mit dem Zertifikatsmanager konfigurieren
Konfigurieren Sie den Zertifikatsmanager so, dass er in CA Service eingebunden wird:
Zertifikatmanager-Dienstkonto im Ziel erstellen Google Cloud-Projekt:
gcloud beta services identity create \ --service=certificatemanager.googleapis.com \ --project=PROJECT_ID
Ersetzen Sie
PROJECT_ID
durch die ID des Ziels. Google Cloud-Projekt
Der Befehl gibt den Namen der erstellten Dienstidentität zurück, wie in den folgendes Beispiel:
service-520498234@gcp-sa-certificatemanager.iam.gserviceaccount.com
Weisen Sie dem Dienstkonto des Zertifikatmanagers die Rolle „CA Service Certificate Requester“ im CA-Zielpool zu:
gcloud privateca pools add-iam-policy-binding CA_POOL \ --location LOCATION \ --member "serviceAccount:SERVICE_ACCOUNT" \ --role roles/privateca.certificateRequester
Ersetzen Sie Folgendes:
CA_POOL
: die ID des Ziel-CA-Pools.LOCATION
: der Google Cloud-Zielstandort. Sie müssen denselben Speicherort wie für den CA-Pool, die Konfigurationsressource für die Zertifikatsausstellung und das verwaltete Zertifikat angeben.SERVICE_ACCOUNT
: der vollständige Name des Dienstkontos die Sie in Schritt 1 erstellt haben.
Erstellen Sie eine Konfigurationsressource für die Zertifikatsausstellung für den CA-Pool:
gcloud beta certificate-manager issuance-configs create ISSUANCE_CONFIG_NAME \ --ca-pool=CA_POOL \ --location=LOCATION> \ [--lifetime=CERTIFICATE_LIFETIME] \ [--rotation-window-percentage=ROTATION_WINDOW_PERCENTAGE] \ [--key-algorithm=KEY_ALGORITHM]
Ersetzen Sie Folgendes:
ISSUANCE_CONFIG_NAME
: der eindeutige Name der Konfigurationsressource der Zertifikatsausstellung.CA_POOL
: der vollständige Ressourcenpfad und der Name der Zertifizierungsstelle Pool, den Sie dieser Konfigurationsressource für die Zertifikatsausstellung zuweisen möchten.LOCATION
: der Google Cloud-Zielstandort. Sie müssen denselben Speicherort wie für den CA-Pool, die Konfigurationsressource für die Zertifikatsausstellung und das verwaltete Zertifikat angeben.CERTIFICATE_LIFETIME
: die Lebensdauer des Zertifikats in Tage. Gültige Werte sind 21 bis 30 Tage im Standardformat für die Dauer. Die Standardeinstellung ist 30 Tage (30D
). Diese Einstellung ist optional.ROTATION_WINDOW_PERCENTAGE
: der Prozentsatz des Lebensdauer des Zertifikats, ab der die Verlängerung ausgelöst wird. Der Standardwert ist 66 Prozent. Sie müssen den Prozentsatz des Rotationsfensters im Verhältnis zum Gültigkeit des Zertifikats, sodass die Zertifikatsverlängerung mindestens 7 Tage dauert nach Ausstellung des Zertifikats und mindestens 7 Tage vor der Ausstellung verfällt. Diese Einstellung ist optional.KEY_ALGORITHM
: der Verschlüsselungsalgorithmus, der verwendet wird, um den privaten Schlüssel generieren. Gültige Werte sindecdsa-p256
undrsa-2048
. Der Standardwert istrsa-2048
. Diese Einstellung ist optional.
Weitere Informationen zu Konfigurationsressourcen für die Zertifikatsausstellung finden Sie unter Konfigurationen der Zertifikatsausstellung verwalten
Regionales von Google verwaltetes Zertifikat erstellen
Erstellen Sie ein von Google verwaltetes regionales Zertifikat, das von Ihrem CA-Dienst ausgestellt wurde, mithilfe der im vorherigen Schritt erstellten Konfigurationsressource für die Zertifikatsausstellung:
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 können Sie später ein bestimmtes Zertifikat identifizieren.
Wählen Sie für Standort die Option Regional aus.
Wählen Sie in der Liste Region eine Region aus.
Wählen Sie als Zertifikattyp die Option Von Google verwaltetes Zertifikat erstellen aus.
Wählen Sie als Typ der Zertifizierungsstelle die Option Privat aus.
Geben Sie die Domainnamen für das Zertifikat an. Geben Sie eine durch Kommas getrennte Liste der Zieldomains ein. Außerdem muss jeder Domainname ein voll qualifizierter Domainname sein, z. B.
myorg.example.com
.Wählen Sie unter Konfiguration der Zertifikatsausstellung den Namen des Zertifikats aus. Konfigurationsressource der Ausstellung, die auf den CA-Zielpool verweist.
Geben Sie ein Label an, das mit dem Zertifikat verknüpft werden soll. Sie können mehrere Labels hinzufügen. Um ein Label hinzuzufügen, klicken Sie auf das add_box Label hinzufügen und legen Sie
key
undvalue
für das Label fest.Klicken Sie auf Erstellen. Prüfen Sie, ob das neue Zertifikat in der Liste der Zertifikate angezeigt wird.
gcloud
Führen Sie dazu diesen Befehl aus:
gcloud beta certificate-manager certificates create CERTIFICATE_NAME \ --domains="DOMAIN_NAMES" \ --issuance-config="ISSUANCE_CONFIG_NAME" \ --location="LOCATION"
Ersetzen Sie Folgendes:
CERTIFICATE_NAME
: Ein eindeutiger Name des Zertifikats.DOMAIN_NAMES
: eine durch Kommas getrennte Liste der Zieldomains für dieses Zertifikat. Jeder Domainname muss ein voll qualifizierter Domainname sein, z. B.myorg.example.com
.ISSUANCE_CONFIG_NAME
: der Name des Zertifikats Konfigurationsressource der Ausstellung, die auf den CA-Zielpool verweist.LOCATION
: der Google Cloud-Zielstandort. Ich muss denselben Standort wie der CA-Pool und die Zertifikatsausstellung angeben Konfigurationsressource und verwaltetes Zertifikat.
API
Erstellen Sie das Zertifikat, indem Sie eine POST
-Anfrage an den
certificates.create
-Methode so:
POST /v1/projects/PROJECT_ID/locations/LOCATION/certificates?certificate_id=CERTIFICATE_NAME" { name: "/projects/example-project/locations/LOCATION/certificates/my-cert", "managed": { "domains": ["DOMAIN_NAME"], "issuanceConfig": "ISSUANCE_CONFIG_NAME", }, }
Ersetzen Sie Folgendes:
PROJECT_ID
: die ID des Google Cloud-Zielprojekts.LOCATION
: den Ziel-Google Cloud-Speicherort. Ich muss denselben Standort wie der CA-Pool und die Zertifikatsausstellung angeben Konfigurationsressource und verwaltetes Zertifikat.CERTIFICATE_NAME
: Ein eindeutiger Name des Zertifikats.DOMAIN_NAME
: die Zieldomain für dieses Zertifikat. Der Domainname muss ein vollständig qualifizierter Domainname sein, z. B.example.com
,www.example.com
.ISSUANCE_CONFIG_NAME
: der Name des Zertifikats Konfigurationsressource der Ausstellung, die auf den CA-Zielpool verweist.
Eine Übersicht über den Prozess der Zertifikatsbereitstellung finden Sie unter Bereitstellung Übersicht.
Prüfen, ob das Zertifikat aktiv ist
Prüfen Sie mit dem folgenden Befehl, ob das Zertifikat selbst aktiv ist, bevor Sie es auf dem Load-Balancer bereitstellen. Es kann einige Minuten dauern, bis der
Zertifikatstatus, der in ACTIVE
geändert werden soll.
gcloud beta certificate-manager certificates describe CERTIFICATE_NAME \ --location=LOCATION
Ersetzen Sie Folgendes:
CERTIFICATE_NAME
: Ein eindeutiger Name für das Zertifikat.LOCATION
: der Google Cloud-Zielstandort. Ich muss denselben Standort wie der CA-Pool und die Zertifikatsausstellung angeben Konfigurationsressource und verwaltetes Zertifikat.
Die Ausgabe des Befehls sieht in etwa so aus:
createTime: '2021-10-20T12:19:53.370778666Z' expireTime: '2022-05-07T05:03:49Z' managed: domains: - myorg.example.com issuanceConfig: projects/myproject/locations/mylocation/issuanceConfigs/myissuanceConfig state: ACTIVE name: projects/myproject/locations/mylocation/certificates/mycertificate pemCertificate: | -----BEGIN CERTIFICATE----- [...] -----END CERTIFICATE----- sanDnsnames: - myorg.example.com updateTime: '2021-10-20T12:19:55.083385630Z'
Regionales von Google verwaltetes Zertifikat für einen Load-Balancer bereitstellen
Erstellen Sie einen HTTPS-Zielproxy, um das regionale von Google verwaltete Zertifikat bereitzustellen und hängen Sie das Zertifikat an.
HTTPS-Zielproxy erstellen
Führen Sie den folgenden Befehl aus, um den HTTPS-Zielproxy zu erstellen und das Zertifikat anzuhängen: Befehl:
gcloud compute target-https-proxies create PROXY_NAME \ --url-map=URL_MAP \ --region=REGION \ --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 erstellt beim Erstellen des Lastenausgleichsmoduls.REGION
: die Region, in der Sie das HTTPS erstellen Zielproxy.CERTIFICATE_NAME
: der Name des Zertifikats.
Führen Sie den folgenden Befehl aus, um zu prüfen, ob der Zielproxy erstellt wurde:
gcloud compute target-https-proxies list
Erstellen Sie eine Weiterleitungsregel.
Richten Sie eine Weiterleitungsregel ein und schließen Sie die Einrichtung des Load-Balancers ab.
- Wenn Sie einen regionalen externen Application Load Balancer verwenden, lesen Sie den Hilfeartikel Regionalen externen Application Load Balancer mit VM-Instanzgruppen-Back-Ends einrichten.
- Wenn Sie einen regionalen internen Application Load Balancer verwenden, lesen Sie den Abschnitt Regionalen internen Application Load Balancer mit VM-Instanzgruppen-Back-Ends einrichten
Bereinigen
Führen Sie die folgenden Schritte aus, um die Änderungen, die Sie in dieser Anleitung vorgenommen haben, rückgängig zu machen. Schritte:
So löschen Sie das von Google verwaltete Zertifikat:
Console
Rufen Sie in der Google Cloud Console die Seite Zertifikatmanager auf.
Klicken Sie auf dem Tab Zertifikate auf das Kästchen des Zertifikats.
Klicken Sie auf Löschen.
Klicken Sie im angezeigten Dialogfeld zur Bestätigung auf Löschen.
gcloud
gcloud certificate-manager certificates delete CERTIFICATE_NAME \ --location=LOCATION
Ersetzen Sie Folgendes:
CERTIFICATE_NAME
: der Name des ZertifikatsLOCATION
: der Google Cloud-Zielstandort
Löschen Sie die Konfigurationsressource für die Zertifikatsausstellung:
Console
Rufen Sie in der Google Cloud Console die Seite Zertifikatmanager auf.
Klicken Sie auf dem Tab Issuance Configs (Ausgabekonfigurationen) das Kästchen neben Ausstellungskonfiguration.
Klicken Sie auf Löschen.
Klicken Sie im angezeigten Dialogfeld zur Bestätigung auf Löschen.
gcloud
gcloud certificate-manager issuance-configs delete ISSUANCE_CONFIG_NAME \ --location=LOCATION
Ersetzen Sie Folgendes:
ISSUANCE_CONFIG_NAME
: der Name der Ausstellung konfigurierenLOCATION
: der Google Cloud-Zielstandort
Löschen Sie den Zertifizierungsstellenpool wie unter Zertifizierungsstelle löschen Pool hinzu.
Zum Deaktivieren der zuletzt aktivierten Zertifizierungsstelle im Zertifizierungsstellenpool auf die in der Konfigurationsressource für die Zertifikatsausstellung verwiesen wird, oder löschen Sie die referenzierte CA-Pool insgesamt müssen Sie zuerst jede Konfigurationsressource für die Zertifikatsausstellung löschen, die auf diesen CA-Pool verweist.
Fehlerbehebung
Schritte zur Fehlerbehebung finden Sie unter Probleme im Zusammenhang mit Zertifikaten, die von einem CA Service-Instanz.