Neste tutorial, descrevemos como usar o Gerenciador de certificados para implantar um certificado global e autogerenciado.
Os seguintes balanceadores de carga 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 interno regional, consulte Implantar um certificado autogerenciado regional.
Objetivos
Nesta seção, mostramos como concluir as seguintes tarefas:
- Faça upload de um certificado autogerenciado no 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
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Verifique se você tem os seguintes papéis para concluir as tarefas deste 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 de rede do Compute: necessário para criar e gerenciar o proxy de destino HTTPS.
Para ver mais informações, consulte os seguintes tópicos:
- Papéis e permissões para Gerenciador de certificados
- Papéis e permissões do IAM do Compute Engine para o Compute Engine
Criar o balanceador de carga
Crie o balanceador de carga em que você quer implantar o certificado.
Para criar um balanceador de carga de aplicativo externo global, consulte Configurar um balanceador de carga de aplicativo externo global com back-ends de grupos de instâncias de VM.
Para criar um balanceador de carga de aplicativo clássico, consulte Configurar um balanceador de carga de aplicativo clássico com back-ends de grupo gerenciado de instâncias.
Para criar um balanceador de carga de rede de proxy externo global (proxy SSL), consulte Configurar um balanceador de carga de rede de proxy externo global (proxy SSL) com back-ends de grupos de instâncias de VM.
Para criar um balanceador de carga de rede de proxy externo global (proxy TCP), consulte Configurar um balanceador de carga de rede de proxy externo global (proxy TCP) com back-ends de grupos de instâncias de VM.
Para criar um balanceador de carga de aplicativo interno entre regiões, consulte Configurar um balanceador de carga de aplicativo interno entre regiões com back-ends de grupos de instâncias de VM.
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 tarde neste tutorial.
Criar uma chave privada e um certificado
Para criar uma chave privada e um certificado, faça o seguinte:
Use uma autoridade de certificação (CA, na sigla em inglês) de terceiros confiável para emitir o certificado com a chave associada.
Verifique se o certificado está devidamente encadeado e confiável.
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 Crie uma chave privada e um certificado.
Fazer upload de um certificado autogerenciado no Gerenciador de certificados
Console
No console do Google Cloud, acesse a página Gerenciador de certificados.
Na página exibida, selecione a guia Certificados.
Clique em Adicionar certificado.
Digite um Nome para o certificado.
O nome precisa ser exclusivo no projeto.
Opcional: digite a Descrição do certificado. A descrição ajuda a identificar um certificado específico mais tarde.
Em Local, escolha Global.
Em Escopo, escolha qualquer uma das seguintes opções:
- Padrão: escolha o padrão para Balanceador de carga de aplicativo externo global, Balanceador de carga de aplicativo clássico ou Balanceador de carga de rede de proxy externo global.
- Todas as regiões: escolha todas as regiões para um balanceador de carga de aplicativo interno entre regiões
Em Tipo de certificado, escolha Criar certificado autogerenciado.
No campo Certificate, faça uma das seguintes ações:
- Clique no botão Upload e selecione o arquivo de certificado no formato PEM.
- Copie e cole o conteúdo de um certificado no formato PEM. O
conteúdo precisa começar com
-----BEGIN CERTIFICATE-----
e terminar com-----END CERTIFICATE-----
.
No campo Certificado de chave privada, realize uma das seguintes ações:
- Clique no botão Upload e selecione sua chave privada. Seu a chave privada precisa estar no formato PEM e não ser protegida por uma senha longa.
- Copie e cole o conteúdo de uma chave privada no formato PEM. O
chaves privadas devem começar com
-----BEGIN PRIVATE KEY-----
terminam com-----END PRIVATE KEY-----
.
Especifique um rótulo para associar ao certificado. Você pode adicionar mais de um rótulo, se necessário. Para adicionar um marcador, clique no add_box Adicionar rótulo e especifique um
key
e umvalue
para o rótulo.Clique em Criar. Verifique se o novo certificado aparece na lista.
gcloud
Para fazer o upload do certificado no 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 certificadoCERTIFICATE_FILE
: o caminho e o nome do arquivo de certificado CRTPRIVATE_KEY_FILE
: o caminho e o nome do arquivo da 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 certificadoCERTIFICATE_FILE
: o caminho e o nome do arquivo de certificado CRTPRIVATE_KEY_FILE
: o caminho e o nome do arquivo da chave privada KEY
Implantar 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 ao Gerenciador de certificados.
Dependendo do tipo de balanceador de carga, é possível implantar certificados da seguinte maneira:
- No caso dos balanceadores de carga a seguir, implante o certificado usando um mapa:
- Balanceador de carga de aplicativo externo global
- Balanceador de carga de rede de proxy externo global
- Balanceador de carga de aplicativo clássico
- Para o balanceador de carga de aplicativo interno entre regiões, implante o certificado anexando-o diretamente ao proxy de destino.
Implantar o certificado usando um mapa
Esta seção descreve as etapas para implantar um certificado usando um mapa de certificados.
Criar um CertificateMap
Criar um mapa de certificados que faz referência à entrada do mapa do certificado associadas ao seu certificado:
gcloud certificate-manager maps create CERTIFICATE_MAP_NAME
Substitua CERTIFICATE_MAP_NAME
pelo nome do mapa de certificado de destino.
Criar uma entrada de mapa de certificados
Crie uma entrada de mapa de certificado e associe-a ao seu certificado autogerenciado e ao mapa de certificado:
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 certificadoCERTIFICATE_MAP_NAME
: o nome do mapa de certificado ao qual a entrada do mapa de certificado está anexadaCERTIFICATE_NAME
: o nome do certificado que você quer associar à entrada do mapa de certificadosHOSTNAME
: o nome do host que você quer associar com a entrada do mapa de certificado
Verificar se a entrada do mapa de 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 certificado 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 certificadoCERTIFICATE_MAP_NAME
: o nome do mapa de certificado ao qual a entrada do mapa de certificado está anexada
Se a entrada do mapa de certificado estiver ativa, a Google Cloud CLI vai retornar uma saída semelhante a esta:
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'
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 certificado configurado ao proxy de destino, siga estas etapas:
No Console do Google Cloud, acesse a página Proxies de destino.
Anote o nome do proxy de destino.
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 certificado que faz referência à entrada do mapa de certificado e o certificado associado a ele
Se algum certificado TLS (SSL) for anexado diretamente ao proxy, ele dará preferência aos certificados referenciados pelo mapa de certificados em vez dos certificados anexados diretamente.
Criar uma regra de encaminhamento
Defina uma regra de encaminhamento e conclua a configuração do balanceador de carga. Para mais informações, consulte Use 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 alterações feitas neste tutorial, siga estas etapas:
Desanexe 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 desanexar o mapa de certificado do proxy, observe o seguinte:
- Confirme se pelo menos um certificado TLS (SSL) está diretamente anexado ao proxy. Se nenhum certificado estiver anexado ao proxy, não será possível desconectar o mapa de certificado.
- Desconectar o mapa de certificado de um proxy permite que o proxy retome o uso de certificados TLS (SSL) diretamente anexados ao proxy.
Exclua a entrada do mapa de certificado:
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 de certificado de destinoCERTIFICATE_MAP_NAME
: o nome do mapa de certificado de destino.
Exclua o mapa de certificado:
gcloud certificate-manager maps delete CERTIFICATE_MAP_NAME
Substitua
CERTIFICATE_MAP_NAME
pelo nome do mapa de certificado de destino.Exclua o certificado enviado:
gcloud certificate-manager certificates delete CERTIFICATE_NAME
Substitua
CERTIFICATE_NAME
pelo nome do certificado de destino.