Implementa un certificado autoadministrado global


En este instructivo, se describe cómo usar el Administrador de certificados para implementar un certificado autoadministrado global.

Los siguientes balanceadores de cargas admiten certificados autoadministrados globales:

  • Balanceador de cargas de aplicaciones externo global
  • Balanceador de cargas de aplicaciones clásico
  • Balanceador de cargas de red del proxy externo global
  • Balanceador de cargas de aplicaciones interno entre regiones

Para implementar un certificado autoadministrado en un balanceador de cargas de aplicaciones externo regional o en un balanceador de cargas de aplicaciones interno regional, consulta Implementa un certificado autoadministrado regional.

Objetivos

En este instructivo, se muestra cómo completar las siguientes tareas:

  • Subir un certificado autoadministrado al Administrador de certificados.
  • Implementar el certificado en un balanceador de cargas compatible con un proxy HTTPS de destino

Para obtener más información sobre el proceso de implementación de certificados, consulta la descripción general de la implementación.

Antes de comenzar

  1. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  2. Asegúrate de tener los siguientes roles para completar las tareas de este instructivo:

    • Propietario de Certificate Manager: Es obligatorio para crear y administrar recursos de Certificate Manager.
    • Administrador del balanceador de cargas de Compute o Administrador de la red de Compute: Es obligatorio para crear y administrar el proxy de destino HTTPS.

    Para obtener más información, consulta lo siguiente:

Crea el balanceador de cargas

Crea el balanceador de cargas en el que deseas implementar el certificado.

En el resto de este instructivo, se supone que ya configuraste los backends, la verificación de estado, el servicio de backend y el mapa de URL del balanceador de cargas. Anota el nombre del mapa de URLs, ya que lo necesitarás más adelante en este instructivo.

Crea una clave privada y un certificado

Para crear una clave privada y un certificado, haz lo siguiente:

  1. Usar una autoridad certificadora (AC) externa de confianza para emitir el certificado junto con su clave asociada

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

  3. Prepara los siguientes archivos con codificación PEM:

    • El archivo de certificado (CRT)
    • El archivo de claves privadas correspondiente (KEY)

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

Subir un certificado autoadministrado al Administrador de certificados

Console

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

    Ir al Administrador de certificados

  2. En la página que aparece, selecciona la pestaña Certificados.

  3. Haz clic en Agregar certificado.

  4. Ingresa un Nombre para el certificado.

    Este nombre debe ser único para el proyecto.

  5. Opcional: Ingresa la Descripción del certificado. El te ayuda a identificar un certificado específico más adelante.

  6. En Ubicación, elige Global.

  7. En Alcance, elige cualquiera de las siguientes opciones:

    1. Predeterminado: Elige la configuración predeterminada para el balanceador de cargas de aplicaciones externo global, el balanceador de cargas de aplicaciones clásico o el balanceador de cargas de red del proxy externo global.
    2. Todas las regiones: Elige todas las regiones para un balanceador de cargas de aplicaciones interno entre regiones.
  8. En Tipo de certificado, elige Crear certificado autoadministrado.

  9. En el campo Certificado, realiza cualquiera de las siguientes acciones:

    • Haz clic en el botón Subir y selecciona tu archivo archivo de certificado de Google.
    • Copia y pega el contenido de un certificado con formato PEM. El contenido debe comenzar con -----BEGIN CERTIFICATE----- y terminar con -----END CERTIFICATE-----.
  10. En el campo Certificado de clave privada, realiza cualquiera de las siguientes acciones:

    • Haz clic en el botón Subir y selecciona tu clave privada. Tu la clave privada debe tener el formato PEM y no estar protegida con una frase de contraseña.
    • Copia y pega el contenido de una clave privada con el formato PEM. El las claves privadas deben comenzar con -----BEGIN PRIVATE KEY----- y finalizan con -----END PRIVATE KEY-----.
  11. Especifica una etiqueta para asociar al certificado. Puedes agregar más de una etiqueta, si es necesario. Para agregar una etiqueta, haz clic en el botón Agregar etiqueta y especifica una key y una value para tu etiqueta.

  12. Haz clic en Crear. Verifica que el certificado nuevo aparezca en la lista de certificados.

gcloud

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

Para un balanceador de cargas de aplicaciones externo global, un balanceador de cargas de aplicaciones clásico o un balanceador de cargas de red de proxy externo global:

Ejecuta el siguiente comando:

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

Reemplaza lo siguiente:

  • CERTIFICATE_NAME: Es el nombre único del certificado.
  • CERTIFICATE_FILE: Es la ruta de acceso y el nombre del archivo del certificado CRT.
  • PRIVATE_KEY_FILE: Es la ruta de acceso y el nombre de archivo del archivo de claves privadas KEY.

Para un balanceador de cargas de aplicaciones interno entre regiones:

Ejecuta el siguiente comando:

gcloud certificate-manager certificates create CERTIFICATE_NAME \
   --certificate-file="CERTIFICATE_FILE" \
   --private-key-file="PRIVATE_KEY_FILE" \
   --scope=all-regions

Reemplaza lo siguiente:

  • CERTIFICATE_NAME: Es el nombre único del certificado.
  • CERTIFICATE_FILE: Es la ruta de acceso y el nombre del archivo del certificado CRT.
  • PRIVATE_KEY_FILE: Es la ruta de acceso y el nombre del archivo de claves privadas KEY.

Implementa el certificado autoadministrado en un balanceador de cargas

En las siguientes secciones, se describe cómo implementar el certificado autoadministrado que subiste al Administrador de certificados en un balanceador de cargas.

Según el tipo de balanceador de cargas, puedes implementar certificados de la siguiente manera:

