In dieser Anleitung wird beschrieben, wie Sie mit dem Zertifikatmanager ein regionales von Google verwaltetes Zertifikat auf einem regionalen externen Application Load Balancer oder auf einem regionalen internen Application Load Balancer bereitstellen.
Wenn Sie ein Zertifikat für einen regionalen externen Application Load Balancer oder einen regionalen internen Application Load Balancer bereitstellen möchten, hängen Sie es direkt an den Zielproxy an.
Lernziele
In diesem Anleitung werden die folgenden Aufgaben erläutert:
Erstellen Sie mit dem Zertifikatmanager ein von einer öffentlich vertrauenswürdigen Zertifizierungsstelle ausgestelltes, von Google verwaltetes Zertifikat mit DNS-Autorisierung. So erstellen Sie ein Regionales von Google verwaltetes Zertifikat, das Sie pro Projekt verwenden müssen Autorisierung.
Bereitstellen des Zertifikats auf einem unterstützten Load Balancer mit einem HTTPS-Zielproxy
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.
Für die Bereitstellung des Zertifikats ist die Google Cloud CLI-Version
465.0.0
oder höher erforderlich. Führen Sie den folgenden Befehl aus, um die Version der gcloud CLI zu prüfen:gcloud --version
Führen Sie den folgenden Befehl aus, um die gcloud CLI zu aktualisieren.
gcloud components update
Sie benötigen die folgenden Rollen, um die Aufgaben in diesem Anleitung:
- Zertifikatmanager-Inhaber: Erforderlich zum Erstellen und Verwalten von Zertifikatmanager-Ressourcen.
- Administrator für Compute-Load-Balancer oder Compute-Netzwerkadministrator: Erforderlich zum Erstellen und Verwalten des HTTPS-Zielproxys.
- DNS-Administrator: Erforderlich, wenn Sie Cloud DNS als DNS-Lösung verwenden möchten.
Hier finden Sie weitere Informationen:
- Rollen und Berechtigungen für den Zertifikatsmanager
- Compute Engine IAM-Rollen und Berechtigungen für Compute Engine
- Zugriffssteuerung mit IAM für Cloud DNS
Regionales von Google verwaltetes Zertifikat erstellen
Führen Sie die Schritte in diesem Abschnitt aus, um eine DNS-Autorisierung und ein von Google verwaltetes Zertifikat zu erstellen, das auf diese DNS-Autorisierung verweist.
DNS-Autorisierung erstellen
Erstellen Sie die DNS-Autorisierung wie in diesem Abschnitt beschrieben. Wenn Sie eine DNS-Autorisierung für ein Wildcard-Zertifikat wie *.myorg.example.com
erstellen, konfigurieren Sie die DNS-Autorisierung für die übergeordnete Domain, z. B. myorg.example.com
.
Bei einem regionalen von Google verwalteten Zertifikat ist der DNS-Autorisierungstyp ausschließlich auf PER_PROJECT_RECORD
festgelegt.
gcloud
gcloud certificate-manager dns-authorizations create AUTHORIZATION_NAME \ --domain="DOMAIN_NAME" \ --location="LOCATION" gcloud certificate-manager dns-authorizations describe AUTHORIZATION_NAME \ --location="LOCATION"
Ersetzen Sie Folgendes:
AUTHORIZATION_NAME
: der Name der DNS-Autorisierung.DOMAIN_NAME
: der Name der Domain, für die Sie diese DNS-Autorisierung erstellen. Der Domainname muss ein voll qualifizierter Name sein. Domainname, z. B.myorg.example.com
.LOCATION
: der Speicherort, an dem Sie die DNS-Autorisierung erstellen.
Der Befehl gibt eine Ausgabe wie im folgenden Beispiel zurück. Verwenden Sie den CNAME-Eintrag aus der Ausgabe, um ihn Ihrer DNS-Konfiguration hinzuzufügen.
createTime: '2022-01-14T13:35:00.258409106Z' dnsResourceRecord: data: 0e40fc77-a37d-4eb8-8fe1-eea2e18d12d9.4.us-central1.authorize.certificatemanager.goog. name: _acme-challenge_ujmmovf2vn55tgye.myorg.example.com. type: CNAME domain: myorg.example.com name: projects/myProject/locations/us-central1/dnsAuthorizations/myAuthorization updateTime: '2022-01-14T13:35:01.571086137Z'
CNAME-Eintrag zu DNS-Konfiguration hinzufügen
Wenn Sie Google Cloud zum Verwalten Ihres DNS verwenden, führen Sie die Schritte in diesem Abschnitt aus. Weitere Informationen finden Sie in der Dokumentation Ihrer DNS-Lösung eines Drittanbieters.
Stellen Sie vor dem Ausführen der Schritte in diesem Abschnitt sicher, dass Sie Sie haben eine öffentliche DNS-Zone erstellt.
Wenn Sie eine DNS-Autorisierung erstellen, gibt der gcloud CLI-Befehl Folgendes zurück: den entsprechenden CNAME-Eintrag. Sie müssen diesen CNAME-Eintrag folgendermaßen Ihrer DNS-Konfiguration in der DNS-Zone der Zieldomain hinzufügen:
gcloud
Starten Sie die Transaktion des DNS-Eintrags:
gcloud dns record-sets transaction start --zone="DNS_ZONE_NAME"
Ersetzen Sie
DNS_ZONE_NAME
durch den Namen des Ziel-DNS. .Fügen Sie den CNAME-Eintrag zur Ziel-DNS-Zone hinzu:
gcloud dns record-sets transaction add CNAME_RECORD_DATA \ --name="CNAME_RECORD_NAME" \ --ttl="30" \ --type="CNAME" \ --zone="DNS_ZONE_NAME"
Ersetzen Sie Folgendes:
CNAME_RECORD_DATA
: Der vollständige Datenwert des CNAME-Eintrags, der vom gcloud CLI-Befehl zurückgegeben wurde, mit dem die entsprechende DNS-Autorisierung erstellt wurde.CNAME_RECORD_NAME
: durch den vollständigen Namen des CNAME-Eintrags. Eintrag, der vom gcloud CLI-Befehl zurückgegeben wird, mit dem die entsprechende DNS-Autorisierung.DNS_ZONE_NAME
: der Name der DNS-Zielzone.
Sehen Sie sich folgendes Beispiel an:
gcloud dns record-sets transaction add 0e40fc77-a37d-4eb8-8fe1-eea2e18d12d9.4.us-central1.authorize.certificatemanager.goog. \ --name="_acme-challenge_ujmmovf2vn55tgye.myorg.example.com" \ --ttl="30" \ --type="CNAME" \ --zone="example-com"
Führen Sie die DNS-Eintragstransaktion aus, um die Änderungen zu speichern:
gcloud dns record-sets transaction execute --zone="DNS_ZONE_NAME"
Ersetzen Sie
DNS_ZONE_NAME
durch den Namen der DNS-Zielzone.
Regionales von Google verwaltetes Zertifikat erstellen, das auf die DNS-Autorisierung verweist
So erstellen Sie ein von Google verwaltetes Zertifikat, das auf die in den vorherigen Schritten erstellte DNS-Autorisierung verweist:
Console
Rufen Sie in der Google Cloud Console die Seite Zertifikatmanager auf.
Wählen Sie auf der 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 die Beschreibung für das Zertifikat ein. Anhand der Beschreibung können Sie ein bestimmtes Zertifikat später leichter identifizieren.
Wählen Sie für location 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 Öffentlich 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, z. B.
myorg.example.com
.Wählen Sie unter Autorisierungstyp die Option DNS-Autorisierung aus. Wenn dem Domainnamen eine DNS-Autorisierung zugewiesen ist, wird sie automatisch übernommen. Wenn dem Domainnamen keine DNS-Autorisierung zugeordnet ist, gehen Sie so vor:
- Klicken Sie auf Fehlende DNS-Autorisierung erstellen, um die Dialogfeld Create DNS Authorization (DNS-Autorisierung erstellen).
- Geben Sie im Feld Name der DNS-Autorisierung den Namen der DNS-Autorisierung an.
- Klicken Sie auf DNS-Autorisierung erstellen. Prüfen Sie, ob der DNS-Name mit dem Domainnamen verknüpft wird.
Geben Sie ein Label an, das dem Zertifikat zugeordnet werden soll. Sie können mehrere Labels hinzufügen. Klicken Sie auf add_boxLabel hinzufügen, um ein Label hinzuzufügen, und geben Sie einen
key
und einenvalue
für das Label an.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 certificate-manager certificates create CERTIFICATE_NAME \ --domains=DOMAIN_NAME \ --dns-authorizations=AUTHORIZATION_NAME \ --location=LOCATION
Ersetzen Sie Folgendes:
CERTIFICATE_NAME
: Ein eindeutiger Name für das Zertifikat.DOMAIN_NAME
: die Zieldomain des Zertifikats. Das Präfix „Sternchen Punkt“ (*.
) steht für ein Platzhalterzertifikat. Die muss ein vollständig qualifizierter Domainname sein, z. B.myorg.example.com
AUTHORIZATION_NAME
: der Name der DNS-Autorisierung, die Sie für dieses Zertifikat erstellt haben.LOCATION
: der Standort, an dem Sie die Von Google verwaltetes Zertifikat.
Um ein von Google verwaltetes Zertifikat mit einem Platzhalter-Domainnamen zu erstellen, verwenden Sie die Methode folgenden Befehl. Ein Wildcard-Domainnamenszertifikat deckt alle Subdomains der ersten Ebene einer bestimmten Domain ab.
gcloud certificate-manager certificates create CERTIFICATE_NAME \ --domains="*.DOMAIN_NAME,DOMAIN_NAME" \ --dns-authorizations=AUTHORIZATION_NAME \ --location=LOCATION
Ersetzen Sie Folgendes:
CERTIFICATE_NAME
: Ein eindeutiger Name für das Zertifikat.DOMAIN_NAME
: die Zieldomain des Zertifikats. Die Das Präfix*.
kennzeichnet ein Platzhalterzertifikat. Der Domainname muss ein vollständig qualifizierter Domainname wiemyorg.example.com
.AUTHORIZATION_NAME
: der Name der DNS-Autorisierung, die Sie für dieses Zertifikat erstellt haben.LOCATION
: Der Speicherort, an dem Sie das von Google verwaltete Zertifikat erstellen.
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 mehrere Stunden dauern, bis sich der Zertifikatstatus in ACTIVE
ändert.
gcloud certificate-manager certificates describe CERTIFICATE_NAME \ --location=LOCATION
Ersetzen Sie Folgendes:
CERTIFICATE_NAME
: Ein eindeutiger Name für das Zertifikat.LOCATION
: Der Standort, an dem Sie das von Google verwaltete Zertifikat erstellt haben.
Die Ausgabe sieht in etwa so aus:
createTime: '2021-10-20T12:19:53.370778666Z' expireTime: '2022-05-07T05:03:49Z' managed: authorizationAttemptInfo: - domain: myorg.example.com state: AUTHORIZED dnsAuthorizations: - projects/my-project/locations/us-central1/dnsAuthorizations/myAuth domains: - myorg.example.com state: ACTIVE name: projects/myProject/locations/us-central1/certificates/myCert pemCertificate: | -----BEGIN CERTIFICATE----- [...] -----END CERTIFICATE----- sanDnsnames: - myorg.example.com updateTime: '2021-10-20T12:19:55.083385630Z'
Zertifikat für einen Load-Balancer bereitstellen
Führen Sie die folgenden Schritte aus, um das von Google verwaltete Zertifikat auf einem Load Balancer bereitzustellen.
Bevor Sie mit den Aufgaben in diesem Abschnitt fortfahren, müssen Sie die Aufgaben ausgeführt haben, die im Abschnitt Regionales von Google verwaltetes Zertifikat erstellen aufgeführt sind.
Wenn Sie ein regionales von Google verwaltetes Zertifikat auf einem regionalen externen oder internen Application Load Balancer bereitstellen möchten, hängen Sie es direkt an den Zielproxy an.
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 \ --region=REGION \ --certificate-manager-certificates=CERTIFICATE_NAME
Ersetzen Sie Folgendes:
PROXY_NAME
: Ein eindeutiger Name für den Proxy.URL_MAP
: Der Name der URL-Zuordnung, die Sie beim Erstellen des Load Balancers erstellt haben.REGION
: Die Region, in der der HTTPS-Zielproxy erstellt werden soll.CERTIFICATE_NAME
: der Name des Zertifikats.
Bereinigen
Führen Sie die folgenden Schritte aus, um die Änderungen, die Sie in dieser Anleitung vorgenommen haben, rückgängig zu machen. Schritte:
- Löschen Sie das von Google verwaltete Zertifikat:
Ersetzen Sie Folgendes:gcloud certificate-manager certificates delete CERTIFICATE_NAME --location=LOCATION
CERTIFICATE_NAME
: der Name des Zertifikats.LOCATION
: der Speicherort, an dem Sie das von Google verwaltete Zertifikat erstellt haben.
- Löschen Sie die DNS-Autorisierung:
Ersetzen Sie Folgendes:gcloud certificate-manager dns-authorizations delete AUTHORIZATION_NAME --location=LOCATION
AUTHORIZATION_NAME
: der Name der DNS-Autorisierung.LOCATION
: Der Standort, an dem Sie die DNS-Autorisierung erstellt haben.