Implante um certificado autogerenciado global


Neste tutorial, descrevemos como usar o Gerenciador de certificados para implantar um certificado autogerenciado global.

Os balanceadores de carga a seguir dão suporte a certificados globais autogerenciados:

  • Balanceador de carga de aplicativo externo global
  • Balanceador de carga de aplicativo clássico
  • Balanceador de carga de rede de proxy externo global
  • Balanceador de carga de aplicativo interno entre regiões

Para implantar um certificado autogerenciado em um balanceador de carga de aplicativo externo regional ou em um balanceador de carga de aplicativo regional interno, consulte Implantar um certificado autogerenciado regional.

Objetivos

Nesta seção, mostramos como concluir as seguintes tarefas:

  • Fazer upload de um certificado autogerenciado para o Gerenciador de certificados.
  • Implante o certificado em um balanceador de carga compatível usando um proxy HTTPS de destino.

Para mais informações sobre o processo de implantação de certificados, consulte Visão geral da implantação.

Antes de começar

  1. No console do Google Cloud, na página do seletor de projetos, selecione ou crie um projeto do Google Cloud.

    Acessar o seletor de projetos

  2. Verifique se você tem os papéis a seguir para concluir as tarefas neste tutorial:

    • Proprietário do gerenciador de certificados: necessário para criar e gerenciar recursos do gerenciador de certificados.
    • Administrador do balanceador de carga do Compute ou Administrador da rede do Compute: necessários para criar e gerenciar o proxy de destino HTTPS.

    Para ver mais informações, consulte os seguintes tópicos:

Criar o balanceador de carga

Crie o balanceador de carga em que você quer implantar o certificado.

O restante deste tutorial pressupõe que você já configurou os back-ends, a verificação de integridade, o serviço de back-end e o mapa de URL do balanceador de carga. Anote o nome do mapa de URL, porque você vai precisar dele mais adiante neste tutorial.

Criar uma chave privada e um certificado

Para criar uma chave privada e um certificado, faça o seguinte:

  1. Use uma autoridade de certificação (CA, na sigla em inglês) de terceiros confiável para emitir o certificado com a chave associada.

  2. Verifique se o certificado está devidamente encadeado e confiável.

  3. Prepare os seguintes arquivos codificados em PEM:

    • O arquivo de certificado (CRT)
    • O arquivo de chave privada correspondente (KEY)

Para informações sobre como solicitar e validar um certificado, consulte Criar uma chave privada e um certificado.

Fazer upload de um certificado autogerenciado para o Gerenciador de certificados

Para fazer o upload do certificado para o Gerenciador de certificados, faça o seguinte:

Para um balanceador de carga de aplicativo externo global, um balanceador de carga de aplicativo clássico ou um balanceador de carga de rede de proxy externo global:

Execute este comando:

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

Substitua:

  • CERTIFICATE_NAME: o nome exclusivo do certificado
  • CERTIFICATE_FILE: o caminho e o nome do arquivo de certificado CRT
  • PRIVATE_KEY_FILE: o caminho e o nome do arquivo de chave privada KEY.

Para um balanceador de carga de aplicativo interno entre regiões:

Execute este comando:

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

Substitua:

  • CERTIFICATE_NAME: o nome exclusivo do certificado
  • CERTIFICATE_FILE: o caminho e o nome do arquivo de certificado CRT
  • PRIVATE_KEY_FILE: o caminho e o nome do arquivo de chave privada KEY.

Implante o certificado autogerenciado em um balanceador de carga

As seções a seguir descrevem como implantar em um balanceador de carga o certificado autogerenciado que você enviou para o Gerenciador de certificados.

Dependendo do tipo de balanceador de carga, é possível implantar certificados da seguinte maneira:

Implantar o certificado usando um mapa de certificados

Nesta seção, descrevemos as etapas para implantar um certificado usando um mapa.

Criar um CertificateMap

Crie um mapa de certificado que faça referência à entrada do mapa de certificado associada ao seu certificado:

gcloud certificate-manager maps create CERTIFICATE_MAP_NAME

Substitua CERTIFICATE_MAP_NAME pelo nome do mapa de certificados de destino.

Criar uma entrada do mapa de certificados

