Visão geral dos certificados SSL

O Transport Layer Security (TLS) é um protocolo de criptografia usado em certificados SSL para proteger as comunicações de rede.

O Google Cloud usa certificados SSL para fornecer privacidade e segurança de um cliente para um balanceador de carga. Para isso, o balanceador de carga precisa ter um certificado SSL e sua chave privada correspondente. A comunicação entre o cliente e o balanceador de carga permanece particular e ilegível para qualquer um que não tenha essa chave privada.

Balanceadores de carga

Veja na tabela a seguir um resumo dos tipos de balanceadores de carga do Google Cloud que exigem certificados SSL.

Tipo de balanceador de carga Protocolo do cliente ao balanceador de carga
Balanceadores de carga HTTPS internos HTTPS ou HTTP/2
Balanceadores de carga HTTPS externos HTTPS ou HTTP/2
Balanceadores de carga de proxy SSL SSL (TLS)

Certificados SSL autogerenciados e gerenciados pelo Google

Você pode receber seus próprios certificados autogerenciados ou usar certificados gerenciados pelo Google, que o Google gera e gerencia para você.

  • Os certificados SSL autogerenciados são obtidos, provisionados e renovados por você. Esse tipo de certificado pode ser um dos seguintes:

    • Validação de domínio (DV, na sigla em inglês)
    • Validação da organização (OV, na sigla em inglês)
    • Validação estendida (EV, na sigla em inglês)

    Para mais informações, consulte Certificado de chave pública.

  • Os certificados SSL gerenciados pelo Google são obtidos e gerenciados pelo Google Cloud, nos seus domínios, e renovados automaticamente. Os certificados gerenciados pelo Google são de validação de domínio (DV, na sigla em inglês). Eles não comprovam a identidade de uma organização ou indivíduo associado ao certificado e não são compatíveis com nomes comuns de caracteres curinga.

Nos balanceadores de carga de proxy SSL ou HTTP(S) externos, é possível referenciar o certificado SSL gerenciado pelo Google, o autogerenciado ou os dois em um proxy de destino. Isso pode ser feito em qualquer ordem de certificado. No caso do balanceador de carga HTTP(S) interno, você precisa usar certificados autogerenciados.

Para informações sobre como configurar certificados SSL para seus balanceadores de carga, consulte os seguintes guias:

Vários certificados SSL

É possível configurar até o número máximo de certificados SSL por HTTPS ou proxy SSL de destino. Use vários certificados SSL se houver veiculação a partir de múltiplos domínios por meio da mesma porta e endereço IP do balanceador de carga, e quando quiser utilizar um certificado SSL diferente em cada domínio.

Quando você especifica mais de um certificado SSL, o primeiro da lista é considerado o principal certificado SSL associado ao proxy de destino.

Quando um cliente envia uma solicitação, o balanceador de carga usa o nome de host SNI especificado pelo cliente para selecionar o certificado que será utilizado na negociação da conexão SSL.

Sempre que possível, o balanceador de carga seleciona um certificado com o nome comum (CN, na sigla em inglês) ou nome alternativo do assunto (SAN, na sigla em inglês) correspondentes ao nome de host SNI especificado pelo cliente. RSA e ECDSA são tipos de assinaturas digitais, e o software cliente precisa ser capaz de usá-las.

Se não for possível selecionar os certificados disponíveis, ou se o cliente não especificar um nome de host SNI, o balanceador de carga negociará o SSL usando o certificado principal (o primeiro da lista).

Vários certificados SSL (clique para ampliar)
Vários certificados SSL (clique para ampliar)

Criptografia do balanceador de carga nos back-ends

Para informações sobre esse tópico, consulte Criptografia para os back-ends.

Balanceadores de carga, certificados SSL e proxies de destino

Um recurso de certificado SSL do Google Cloud contém uma chave privada e o próprio certificado SSL.

Os proxies de destino representam a conexão lógica entre o front-end de um balanceador de carga e o respectivo serviço de back-end (para balanceadores de carga de proxy SSL) ou mapa de URL (para balanceadores de carga HTTPS).

Veja no diagrama a seguir como o proxy de destino e os certificados SSL associados se encaixam na arquitetura de balanceamento de carga.

Proxy de destino, certificado SSL e outros componentes do balanceador de carga (clique para ampliar)
Proxy de destino, certificado SSL e outros componentes do balanceador de carga (clique para ampliar)

Escopo do certificado SSL

O Google Cloud tem dois escopos de recursos de certificado SSL: regional e global.

Tipo de balanceador de carga Escopo de recurso de certificado SSL Referência da gcloud Referência da API
Balanceadores de carga HTTPS internos Regional gcloud compute ssl-certificates --region regionSslCertificates
Balanceadores de carga HTTPS externos Global gcloud compute ssl-certificates --global sslCertificates
Balanceadores de carga de proxy SSL Global gcloud compute ssl-certificates --global sslCertificates

Proxies de destino

Os certificados SSL são associados aos tipos de proxies de destino a seguir:

Tipo de balanceador de carga Tipo de proxy de destino Referência da gcloud Referência da API
Balanceadores de carga HTTPS internos Regional gcloud compute target-https-proxies --region regionTargetHttpsProxies
Balanceadores de carga HTTPS externos Global gcloud compute target-https-proxies --global targetHttpsProxies
Balanceadores de carga de proxy SSL Global gcloud compute target-ssl-proxies --global targetSslProxies

Limitações

  • Cada proxy de destino aceita um número limitado de certificados SSL. Para mais informações, consulte o limite de certificados SSL por proxy SSL ou HTTPS de destino.

  • Cada certificado gerenciado pelo Google aceita um número limitado de domínios. Para mais informações, consulte o limite de domínios por certificado SSL gerenciado pelo Google.

  • Quando você usa certificados gerenciados pelo Google com balanceamento de carga de proxy SSL, a regra de encaminhamento do balanceador precisa utilizar a porta TCP 443 para que o certificado seja renovado automaticamente.

  • Os balanceadores de carga do Google Cloud não são compatíveis com a autenticação baseada em certificado do cliente (TLS mútuo, mTLS).

  • Os certificados SSL gerenciados pelo Google não são compatíveis com caracteres curinga.

A seguir