Visão geral dos certificados SSL

Os balanceadores de carga de proxy SSL e os HTTP(S) internos e externos do Google Cloud usam certificados SSL para proteger as comunicações e autenticar os servidores nos clientes.

Um recurso de certificado SSL do Google Cloud contém uma chave privada e o próprio certificado SSL. Além disso, ele está associado ao proxy HTTPS ou SSL de destino do balanceador de carga. Daqui em diante, o termo SSL certificate significa um recurso de certificado SSL do Google Cloud, incluindo a chave privada correspondente.

Balanceadores de carga, certificados SSL e proxies de destino

Os proxies de destino encaminham as solicitações recebidas ao próximo recurso downstream para realizar mais processamento. Em um balanceador de carga baseado em HTTPS, esse recurso é um mapa de URL. Em um balanceador de carga de proxy SSL, o proxy de destino encaminha as solicitações recebidas diretamente a um serviço de back-end.

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)

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)

Escopos dos certificados 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

Certificados SSL autogerenciados e gerenciados pelo Google

É possível conseguir os próprios certificados autogerenciados ou usar os que são conseguidos e gerenciados pelo Google (certificados gerenciados pelo Google).

Nos balanceadores de carga de proxy SSL ou HTTP(S) externos, é possível mencionar o certificado SSL gerenciado pelo Google, o autogerenciado ou uma combinação de ambos 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.

  • Os certificados SSL autogerenciados são conseguidos, 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 (em inglês).

  • Os certificados SSL gerenciados pelo Google são conseguidos 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). 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.

Vários certificados SSL

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

Quando você especifica mais de um, o primeiro certificado na lista de certificados SSL é considerado o principal 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 real (CN, na sigla em inglês) ou nome alternativo do sujeito (SAN, na sigla em inglês) correspondentes ao nome de host SNI especificado pelo cliente. O software cliente precisa ser compatível com o uso de RSA ou ECDSA em assinaturas digitais.

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

Se você precisar de uma conexão auditável e criptografada do balanceador de carga com os endpoints ou as VMs de back-end:

  • Configure os serviços de back-end do balanceador de carga para usar os protocolos SSL (TLS), HTTPS ou HTTP2.
  • Configure o software que é executado nos endpoints e VMs de back-end para que ele veicule o tráfego usando o mesmo protocolo do serviço de back-end.
  • Instale os certificados SSL nos endpoints ou VMs de back-end. Esses certificados não precisam corresponder ao certificado SSL do balanceador de carga.

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 o 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 certificados com atributos SAN não podem ser usados por balanceadores de carga de proxy SSL. Os certificados com atributos SAN precisam ser associados a um proxy HTTPS de destino, e não a um proxy SSL de destino.

  • 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