Crie uma entrada de mapa de certificado e a associe ao seu certificado autogerenciado e ao mapa de certificados:

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

Substitua:

  • CERTIFICATE_MAP_ENTRY_NAME: um nome exclusivo da entrada do mapa de certificado
  • CERTIFICATE_MAP_NAME: o nome do mapa do certificado ao qual a entrada do mapa de certificado está anexada
  • CERTIFICATE_NAME: o nome do certificado que você quer associar à entrada do mapa de certificados
  • HOSTNAME: o nome do host que você quer associar à entrada do mapa de certificado

Verificar se a entrada do mapa do certificado está ativa

Antes de anexar o mapa de certificado ao proxy de destino, execute o seguinte comando para verificar se a entrada do mapa de certificados está ativa:

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

Substitua:

  • CERTIFICATE_MAP_ENTRY_NAME: um nome exclusivo da entrada do mapa de certificado
  • CERTIFICATE_MAP_NAME: o nome do mapa do certificado ao qual a entrada do mapa de certificado está anexada

Se a entrada do mapa de certificados estiver ativa, a Google Cloud CLI retornará uma saída semelhante a esta:

createTime: '2021-09-06T10:01:56.229472109Z'
name: projects/my-project/locations/global/certificateMaps/myCertMap/certificateMapEntries/myCertMapEntry
state: ACTIVE
updateTime: '2021-09-06T10:01:58.277031787Z'

Criar o proxy de destino HTTPS

Para criar um proxy de destino HTTPS, consulte Criar um proxy de destino.

Anexar o mapa de certificados ao proxy de destino

Para anexar o mapa de certificados configurado ao proxy de destino, siga estas etapas:

  1. No Console do Google Cloud, acesse a página Proxies de destino.

    Acesse proxies de destino

  2. Anote o nome do proxy de destino.

  3. Para anexar o mapa de certificado ao proxy de destino, execute o seguinte comando:

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

    Substitua:

    • PROXY_NAME: o nome do proxy de destino.
    • CERTIFICATE_MAP_NAME: o nome do mapa de certificados que faz referência à sua entrada do mapa de certificados e ao certificado associado a ela

Se algum certificado TLS (SSL) for anexado diretamente ao proxy, o proxy dará preferência aos certificados referenciados pelo mapa de certificados em vez dos certificados anexados diretamente.

Criar uma regra de encaminhamento

Configure uma regra de encaminhamento e conclua a configuração do balanceador de carga. Para mais informações, consulte Usar regras de encaminhamento.

Anexar o certificado diretamente ao proxy de destino

Para anexar o certificado diretamente ao proxy, execute o seguinte comando:

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

Substitua:

  • PROXY_NAME: um nome exclusivo do proxy.
  • URL_MAP: o nome do mapa de URL. Você criou o mapa de URL quando criou o balanceador de carga.
  • CERTIFICATE_NAME: o nome do certificado.

Limpar

Para reverter as mudanças feitas neste tutorial, siga estas etapas:

  1. Remova o mapa de certificado do proxy:

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

    Substitua PROXY_NAME pelo nome do proxy de destino.

    Antes de remover o mapa de certificados do proxy, observe o seguinte:

    • Verifique se pelo menos um certificado TLS (SSL) está diretamente anexado ao proxy. Se nenhum certificado estiver anexado ao proxy, não será possível remover o mapa.
    • Remover o mapa de certificados de um proxy permite que ele retome o uso de certificados TLS (SSL) que foram diretamente anexados ao proxy.
  2. Exclua a entrada do mapa de certificado do mapa de certificados:

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

    Substitua:

    • CERTIFICATE_MAP_ENTRY_NAME: o nome da entrada do mapa do certificado de destino
    • CERTIFICATE_MAP_NAME: o nome do mapa de certificado de destino
  3. Exclua o mapa de certificado:

    gcloud certificate-manager maps delete CERTIFICATE_MAP_NAME
    

    Substitua CERTIFICATE_MAP_NAME pelo nome do mapa de certificados de destino.

  4. Exclua o certificado enviado:

    gcloud certificate-manager certificates delete CERTIFICATE_NAME
    

    Substitua CERTIFICATE_NAME pelo nome do certificado de destino.

A seguir