Ce tutoriel explique comment utiliser le gestionnaire de certificats pour déployer un certificat régional géré par Google avec CA Service sur un équilibreur de charge d'application externe régional ou sur un équilibreur de charge d'application interne régional.
Objectifs
Ce guide vous explique comment effectuer les tâches suivantes :
- Créez un certificat géré par Google avec le service CA à l'aide du gestionnaire de certificats.
- Déployez le certificat sur un équilibreur de charge compatible à l'aide d'un proxy HTTPS cible.
Pour en savoir plus sur le processus de déploiement du certificat, consultez la section Présentation du déploiement.
Avant de commencer
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Assurez-vous de disposer des rôles suivants pour effectuer les tâches de ce tutoriel:
- Propriétaire du gestionnaire de certificats: nécessaire pour créer et gérer des ressources du gestionnaire de certificats.
- Administrateur de l'équilibreur de charge Compute: nécessaire pour créer et gérer un proxy cible HTTPS.
- Administrateur du service CA: requis pour effectuer des actions dans le service CA.
Pour en savoir plus, consultez les ressources suivantes :
- Rôles et autorisations pour le gestionnaire de certificats
- Rôles et autorisations IAM de Compute Engine pour Compute Engine
- Autorisations et rôles pour Certificate Authority Service
Créez un pool d'autorités de certification. Vous devez créer et activer au moins une autorité de certification dans ce pool d'autorités de certification.
Configurer l'intégration de CA Service avec le gestionnaire de certificats
Configurez le gestionnaire de certificats pour l'intégrer au service CA comme suit:
Créez un compte de service de gestionnaire de certificats dans le projet Google Cloud cible:
gcloud beta services identity create \ --service=certificatemanager.googleapis.com \ --project=PROJECT_ID
Remplacez
PROJECT_ID
par l'ID du projet Google Cloud cible.
La commande renvoie le nom de l'identité de service créée, comme illustré dans l'exemple suivant:
service-520498234@gcp-sa-certificatemanager.iam.gserviceaccount.com
Attribuez au compte de service du gestionnaire de certificats le rôle Demandeur de certificat du service CA au sein du pool d'autorités de certification cible comme suit:
gcloud privateca pools add-iam-policy-binding CA_POOL \ --location LOCATION \ --member "serviceAccount:SERVICE_ACCOUNT" \ --role roles/privateca.certificateRequester
Remplacez les éléments suivants :
CA_POOL
: ID du pool d'autorités de certification cible.LOCATION
: emplacement Google Cloud cible Vous devez spécifier le même emplacement que le pool d'autorités de certification, la ressource de configuration d'émission de certificats et le certificat géré.SERVICE_ACCOUNT
: nom complet du compte de service que vous avez créé à l'étape 1.
Créez une ressource de configuration d'émission de certificats pour votre pool d'autorités de certification:
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]
Remplacez les éléments suivants :
ISSUANCE_CONFIG_NAME
: nom unique de la ressource de configuration d'émission de certificats.CA_POOL
: chemin d'accès complet et nom du pool d'autorités de certification que vous souhaitez attribuer à cette ressource de configuration d'émission de certificats.LOCATION
: emplacement Google Cloud cible Vous devez spécifier le même emplacement que le pool d'autorités de certification, la ressource de configuration d'émission de certificats et le certificat géré.CERTIFICATE_LIFETIME
: durée de vie du certificat en jours. Les valeurs valides sont comprises entre 21 et 30 jours au format de durée standard. La valeur par défaut est de 30 jours (30D
). Ce paramètre est facultatif.ROTATION_WINDOW_PERCENTAGE
: pourcentage de la durée de vie du certificat à partir duquel le renouvellement est déclenché. La valeur par défaut est de 66 %. Vous devez définir le pourcentage de la période de rotation par rapport à la durée de vie du certificat afin que le renouvellement du certificat ait lieu au moins sept jours après son émission et au moins sept jours avant son expiration. Ce paramètre est facultatif.KEY_ALGORITHM
: algorithme de chiffrement utilisé pour générer la clé privée. Les valeurs valides sontecdsa-p256
oursa-2048
. La valeur par défaut estrsa-2048
. Ce paramètre est facultatif.
Pour en savoir plus sur les ressources de configuration d'émission de certificats, consultez Gérer les configurations d'émission de certificats.
Créer un certificat régional géré par Google
Créez un certificat régional géré par Google, émis par votre service CA à l'aide de la ressource de configuration d'émission de certificats créée à l'étape précédente:
Console
Dans la console Google Cloud, accédez à la page Gestionnaire de certificats.
Sur la page qui s'affiche, sélectionnez l'onglet Certificats.
Cliquez sur Ajouter un certificat.
Saisissez un nom pour le certificat.
Ce nom doit être unique au projet.
Facultatif: saisissez la description du certificat. La description vous aidera ultérieurement à identifier un certificat spécifique.
Dans le champ Emplacement, sélectionnez Régional.
Dans la liste Région, sélectionnez une région.
Pour Type de certificat, sélectionnez Créer un certificat géré par Google.
Pour Type d'autorité de certification, sélectionnez Privé.
Indiquez les noms de domaine du certificat. Saisissez la liste des domaines cibles, séparés par une virgule. En outre, chaque nom de domaine doit être un nom de domaine complet, tel que
myorg.example.com
.Pour Configuration de l'émission de certificats, sélectionnez le nom de la ressource de configuration d'émission de certificats qui fait référence au pool d'autorités de certification cible.
Spécifiez une étiquette à associer au certificat. Si nécessaire, vous pouvez ajouter plusieurs étiquettes. Pour ajouter un libellé, cliquez sur le bouton Ajouter une étiquette add_box, puis spécifiez les paramètres
key
etvalue
pour votre libellé.Cliquez sur Créer. Vérifiez que le nouveau certificat apparaît dans la liste des certificats.
gcloud
Exécutez la commande ci-dessous.
gcloud beta certificate-manager certificates create CERTIFICATE_NAME \ --domains="DOMAIN_NAMES" \ --issuance-config="ISSUANCE_CONFIG_NAME" \ --location="LOCATION"
Remplacez les éléments suivants :
CERTIFICATE_NAME
: nom unique du certificat.DOMAIN_NAMES
: liste des domaines cibles du certificat, séparés par une virgule. Chaque nom de domaine doit être un nom de domaine complet, tel quemyorg.example.com
.ISSUANCE_CONFIG_NAME
: nom de la ressource de configuration d'émission de certificats qui référence le pool d'autorités de certification cible.LOCATION
: emplacement Google Cloud cible Vous devez spécifier le même emplacement que le pool d'autorités de certification, la ressource de configuration d'émission de certificats et le certificat géré.
API
Créez le certificat en envoyant une requête POST
à la méthode certificates.create
, comme suit:
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", }, }
Remplacez les éléments suivants :
PROJECT_ID
: ID du projet Google Cloud cible.LOCATION
: emplacement Google Cloud cible Vous devez spécifier le même emplacement que le pool d'autorités de certification, la ressource de configuration d'émission de certificats et le certificat géré.CERTIFICATE_NAME
: nom unique du certificat.DOMAIN_NAME
: domaine cible du certificat. Le nom de domaine doit être un nom de domaine complet, tel queexample.com
ouwww.example.com
.ISSUANCE_CONFIG_NAME
: nom de la ressource de configuration d'émission de certificats qui référence le pool d'autorités de certification cible.
Pour obtenir une présentation du processus de déploiement du certificat, consultez la section Présentation du déploiement.
Vérifier que le certificat est actif
Utilisez la commande suivante pour vérifier que le certificat lui-même est actif avant de le déployer sur votre équilibreur de charge. Il peut s'écouler plusieurs minutes avant que l'état du certificat ne passe à ACTIVE
.
gcloud beta certificate-manager certificates describe CERTIFICATE_NAME \ --location=LOCATION
Remplacez les éléments suivants :
CERTIFICATE_NAME
: nom unique du certificat.LOCATION
: emplacement Google Cloud cible Vous devez spécifier le même emplacement que le pool d'autorités de certification, la ressource de configuration d'émission de certificats et le certificat géré.
La commande renvoie un résultat semblable à celui-ci:
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'
Déployer le certificat régional géré par Google sur un équilibreur de charge
Pour déployer le certificat régional géré par Google, créez un proxy cible HTTPS et associez-le au certificat.
Créer le proxy cible HTTPS
Pour créer le proxy HTTPS cible et lui associer le certificat, exécutez la commande suivante:
gcloud compute target-https-proxies create PROXY_NAME \ --url-map=URL_MAP \ --region=REGION \ --certificate-manager-certificates=CERTIFICATE_NAME
Remplacez les éléments suivants :
PROXY_NAME
: nom unique du proxy.URL_MAP
: nom du mappage d'URL. Vous avez créé le mappage d'URL lors de la création de l'équilibreur de charge.REGION
: région dans laquelle vous créez le proxy cible HTTPS.CERTIFICATE_NAME
: nom du certificat.
Pour vérifier si le proxy cible a été créé, exécutez la commande suivante:
gcloud compute target-https-proxies list
Créer une règle de transfert
Configurez une règle de transfert et terminez la configuration de l'équilibreur de charge.
- Si vous utilisez un équilibreur de charge d'application externe régional, consultez la page Configurer un équilibreur de charge d'application externe régional avec des backends de groupes d'instances de VM.
- Si vous utilisez un équilibreur de charge d'application interne régional, consultez la page Configurer un équilibreur de charge d'application interne régional avec des backends de groupes d'instances de VM.
Effectuer un nettoyage
Pour annuler les modifications que vous avez apportées dans ce tutoriel, procédez comme suit:
Supprimez le certificat géré par Google:
Console
Dans la console Google Cloud, accédez à la page Gestionnaire de certificats.
Dans l'onglet Certificats, cochez la case du certificat.
Cliquez sur Supprimer.
Dans la boîte de dialogue qui s'affiche, cliquez sur Supprimer pour confirmer.
gcloud
gcloud certificate-manager certificates delete CERTIFICATE_NAME \ --location=LOCATION
Remplacez les éléments suivants :
CERTIFICATE_NAME
: nom du certificatLOCATION
: emplacement Google Cloud cible
Supprimez la ressource de configuration d'émission de certificats:
Console
Dans la console Google Cloud, accédez à la page Gestionnaire de certificats.
Dans l'onglet Configurations d'émission, cochez la case correspondant à la configuration d'émission.
Cliquez sur Supprimer.
Dans la boîte de dialogue qui s'affiche, cliquez sur Supprimer pour confirmer.
gcloud
gcloud certificate-manager issuance-configs delete ISSUANCE_CONFIG_NAME \ --location=LOCATION
Remplacez les éléments suivants :
ISSUANCE_CONFIG_NAME
: nom de la configuration d'émission.LOCATION
: emplacement Google Cloud cible
Supprimez le pool d'autorités de certification comme décrit dans la section Supprimer un pool d'autorités de certification.
N'oubliez pas que pour désactiver la dernière autorité de certification activée dans le pool d'autorités de certification référencé dans la ressource de configuration d'émission de certificats, ou pour supprimer complètement le pool référencé, vous devez d'abord supprimer toutes les ressources de configuration d'émission de certificats qui font référence à ce pool d'autorités de certification.
Dépannage
Pour connaître les étapes de dépannage, consultez la section Problèmes liés aux certificats émis par une instance de service CA.