bg-tutorials

Como Instalar um Certificado SSL no Google Cloud Platform

Este tutorial explica como instalar um certificado SSL no Google Cloud Platform usando o Certificate Manager. Você também aprenderá a gerar um CSR (Certificate Signing Request) para o Google Cloud e a implantar o certificado num balanceador de carga HTTPS.

Gerar um código CSR no Google Cloud Platform

Você não pode encomendar um certificado SSL sem um código CSR. CSR significa Certificate Signing Request, um bloco de texto codificado que contém os dados do requerente. A Autoridade Certificadora usa o CSR para verificar o seu domínio e organização antes de emitir o certificado.

O Google Cloud não possui um formulário integrado que crie um CSR para você, portanto, você gera o CSR e a sua chave privada com o OpenSSL na sua própria máquina. Você tem duas opções:

Mantenha a chave privada em segurança. Você precisará dela novamente ao carregar o certificado no Certificate Manager. Envie o CSR à Autoridade Certificadora durante a sua encomenda e, depois de o certificado ser emitido, continue com a instalação abaixo.

Instalar um certificado SSL no Google Cloud Platform

No Google Cloud, um certificado de terceiros (fornecido por si) é chamado de certificado autogerido. Você carrega-o no Certificate Manager e depois implanta-o num balanceador de carga HTTPS. Antes de começar, certifique-se de que tem:

  • Os seus ficheiros de certificado assinados pela Autoridade Certificadora.
  • A chave privada que gerou com o CSR.
  • Acesso à Google Cloud Console e à CLI gcloud.
  • Um balanceador de carga HTTPS existente (um Application Load Balancer externo com um proxy HTTPS de destino) que sirva o seu domínio. O certificado é anexado a este balanceador de carga.

Passo 1: Prepare os seus ficheiros de certificado

Depois de a Autoridade Certificadora validar o seu pedido, ela envia-lhe por e-mail um arquivo ZIP. Extraia-o e procure por:

  • yourdomain.crt, o seu certificado de servidor.
  • yourdomain.ca-bundle, os certificados intermediários.
  • yourdomain.key, a chave privada que criou com o CSR.

Passo 2: Combine o certificado e a cadeia

O Certificate Manager espera um único ficheiro PEM que contenha primeiro o seu certificado de servidor e depois os certificados intermediários, nessa ordem. Abra um terminal na pasta onde os seus ficheiros estão guardados e execute:

cat yourdomain.crt yourdomain.ca-bundle > fullchain.crt

Isto cria um ficheiro no formato PEM com o seu certificado e a cadeia intermediária pela ordem correta. O ficheiro do certificado deve começar com —–BEGIN CERTIFICATE—– e terminar com —–END CERTIFICATE—–.

Agora verifique a chave privada. O Certificate Manager exige que ela seja:

  • Formatada em PEM e não encriptada (sem frase-passe).
  • No formato PKCS#8, ou seja, deve começar com —–BEGIN PRIVATE KEY—–, não com —–BEGIN RSA PRIVATE KEY—–.
  • RSA (2048, 3072 ou 4096 bits) ou ECDSA (P-256 ou P-384).

