Desplegar un certificado autogestionado regional


En este tutorial se muestra cómo usar Certificate Manager para desplegar un certificado autogestionado en un balanceador de carga de aplicación externo regional o en un balanceador de carga de aplicación interno regional.

Si quieres desplegar balanceadores de carga externos globales o multirregionales, consulta lo siguiente:

Objetivos

En este tutorial se explica cómo completar las siguientes tareas:

  • Sube un certificado autogestionado a Certificate Manager.
  • Despliega el certificado en un balanceador de carga de aplicación externo regional o en un balanceador de carga de aplicación interno regional mediante un proxy HTTPS de destino.

Antes de empezar

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

  4. Enable the Compute Engine, Certificate Manager APIs.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the APIs

  5. Install the Google Cloud CLI.

  6. Si utilizas un proveedor de identidades (IdP) externo, primero debes iniciar sesión en la CLI de gcloud con tu identidad federada.

  7. Para inicializar gcloud CLI, ejecuta el siguiente comando:

    gcloud init
  8. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  9. Verify that billing is enabled for your Google Cloud project.

  10. Enable the Compute Engine, Certificate Manager APIs.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the APIs

  11. Install the Google Cloud CLI.

  12. Si utilizas un proveedor de identidades (IdP) externo, primero debes iniciar sesión en la CLI de gcloud con tu identidad federada.

  13. Para inicializar gcloud CLI, ejecuta el siguiente comando:

    gcloud init
  14. Roles obligatorios

    Asegúrate de que tienes los siguientes roles para completar las tareas de este tutorial:

    • Propietario de Certificate Manager (roles/certificatemanager.owner)

      Se requiere para crear y gestionar recursos de Certificate Manager.

    • Administrador de balanceadores de carga de Compute (roles/compute.loadBalancerAdmin) o Administrador de red de Compute (roles/compute.networkAdmin)

      Obligatorio para crear y gestionar un proxy de destino HTTPS.

    Para obtener más información, consulta las siguientes secciones:

    Crear el balanceador de carga

    En este tutorial se presupone que ya has creado y configurado los backends, las comprobaciones de estado, los servicios de backend y los mapas de URLs del balanceador de carga. Anota el nombre del mapa de URLs, ya que lo necesitarás más adelante en este tutorial.

    Crear una clave privada y un certificado

    Para crear una clave privada y un certificado, sigue estos pasos:

    1. Usa una autoridad de certificación (CA) de terceros de confianza para emitir el certificado junto con su clave asociada.

    2. Verifica que el certificado esté encadenado correctamente y que la raíz sea de confianza.

    3. Prepara los siguientes archivos codificados en PEM:

      • El archivo de certificado (CRT)
      • El archivo de clave privada correspondiente (KEY)

    Para obtener información sobre cómo solicitar y validar un certificado, consulta Crear una clave privada y un certificado.

    Subir un certificado autogestionado a Certificate Manager

    Para subir el certificado al administrador de certificados, haz lo siguiente:

    Consola

    1. En la Google Cloud consola, ve a la página Gestor de certificados.

      Ir a Certificate Manager

    2. En la pestaña Certificados, haz clic en Añadir certificado.

    3. En el campo Nombre del certificado, introduce un nombre único para el certificado.

    4. Opcional: En el campo Descripción, escribe una descripción del certificado. La descripción te permite identificar el certificado.

    5. En Ubicación, selecciona Regional.

    6. En la lista Región, selecciona tu región.

    7. En Tipo de certificado, selecciona Crear certificado autogestionado.

    8. En el campo Certificado, haz una de las siguientes acciones:

      • Haz clic en el botón Subir y selecciona el archivo de certificado en formato PEM.
      • Copia y pega el contenido de un certificado en formato PEM. El contenido debe empezar por -----BEGIN CERTIFICATE----- y terminar por -----END CERTIFICATE-----.
    9. En el campo Certificado de clave privada, haz una de las siguientes acciones:

      • Haz clic en el botón Subir y selecciona tu clave privada. Tu clave privada debe tener formato PEM y no estar protegida con una contraseña.
      • Copia y pega el contenido de una clave privada con formato PEM. Las claves privadas deben empezar por -----BEGIN PRIVATE KEY----- y terminar por -----END PRIVATE KEY-----.
    10. En el campo Etiquetas, especifica las etiquetas que quieras asociar al certificado. Para añadir una etiqueta, haz clic en Añadir etiqueta y especifica una clave y un valor para la etiqueta.

    11. Haz clic en Crear.

      El nuevo certificado aparece en la lista de certificados.

    gcloud

    Para crear un certificado autogestionado regional, ejecuta el comando certificate-manager certificates create:

    gcloud certificate-manager certificates create CERTIFICATE_NAME \
        --certificate-file="CERTIFICATE_FILE" \
        --private-key-file="PRIVATE_KEY_FILE" \
        --location="LOCATION"
    

    Haz los cambios siguientes:

    • CERTIFICATE_NAME: el nombre del certificado.
    • CERTIFICATE_FILE: la ruta y el nombre del archivo de certificado CRT.
    • PRIVATE_KEY_FILE: la ruta y el nombre de archivo de la clave privada KEY.
    • LOCATION: la ubicación de destino. Google Cloud

    Terraform

    Para subir un certificado autogestionado, puedes usar un recurso google_certificate_manager_certificate con el bloque self_managed.

    API

    Sube el certificado haciendo una solicitud POST al método certificates.create de la siguiente manera:

    POST /v1/projects/PROJECT_ID/locations/LOCATION/certificates?certificate_id=CERTIFICATE_NAME
    {
      self_managed: {
        pem_certificate: "PEM_CERTIFICATE",
        pem_private_key: "PEM_KEY",
      }
    }
    

    Haz los cambios siguientes:

    • PROJECT_ID: el ID del Google Cloud proyecto.
    • CERTIFICATE_NAME: el nombre del certificado.
    • PEM_CERTIFICATE: el PEM del certificado.
    • PEM_KEY: el PEM de la clave.
    • LOCATION: la ubicación de destino. Google Cloud

    Desplegar el certificado autogestionado en un balanceador de carga

    Para desplegar el certificado autogestionado, adjúntalo directamente al proxy de destino.

    Adjuntar el certificado directamente al proxy de destino

    Puede adjuntar el certificado a un proxy de destino nuevo o a uno que ya tenga.

    Para adjuntar el certificado a un nuevo proxy de destino, usa el gcloud compute target-https-proxies create comando:

    gcloud compute target-https-proxies create PROXY_NAME \
        --certificate-manager-certificates=CERTIFICATE_NAME \
        --url-map=URL_MAP \
        --region=LOCATION
    

    Haz los cambios siguientes:

    • PROXY_NAME: el nombre del proxy de destino.
    • CERTIFICATE_NAME: el nombre del certificado.
    • URL_MAP: nombre del mapa de URLs. Creaste el mapa de URLs al crear el balanceador de carga.
    • LOCATION: la ubicación de destino Google Cloud donde quieres crear el proxy HTTPS de destino.

    Para adjuntar un certificado a un proxy HTTPS de destino, usa el gcloud compute target-https-proxies updatecomando. Si no sabes el nombre del proxy de destino, ve a la página Proxies de destino y anota el nombre del proxy de destino.

    gcloud compute target-https-proxies update PROXY_NAME \
        --region=LOCATION \
        --certificate-manager-certificates=CERTIFICATE_NAME
    

    Después de crear o actualizar el proxy de destino, ejecuta el siguiente comando para verificarlo:

    gcloud compute target-https-proxies list
    

    Limpieza

    Para evitar que se apliquen cargos en tu cuenta de Google Cloud por los recursos utilizados en este tutorial, elimina el certificado subido:

    gcloud certificate-manager certificates delete CERTIFICATE_NAME
    

    Sustituye CERTIFICATE_NAME por el nombre del certificado de destino.

    Si no tienes previsto usar el balanceador de carga, elimínalo junto con sus recursos. Consulta Limpiar la configuración de un balanceador de carga.

    Siguientes pasos