Dans ce document, le terme SSL désigne à la fois les protocoles Secure Sockets Layer (SSL) et Transport Layer Security (TLS). Les informations de ce document s'appliquent aux connexions TLS via le protocole de transport TCP, qui peut utiliser n'importe quelle version compatible de TLS. Pour les équilibreurs de charge qui utilisent HTTP/3, le protocole de transport sous-jacent est QUIC, qui utilise exclusivement TLS 1.3.
Une règle SSL définit les fonctionnalités TLS, telles que les versions de protocole et les suites de chiffrement, qui sont compatibles avec les équilibreurs de charge lors d'un handshake TLS. Une règle SSL est associée à un proxy HTTPS cible ou à un proxy SSL cible.
Chaque profil prédéfini d'une règle SSL spécifie un ensemble de fonctionnalités TLS que l'équilibreur de charge est configuré pour prendre en charge. La version TLS minimale limite davantage l'équilibreur de charge à n'utiliser que des versions spécifiques de TLS. De plus, si vous devez spécifier la compatibilité avec des suites de chiffrement particulières utilisées par TLS 1.2 et versions antérieures, un profil personnalisé vous permet de le faire. Chaque règle SSL a une portée associée, globale ou régionale, selon l'équilibreur de charge.
Les équilibreurs de charge suivants sont compatibles avec les règles SSL globales :
- Équilibreur de charge d'application externe global
- Équilibreur de charge d'application classique
- Équilibreur de charge d'application interne interrégional
- Équilibreur de charge réseau proxy externe global
- Équilibreur de charge réseau proxy classique
Les équilibreurs de charge suivants sont compatibles avec les règles SSL régionales :
- Équilibreur de charge d'application externe régional
- Équilibreur de charge d'application interne régional
L'association d'une règle SSL à un proxy HTTPS cible ou à un proxy SSL cible est facultative. Chaque proxy HTTPS ou SSL cible ne peut être associé qu'à une seule règle SSL. Vous pouvez associer la même règle SSL à plusieurs proxys HTTPS cibles ou à plusieurs proxys SSL cibles, à condition que la règle SSL et le proxy cible utilisent des portées identiques. Les modifications apportées aux règles SSL n'altèrent ni n'interrompent les connexions de l'équilibreur de charge existantes.
L'exemple suivant montre comment les connexions de clients sont établies et interrompues au niveau d'un équilibreur de charge.
Vous pouvez utiliser une règle SSL pour configurer la version TLS minimale et les fonctionnalités SSL activées dans l'équilibreur de charge. Les règles SSL affectent les connexions entre les clients et l'équilibreur de charge (connexion 1 sur la figure). Les règles SSL n'affectent pas les connexions entre l'équilibreur de charge et les backends (connexion 2 sur la figure).
Créer une règle SSL
Lorsque vous créez une règle SSL, vous spécifiez les informations suivantes :
- profil, qui spécifie un ensemble de fonctionnalités TLS que l'équilibreur de charge est configuré pour prendre en charge
- version TLS minimale, qui limite davantage l'équilibreur de charge à n'utiliser que des versions spécifiques de TLS
- paramètre d'échange de clés post-quantique, qui spécifie quand l'échange de clés post-quantique est activé sur l'équilibreur de charge
Lors de la connexion à l'équilibreur de charge, les clients annoncent les versions de protocole TLS, les suites de chiffrement et les autres fonctionnalités TLS qu'ils sont en mesure de prendre en charge. Lors du handshake TLS, l'équilibreur de charge choisit la version de protocole TLS la plus récente que lui et le client prennent en charge, et choisit également d'autres paramètres TLS (y compris une suite de chiffrement) pour la connexion. Le handshake TLS échoue si l'équilibreur de charge et le client ne sont pas compatibles avec les mêmes versions TLS, suites de chiffrement et autres fonctionnalités.
Profils prédéfinis
Google Cloud propose les profils prédéfinis suivants.
COMPATIBLE. Prend en charge l'ensemble le plus vaste de clients, y compris ceux qui ne peuvent utiliser que des versions TLS et des fonctionnalités TLS antérieures.MODERN. Prend en charge un large éventail d'algorithmes de chiffrement TLS, ce qui permet aux clients modernes d'effectuer des négociations TLS.RESTRICTED. Prend en charge un ensemble réduit d'algorithmes de chiffrement TLS. Le profilRESTRICTEDest destiné à répondre à des exigences de conformité plus strictes.FIPS_202205. Prend en charge un ensemble de fonctionnalités TLS destinées à répondre à la conformité FIPS 140-3.
Profil personnalisé
Les profils COMPATIBLE, MODERN et RESTRICTED diffèrent dans l'ensemble des suites de chiffrement qu'ils prennent en charge lorsque l'équilibreur de charge négocie TLS 1.2 et versions antérieures. Le tableau de la section
Suites de chiffrement pour TLS 1.2 et versions antérieures présente ces différences.
Vous pouvez également créer un profil CUSTOM et spécifier individuellement les suites de chiffrement que l'équilibreur de charge prend en charge pour TLS 1.2 et versions antérieures. Cela n'affecte pas la façon dont l'équilibreur de charge négocie TLS 1.3.
Comportement lorsqu'aucune règle SSL n'est spécifiée
Si vous n'associez pas de règle SSL à un proxy HTTPS cible ou à un proxy SSL cible, l'équilibreur de charge fonctionne comme si vous aviez associé une règle SSL avec les paramètres suivants :
- Le profil
COMPATIBLEest sélectionné. - La version TLS minimale est définie sur 1.0.
Compatibilité avec les versions TLS
Notez qu'un profil peut indirectement restreindre les versions de TLS que l'équilibreur de charge peut négocier. Par exemple, les suites de chiffrement activées dans le profil RESTRICTED n'incluent pas de suites de chiffrement compatibles avec TLS 1.0 ou 1.1. Le choix du profil RESTRICTED interdit donc aux clients d'utiliser TLS 1.0 et TLS 1.1, même si la version TLS minimale de la règle SSL est définie sur 1.0 ou 1.1.
Cloud Load Balancing n'est pas compatible avec la version 3.0 ou antérieure de SSL. Le tableau suivant décrit la compatibilité des fonctionnalités pour chaque version TLS/SSL.
| Version TLS/SSL | Compatibilité avec les fonctionnalités |
|---|---|
| TLS 1.3 |
Tous les profils, à l'exception du profil
Le profil
|
| TLS 1.2 et versions antérieures | Le profil utilisé par la règle SSL contrôle les suites de chiffrement utilisées avec TLS 1.2 et versions antérieures. |
| SSL 3.0 ou version antérieure | Non compatible avec les équilibreurs de charge qui utilisent des règles SSL. |
Suites de chiffrement pour TLS 1.2 et versions antérieures
Le tableau suivant présente les suites de chiffrement pour TLS 1.2 et versions antérieures incluses dans chaque profil prédéfini. Lorsque vous créez une règle SSL qui utilise le profil CUSTOM, vous pouvez sélectionner ces suites de chiffrement individuellement. Les règles SSL qui utilisent le profil CUSTOM doivent inclure au moins une suite de chiffrement de la liste suivante.
| Valeur IANA | Fonctionnalité | 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 |
Détails du profil FIPS_202205
Le profil FIPS_202205 limite l'équilibreur de charge à utiliser un ensemble de fonctionnalités TLS destiné à être compatible avec la norme FIPS 140-3.
Lorsqu'une règle SSL utilise ce profil, l'équilibreur de charge est compatible avec TLS 1.2 ou 1.3, avec les restrictions suivantes :
Si la connexion TLS utilise TLS 1.2, seules les suites de chiffrement suivantes sont autorisées :
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 connexion TLS utilise TLS 1.3, seules les suites de chiffrement suivantes sont autorisées :
TLS_AES_128_GCM_SHA256TLS_AES_256_GCM_SHA384
Pour l'échange de clés, seuls
secp256r1etsecp384r1sont autorisés. Si l'échange de clés post-quantique est activé,X25519MLKEM768est également autorisé.Seules les signatures numériques de certificat d'équilibreur de charge suivantes sont autorisées :
- Avec les certificats RSA,
rsa_pkcs1_sha256,rsa_pkcs1_sha384oursa_pkcs1_sha512. - Avec les certificats ECDSA,
ecdsa_secp256r1_sha256ouecdsa_secp384r1_sha384.
- Avec les certificats RSA,
Échange de clés post-quantique
L'échange de clés post-quantique protège contre certaines menaces pour la sécurité TLS posées par la technologie de l'informatique quantique. Au fil du temps, nous l'activerons par défaut dans les Google Cloud équilibreurs de charge. Le paramètre d'échange de clés post-quantique vous permet de l'activer plus tôt, et nous vous recommandons de le faire.
La forme particulière d'échange de clés post-quantique prise en charge par Google Cloud
les équilibreurs de charge est X25519MLKEM768, un hybride d'algorithmes de chiffrement classiques et
post-quantiques.
Vous pouvez activer l'échange de clés X25519MLKEM768 sur tous les
équilibreurs de charge compatibles avec les règles SSL.
Lorsque vous activez l'échange de clés post-quantique, tenez compte du comportement suivant :
Lorsque l'échange de clés post-quantique est activé, l'équilibreur de charge utilise l'échange de clés
X25519MLKEM768lorsqu'il se connecte à des clients qui annoncent la compatibilité avec TLS 1.3 etX25519MLKEM768. Les connexions aux clients qui ne sont pas compatibles avec TLS 1.3 ouX25519MLKEM768ne sont pas affectées.L'échange de clés post-quantique n'est compatible qu'avec les connexions TLS de frontend, c'est-à-dire les connexions entre le client et l'équilibreur de charge.
L'échange de clés post-quantique peut être activé avec n'importe quel profil de règle SSL et n'importe quel paramètre de version TLS minimale.
Modes d'échange de clés post-quantique
Le paramètre d'échange de clés post-quantique vous permet de spécifier l'un des éléments suivants :
ENABLED. L'équilibreur de charge utilise l'échange de clésX25519MLKEM768avec les clients qui annoncent la compatibilité.DEFAULT. L'équilibreur de charge n'autorise pas l'échange de clésX25519MLKEM768avant octobre 2026. Il s'agit du comportement par défaut si aucune règle SSL n'est associée.DEFERRED. L'équilibreur de charge n'autorise pas l'échange de clésX25519MLKEM768avant octobre 2027.
La chronologie suivante présente le déploiement prévu de la compatibilité avec l'échange de clés post-quantique pour les équilibreurs de charge.
| Chronologie | État de l'échange de clés post-quantique |
|---|---|
| Maintenant | Désactivé par défaut, activé uniquement lorsqu'il est défini sur ENABLED |
| Après octobre 2026 | Activé par défaut, désactivé lorsqu'il est défini sur DEFERRED |
| Après octobre 2027 | Toujours activé |
Pour en savoir plus sur la création d'une règle SSL avec échange de clés post-quantique, consultez Créer des règles SSL.
Limites
La désactivation d'algorithmes de chiffrement ou de versions SSL spécifiques peut empêcher certains clients plus anciens de se connecter à votre proxy via HTTPS ou SSL. Si vous désactivez un trop grand nombre d'algorithmes de chiffrement dans le profil
CUSTOM, cela peut avoir pour conséquence qu'aucun client ne sera en mesure d'effectuer des négociations HTTPS.Un certificat SSL associé à votre équilibreur de charge utilise une signature numérique ECDSA ou RSA. Les profils prédéfinis sont compatibles avec ces deux types de signature de certificat. Un profil personnalisé doit autoriser les algorithmes de chiffrements compatibles avec la signature numérique utilisée par les certificats de votre équilibreur de charge.
Étape suivante
- Pour créer, modifier ou supprimer une règle SSL, consultez Utiliser des règles SSL.
- Pour configurer un certificat SSL, consultez Présentation des certificats SSL.