Se a sua chave começar com —–BEGIN RSA PRIVATE KEY—– (PKCS#1), converta-a para o formato PKCS#8 que o Certificate Manager aceita:

openssl pkcs8 -topk8 -nocrypt -in yourdomain.key -out yourdomain_pkcs8.key

Use o ficheiro resultante yourdomain_pkcs8.key nos passos de carregamento abaixo. Se a sua chave estiver protegida por frase-passe, este comando também lhe pedirá a frase-passe e criará uma cópia não encriptada.

Passo 3: Carregue o certificado no Certificate Manager

Você pode carregar o certificado autogerido a partir da Console ou com o gcloud. Use o que preferir; o resultado é o mesmo recurso do Certificate Manager.

Opção A, Google Cloud Console:

  1. Inicie sessão na Google Cloud Console e selecione o seu projeto.
  2. Abra o Certificate Manager (em Security, na área de Network Security) e selecione a aba Certificates.
  3. Selecione Add Certificate.
  4. Dê um nome ao certificado e, em Certificate type, escolha Create self-managed certificate.
  5. Em Location, escolha Global com Scope Default para um balanceador de carga global, ou Regional e a sua região para um balanceador de carga regional.
  6. Carregue o ficheiro fullchain.crt como certificado e a sua chave privada PKCS#8 como chave privada, depois selecione Create.

Opção B, CLI gcloud: crie o mesmo certificado num único comando. Substitua MY_CERT por um nome à sua escolha:

gcloud certificate-manager certificates create MY_CERT 
  --certificate-file=fullchain.crt 
  --private-key-file=yourdomain_pkcs8.key

De qualquer forma, o certificado já está agora armazenado no Certificate Manager, mas ainda não está associado a nenhum tráfego. O próximo passo é implementá-lo.

Passo 4: Implante o certificado no seu balanceador de carga

O Certificate Manager implanta um certificado através de um mapa de certificados. Você cria um mapa, adiciona uma entrada que associa um nome de anfitrião (hostname) ao seu certificado e depois anexa o mapa ao proxy HTTPS de destino do seu balanceador de carga. Execute estes comandos com o gcloud.

Crie um mapa de certificados:

gcloud certificate-manager maps create MY_MAP

Adicione uma entrada de mapa para o seu nome de anfitrião. Substitua MY_CERT pelo nome do certificado carregado e yourdomain.com pelo domínio que deseja proteger:

gcloud certificate-manager maps entries create my-entry 
  --map=MY_MAP 
  --certificates=MY_CERT 
  --hostname=yourdomain.com

Anexe o mapa ao seu proxy HTTPS de destino existente. Substitua MY_PROXY pelo nome do proxy que serve o seu balanceador de carga:

gcloud compute target-https-proxies update MY_PROXY 
  --certificate-map=MY_MAP 
  --global

Remova a flag --global e adicione --region=YOUR_REGION se o seu balanceador de carga for regional. O balanceador de carga agora serve o seu certificado para o tráfego HTTPS entrante nesse nome de anfitrião. As alterações no certificado podem demorar alguns minutos a propagar-se pelo balanceador de carga.

Testar a sua instalação SSL

Depois de implantar o certificado, confirme que o balanceador de carga o serve corretamente e que a cadeia está completa. A partir de qualquer máquina com OpenSSL, ligue-se ao seu domínio e leia o certificado que ele devolve:

echo | openssl s_client -connect yourdomain.com:443 -servername yourdomain.com 2>/dev/null | openssl x509 -noout -issuer -subject -dates

Isto imprime o emissor, o titular e as datas de validade do certificado atualmente em uso. Para obter um relatório completo sobre o certificado e a sua configuração, incluindo verificações da cadeia e do protocolo, execute o seu domínio na nossa ferramenta SSL Checker, ou abra o site num navegador e verifique o cadeado.

Perguntas Frequentes

Posso gerar um CSR diretamente no Google Cloud?

Não. O Google Cloud não tem nenhum formulário na consola que gere um CSR ou uma chave privada para um certificado autogerido. Você cria o CSR e a chave com o OpenSSL na sua própria máquina (ou com o nosso Gerador de CSR), encomenda o certificado e depois carrega o certificado emitido e a chave privada no Certificate Manager.

Qual é a diferença entre um certificado autogerido e um certificado gerido pela Google?

Um certificado autogerido é aquele que você obtém de uma Autoridade Certificadora e carrega você mesmo, sendo responsável pela sua renovação. Um certificado gerido pela Google é provisionado e renovado automaticamente pela Google. Este tutorial aborda os certificados autogeridos, que é o caminho utilizado para um certificado pago da SSL Dragon.

Por que motivo o Certificate Manager rejeita a minha chave privada?

A causa mais comum é o formato da chave. O Certificate Manager exige uma chave PKCS#8 não encriptada que comece com —–BEGIN PRIVATE KEY—–. Se a sua começar com —–BEGIN RSA PRIVATE KEY—– ou estiver protegida por frase-passe, converta-a com openssl pkcs8 -topk8 -nocrypt -in yourdomain.key -out yourdomain_pkcs8.key e carregue o ficheiro convertido.

Carreguei o certificado, mas o site continua a mostrar “não seguro”. Por quê?

Carregar um certificado no Certificate Manager apenas o armazena. Ele não serve tráfego até você o implantar. Crie um mapa de certificados, adicione uma entrada de mapa para o seu nome de anfitrião e anexe o mapa ao proxy HTTPS de destino do seu balanceador de carga (Passo 4). Até o mapa ser anexado, o balanceador de carga não apresenta o seu certificado.

Qual deve ser a ordem do ficheiro de certificado?

O seu certificado de servidor (folha) deve vir primeiro, seguido dos certificados intermediários, num único ficheiro PEM. O comando cat yourdomain.crt yourdomain.ca-bundle > fullchain.crt produz essa ordem. Uma cadeia ausente ou fora de ordem é um motivo frequente para os navegadores e os verificadores SSL indicarem um caminho de certificado incompleto.

Economize 10% em certificados SSL ao fazer seu pedido hoje!

Emissão rápida, criptografia forte, 99,99% de confiança no navegador, suporte dedicado e garantia de reembolso de 25 dias. Código do cupom: SAVE10

Uma imagem detalhada de um dragão em voo
Escrito por

Redator de conteúdo experiente, especializado em certificados SSL. Transformação de tópicos complexos de segurança cibernética em conteúdo claro e envolvente. Contribua para melhorar a segurança digital por meio de narrativas impactantes.