Implementa el certificado usando un mapa de certificados

En esta sección, se describen los pasos para implementar un certificado con un mapa de certificados.

Crea un mapa de certificados

Crea un mapa de certificados que hace referencia a la entrada del mapa de certificados asociado con tu certificado:

gcloud certificate-manager maps create CERTIFICATE_MAP_NAME

Reemplaza CERTIFICATE_MAP_NAME por el nombre del mapa de certificados de destino.

Crea una entrada de mapa de certificados

Crea una entrada de mapa de certificados. y asociarlo con tu certificado autoadministrado y mapa de certificados:

gcloud certificate-manager maps entries create CERTIFICATE_MAP_ENTRY_NAME \
    --map="CERTIFICATE_MAP_NAME" \
    --certificates="CERTIFICATE_NAME" \
    --hostname="HOSTNAME"

Reemplaza lo siguiente:

  • CERTIFICATE_MAP_ENTRY_NAME: Es un nombre único de la entrada del mapa de certificados.
  • CERTIFICATE_MAP_NAME: El nombre del mapa de certificados al que se adjunta la entrada del mapa de certificados
  • CERTIFICATE_NAME: Es el nombre del certificado que deseas asociar con la entrada del mapa de certificados.
  • HOSTNAME: Es el nombre de host que deseas asociar. con la entrada del mapa de certificados

Verifica que la entrada del mapa de certificados esté activa

Antes de conectar el mapa de certificados al proxy de destino, ejecuta el siguiente comando para verificar si la entrada del mapa de certificados está activa:

gcloud certificate-manager maps entries describe CERTIFICATE_MAP_ENTRY_NAME \
    --map="CERTIFICATE_MAP_NAME"

Reemplaza lo siguiente:

  • CERTIFICATE_MAP_ENTRY_NAME: Es un nombre único de la entrada del mapa de certificados.
  • CERTIFICATE_MAP_NAME: Es el nombre del mapa de certificados al que se adjunta la entrada del mapa de certificados.

Si la entrada del mapa de certificados está activa, Google Cloud CLI muestra un resultado similar al siguiente:

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'

Crea el proxy de destino HTTPS

Si quieres crear un proxy de destino HTTPS, consulta Crea un proxy de destino.

Adjunta el mapa de certificados al proxy de destino

Para adjuntar el mapa de certificados configurado al proxy de destino, sigue estos pasos:

  1. En la consola de Google Cloud, ve a la página Proxies de destino.

    Ir a Proxies de destino

  2. Anota el nombre del proxy de destino.

  3. Para adjuntar el mapa de certificados al proxy de destino, ejecuta el siguiente comando:

    gcloud compute target-https-proxies update PROXY_NAME \
       --certificate-map="CERTIFICATE_MAP_NAME"
    

    Reemplaza lo siguiente:

    • PROXY_NAME: el nombre del proxy de destino
    • CERTIFICATE_MAP_NAME: Es el nombre del mapa de certificados que hace referencia a la entrada del mapa de certificados y a su certificado asociado.

Si algún certificado TLS (SSL) se adjunta directamente al de certificados, este da preferencia a los certificados a los que hace referencia el mapa de certificados en comparación con los certificados adjuntos directamente.

Cree una regla de reenvío.

Configura una regla de reenvío y termina de configurar el balanceador de cargas. Para más información, consulta Usa reglas de reenvío.

Adjunta el certificado directamente al proxy de destino

Para adjuntar el certificado directamente al proxy, ejecuta el siguiente comando:

gcloud compute target-https-proxies update PROXY_NAME \
    --url-map=URL_MAP \
    --global \
    --certificate-manager-certificates=CERTIFICATE_NAME

Reemplaza lo siguiente:

  • PROXY_NAME: Es un nombre único del proxy.
  • URL_MAP: el nombre del mapa de URL. Creaste el mapa de URL cuando creaste el balanceador de cargas.
  • CERTIFICATE_NAME: Es el nombre del certificado.

Limpia

Para revertir los cambios que realizaste en este instructivo, completa los siguientes pasos:

  1. Desconecta el mapa de certificados del proxy:

    gcloud compute target-https-proxies update PROXY_NAME \
       --clear-certificate-map
    

    Reemplaza PROXY_NAME por el nombre del proxy de destino.

    Antes de desconectar el mapa de certificados del proxy, ten en cuenta lo siguiente:

    • Asegúrate de que al menos un certificado TLS (SSL) esté directamente conectado al proxy. Si no hay certificados adjuntos al proxy, no puedes desconectar el mapa de certificados.
    • Desconectar el mapa de certificados de un proxy permite que el proxy reanude el uso de certificados TLS (SSL) que se adjuntaron directamente al proxy.
  2. Borra la entrada del mapa de certificados del mapa de certificados:

    gcloud certificate-manager maps entries delete CERTIFICATE_MAP_ENTRY_NAME \
       --map="CERTIFICATE_MAP_NAME"
    

    Reemplaza lo siguiente:

    • CERTIFICATE_MAP_ENTRY_NAME: Es el nombre de la entrada del mapa de certificados de destino.
    • CERTIFICATE_MAP_NAME: Es el nombre del mapa de certificados de destino.
  3. Borra el mapa de certificados:

    gcloud certificate-manager maps delete CERTIFICATE_MAP_NAME
    

    Reemplaza CERTIFICATE_MAP_NAME por el nombre del mapa de certificados de destino.

  4. Borra el certificado subido:

    gcloud certificate-manager certificates delete CERTIFICATE_NAME
    

    Reemplaza CERTIFICATE_NAME por el nombre del certificado de destino.

¿Qué sigue?