En este documento, el término SSL hace referencia a los protocolos de capa de conexión segura (SSL) y seguridad de la capa de transporte (TLS). La información de este documento se aplica a las conexiones TLS a través del protocolo de transporte TCP, que puede usar cualquier versión compatible de TLS. En el caso de los balanceadores de cargas que usan HTTP/3, el protocolo de transporte subyacente es QUIC, que usa TLS 1.3 de forma exclusiva.
Las políticas de SSL son Google Cloud objetos de configuración que te permiten controlar cómo los balanceadores de cargas finalizan las conexiones TLS del cliente. Una política de SSL está asociada a un proxy HTTPS de destino o a un proxy SSL de destino. Una política de SSL especifica un perfil de capacidades de TLS y una versión mínima de TLS.
Cada perfil predefinido de una política de SSL especifica un conjunto de capacidades de TLS que el balanceador de cargas está configurado para admitir. La versión mínima de TLS restringe aún más el balanceador de cargas para que solo use versiones específicas de TLS. En los casos en los que necesites especificar la compatibilidad con conjuntos de algoritmos de cifrado particulares que usan TLS 1.2 y versiones anteriores, un perfil personalizado te permite hacerlo. Cada política de SSL tiene un alcance asociado, ya sea global o regional, según el balanceador de cargas.
Los siguientes balanceadores de cargas admiten políticas de SSL globales:
- Balanceador de cargas de aplicaciones externo global
- Balanceador de cargas de aplicaciones clásico
- Balanceador de cargas de aplicaciones interno entre regiones
- Balanceador de cargas de red del proxy externo global
- Balanceador de cargas de red del proxy clásico
Los siguientes balanceadores de cargas admiten políticas de SSL regionales:
- Balanceador de cargas de aplicaciones externo regional
- Balanceador de cargas de aplicaciones interno regional
Asociar una política de SSL a un proxy HTTPS o SSL de destino es opcional. Cada proxy HTTPS o proxy SSL de destino se puede asociar con no más de una política de SSL. Puedes asociar la misma política de SSL con varios proxies HTTPS de destino o varios proxies SSL de destino, siempre y cuando la política de SSL y el proxy de destino usen los mismos alcances. Los cambios en las políticas de SSL no alteran ni interrumpen las conexiones del balanceador de cargas existentes.
En el siguiente ejemplo, se muestra cómo se establecen y finalizan las conexiones de clientes en un balanceador de cargas.
Puedes usar una política de SSL para configurar la versión mínima de TLS y las características de SSL habilitadas en el balanceador de cargas. Las políticas de SSL afectan las conexiones entre los clientes y el balanceador de cargas (Connection-1 en la figura). Las políticas de SSL no afectan las conexiones entre el balanceador de cargas y los backends (Connection-2 en la figura).
Cómo crear una política de SSL
Cuando creas una política de SSL, especificas la siguiente información:
- Un perfil, que especifica un conjunto de capacidades de TLS que el balanceador de cargas está configurado para admitir
- una versión mínima de TLS, que restringe aún más el balanceador de cargas para que use solo versiones específicas de TLS
Cuando se conectan al balanceador de cargas, los clientes anuncian las versiones del protocolo TLS, los conjuntos de cifrado y otras capacidades de TLS que pueden admitir. Durante el protocolo de enlace de TLS, el balanceador de cargas elige la versión más reciente del protocolo de TLS que admiten tanto él como el cliente, y también elige otros parámetros de TLS (incluido un conjunto de algoritmos de cifrado) para la conexión. El protocolo de enlace TLS falla si el balanceador de cargas y el cliente no admiten versiones de TLS, conjuntos de algoritmos de cifrado y otras capacidades superpuestas.
Perfiles predefinidos
Google Cloud proporciona los siguientes perfiles predefinidos.
COMPATIBLE: Admite el conjunto más amplio de clientes, incluidos aquellos que solo pueden usar versiones anteriores de TLS y capacidades de TLS.MODERN: Admite un amplio conjunto de algoritmos de cifrado de TLS, lo que permite que los clientes modernos negocien TLS.RESTRICTED: Admite un conjunto reducido de algoritmos de cifrado TLS. El perfilRESTRICTEDestá diseñado para satisfacer requisitos de cumplimiento más estrictos.FIPS_202205: Admite un conjunto de capacidades de TLS diseñadas para cumplir con el estándar FIPS 140-3.
Perfil personalizado
Los perfiles COMPATIBLE, MODERN y RESTRICTED difieren en el conjunto de algoritmos de cifrado que admiten cuando el balanceador de cargas negocia TLS 1.2 y versiones anteriores. En la tabla de la sección Paquetes de algoritmos de cifrado para TLS 1.2 y versiones anteriores, se muestran estas diferencias.
También puedes crear un perfil CUSTOM y especificar individualmente los conjuntos de algoritmos de cifrado que admite el balanceador de cargas para TLS 1.2 y versiones anteriores. Esto no afecta la forma en que el balanceador de cargas negocia TLS 1.3.
Comportamiento cuando no se especifica ninguna política de SSL
Si no asocias una política de SSL a un proxy HTTPS o SSL de destino, el balanceador de cargas funcionará como si hubieras asociado una política de SSL con los siguientes parámetros de configuración:
- El perfil de
COMPATIBLEseleccionado - La versión mínima de TLS establecida en 1.0
Compatibilidad con versiones de TLS
Ten en cuenta que un perfil puede restringir indirectamente las versiones de TLS que el balanceador de cargas puede negociar. Por ejemplo, los conjuntos de algoritmos de cifrado habilitados en el perfil RESTRICTED no incluyen ningún conjunto de algoritmos de cifrado compatible con TLS 1.0 o 1.1. Por lo tanto, elegir el perfil RESTRICTED prohíbe de manera efectiva que los clientes usen TLS 1.0 y 1.1, incluso si la versión mínima de TLS de la política de SSL está establecida en 1.0 o 1.1.
Cloud Load Balancing no es compatible con las versiones de SSL 3.0 o anteriores. En la siguiente tabla, se describe la compatibilidad de características para cada versión de TLS/SSL.
| Versión de TLS/SSL | Compatibilidad de funciones |
|---|---|
| TLS 1.3 |
Todos los perfiles, excepto el
El perfil
|
| TLS 1.2 y versiones anteriores | El perfil que usa la política de SSL controla los conjuntos de cifrado que se usan con TLS 1.2 y versiones anteriores. |
| SSL 3.0 o versiones anteriores | No es compatible con los balanceadores de cargas que usan políticas de SSL. |
Conjuntos de algoritmos de cifrado para TLS 1.2 y versiones anteriores
En la siguiente tabla, se muestran los conjuntos de algoritmos de cifrado para TLS 1.2 y versiones anteriores que se incluyen en cada perfil predefinido. Cuando creas una política de SSL que usa el perfil CUSTOM, puedes seleccionar estos conjuntos de cifrado de forma individual. Las políticas de SSL que usan el perfil CUSTOM deben incluir al menos un conjunto de algoritmos de cifrado de la siguiente lista.
| Valor IANA | Función | COMPATIBLE |
MODERN |
RESTRICTED |
FIPS_202205 |
|---|---|---|---|---|---|
0xCCA9 |
TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256 |
||||
0xCCA8 |
TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256 |
||||
0xC02B |
TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 |
||||
0xC02F |
TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 |
||||
0xC02C |
TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 |
||||
0xC030 |
TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 |
||||
0xC009 |
TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA |
||||
0xC013 |
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA |
||||
0xC00A |
TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA |
||||
0xC014 |
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA |
||||
0x009C |
TLS_RSA_WITH_AES_128_GCM_SHA256 |
||||
0x009D |
TLS_RSA_WITH_AES_256_GCM_SHA384 |
||||
0x002F |
TLS_RSA_WITH_AES_128_CBC_SHA |
||||
0x0035 |
TLS_RSA_WITH_AES_256_CBC_SHA |
||||
0x000A |
TLS_RSA_WITH_3DES_EDE_CBC_SHA |
Detalles del perfil de FIPS_202205
El perfil FIPS_202205 restringe el balanceador de cargas para que use un conjunto de capacidades de TLS que están diseñadas para ser compatibles con el estándar FIPS 140-3.
Cuando una política de SSL usa este perfil, el balanceador de cargas admite TLS 1.2 o 1.3, con las siguientes restricciones:
Si la conexión TLS usa TLS 1.2, solo se permiten los siguientes conjuntos de algoritmos de cifrado:
TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
Si la conexión TLS usa TLS 1.3, solo se permiten los siguientes conjuntos de algoritmos de cifrado:
TLS_AES_128_GCM_SHA256TLS_AES_256_GCM_SHA384
Solo se permiten
P-256oP-384para el acuerdo de clave.Solo se permiten las siguientes firmas digitales de certificados de balanceador de cargas:
- PKCS#1/PSS con
SHA-256,SHA-384oSHA-512 - ECDSA con
P-256oP-384ySHA-256oSHA-384
- PKCS#1/PSS con
Actualizaciones de características
Nos reservamos el derecho de actualizar el conjunto de funciones habilitadas en los perfiles COMPATIBLE, MODERN y RESTRICTED, así como qué funciones son configurables en un perfil CUSTOM. Esto lo haremos a medida que quitemos la compatibilidad con las capacidades de TLS anteriores y agreguemos compatibilidad con las más nuevas.
Cuando agregamos funciones que mejoran las capacidades de TLS, podemos habilitarlas de inmediato en los perfiles COMPATIBLE, MODERN y RESTRICTED para que las políticas de SSL que seleccionan esos perfiles puedan usar las funciones agregadas. Sin embargo, si la política selecciona el perfil CUSTOM, debes modificar la configuración de la política para usar las funciones agregadas.
Limitaciones
Si inhabilitas determinadas versiones o cifrados de SSL, es posible que algunos clientes anteriores no puedan conectarse a tu proxy a través de HTTPS o SSL. Si inhabilitas una selección suficientemente amplia de algoritmos de cifrado en el perfil
CUSTOM, es posible que ningún cliente pueda negociar HTTPS.Un certificado SSL asociado con el balanceador de cargas usa una firma digital ECDSA o RSA. Los perfiles predefinidos son compatibles con ambos tipos de firmas de certificados. Un perfil personalizado debe habilitar cifrados que sean compatibles con la firma digital que usan los certificados de tu balanceador de cargas.
¿Qué sigue?
- Si deseas crear, modificar o borrar una política de SSL, consulta Usa políticas de SSL.
- Si quieres configurar un certificado SSL, consulta Descripción general de certificados SSL.