Criteri SSL per i protocolli SSL e TLS

In questo documento, il termine SSL si riferisce sia al protocollo SSL (Secure Sockets Layer) e TLS (Transport Layer Security).

I criteri SSL specificano l'insieme di funzionalità SSL utilizzate dai bilanciatori del carico di Google Cloud da utilizzare durante la negoziazione di SSL con i client. Ad esempio, puoi utilizzare un criterio SSL per definire la versione TLS minima e le funzionalità che ogni client deve supportare per inviare traffico al bilanciatore del carico.

I seguenti bilanciatori del carico supportano i criteri SSL globali:

  • Bilanciatore del carico delle applicazioni esterno globale
  • Bilanciatore del carico delle applicazioni classico
  • Bilanciatore del carico delle applicazioni interno tra regioni
  • Bilanciatore del carico di rete proxy esterno globale
  • Bilanciatore del carico di rete proxy classico

I seguenti bilanciatori del carico supportano i criteri SSL regionali:

  • Bilanciatore del carico delle applicazioni esterno regionale
  • Bilanciatore del carico delle applicazioni interno regionale

Per impostazione predefinita, questi bilanciatori del carico utilizzano un insieme di funzionalità SSL che offre una buona sicurezza e un'ampia compatibilità. Alcune applicazioni richiedono un maggiore controllo sulle versioni e sulle crittografie SSL utilizzate per le connessioni HTTPS o SSL. Puoi definire i criteri SSL per specificare l'insieme di caratteristiche SSL che utilizzato dal bilanciatore del carico durante la negoziazione di SSL con i client.

L'esempio seguente mostra come vengono stabilite e come vengono stabilite le connessioni dai client terminati in un bilanciatore del carico.

Connessioni client in bilanciatori del carico delle applicazioni esterni o bilanciatori del carico di rete proxy esterni.
Connessioni client in bilanciatori del carico delle applicazioni esterni o bilanciatori del carico di rete proxy esterni (fai clic per ingrandire).

Puoi utilizzare un criterio SSL per configurare la versione TLS minima e le funzionalità SSL abilitate nel bilanciatore del carico. I criteri SSL influiscono sulle connessioni tra i client e il bilanciatore del carico (Connessione 1 nell'illustrazione). I criteri SSL non influiscono sulle connessioni tra il bilanciatore del carico e i backend (Connessione 2).

Definizione di un criterio SSL

Per definire un criterio SSL, specifica una versione TLS minima e un profilo. Il profilo seleziona un insieme di funzionalità SSL da attivare nel bilanciatore del carico.

Tre profili preconfigurati gestiti da Google consentono di specificare il livello e la compatibilità più appropriata per la tua applicazione. I tre modelli di pod profili sono i seguenti:

  • COMPATIBILE. Consente al set più ampio di client, inclusi quelli che supportano solo funzionalità SSL obsolete, di negoziare SSL con il bilanciatore del carico.
  • MODERNO. Supporta un ampio insieme di funzionalità SSL, consentendo ai client moderni di negoziare SSL.
  • LIMITATO. Supporta un insieme ridotto di funzioni SSL, pensate per soddisfare requisiti di conformità più rigidi.

Un quarto profilo CUSTOM ti consente di selezionare singolarmente le funzionalità SSL.

Il criterio SSL specifica anche la versione minima del protocollo TLS che che i client possono utilizzare per stabilire una connessione.

Tieni presente che un profilo può limitare indirettamente le versioni di TLS che il carico con un bilanciatore del carico, Ad esempio, le chiavi attive nel profilo CON RESTRIZIONI sono supportate solo da TLS 1.2. Pertanto, la scelta del profilo CON RESTRIZIONI di fatto impedisce ai client di utilizzare TLS 1.0 e 1.1, anche se la versione TLS minima del criterio SSL lo consente.

Se non scegli uno dei tre profili preconfigurati o non crei un criterio SSL personalizzato, il bilanciatore del carico utilizza il criterio SSL predefinito. Il criterio SSL predefinito equivale a un criterio SSL che utilizza il profilo COMPATIBLE con una versione TLS minima di TLS 1.0.

Puoi collegare un criterio SSL a più di un proxy di destinazione. Non puoi configurare più di un criterio SSL per un determinato proxy di destinazione. Eventuali modifiche apportate ai criteri SSL non alterano o interrompono le connessioni dei bilanciatori del carico esistenti.

Cloud Load Balancing non supporta SSL versione 3.0 o in precedenza. La tabella seguente descrive il supporto delle funzioni per ogni protocollo TLS/SSL completamente gestita.

Versione TLS/SSL Funzionalità supportate
TLS 1.0, 1.1 o 1.2 Le impostazioni nei criteri SSL controllano i pacchetti di crittografia applicati alle connessioni dei client.
TLS 1.3 Le impostazioni nei criteri SSL non controllano la selezione della crittografia. TLS 1.3 supporta solo le crittografie TLS_AES_128_GCM_SHA256, TLS_AES_256_GCM_SHA384 e TLS_CHACHA20_POLY1305_SHA256.
QUIC Le impostazioni nei criteri SSL non controllano la selezione della crittografia.
SSL 3.0 o versioni precedenti Non applicabile. Non supportato da Cloud Load Balancing.

Durante ogni handshake TLS, il client indica la versione del protocollo TLS più alta supportata. Il server è obbligatorio per selezionare la versione di protocollo più alta supportata dal client e dal server e consentito dalla configurazione del server. Ad esempio, se un bilanciatore del carico è configurato con una versione TLS minima di 1.2, un handshake con un client moderno che supporta TLS 1.3 seleziona TLS 1.3. Un handshake con un client precedente che supporta solo TLS 1.2 utilizza TLS 1.2. Un handshake con un client precedente che supporta solo TLS 1.1 non va a buon fine.

Nella tabella seguente sono elencate le funzionalità dei criteri SSL disponibili per ogni un profilo preconfigurato. Tutte le funzionalità controllano se una particolare cifratura è possibile utilizzare suite e si applicano solo alle connessioni client che utilizzano TLS versione 1.2 o precedenti, non ai clienti che utilizzano QUIC.

Valore IANA Funzionalità Nel profilo COMPATIBILE Nel profilo MODERNO Nel profilo con RESTRICTED
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

Aggiornamenti delle funzionalità

Ci riserviamo il diritto di aggiornare l'insieme di funzionalità attivate nei COMPATIBILI, MODERNI e LIMITATI, nonché le funzionalità configurabile in un profilo CUSTOM. Lo facciamo rimuovendo il supporto per le funzionalità SSL meno recenti e aggiungendo il supporto per quelle più recenti.

Quando aggiungiamo funzionalità che migliorano le funzionalità SSL, potremmo attivarle immediatamente nei profili COMPATIBILE, MODERNO e CON RESTRIZIONI in modo che i criteri SSL che selezionano questi profili possano utilizzare le nuove funzionalità. Tuttavia, se il criterio seleziona il profilo PERSONALIZZATO, devi modificare le impostazioni del criterio per utilizzare le funzionalità aggiunte.

Limitazioni

  • La disattivazione di determinate versioni o crittografi SSL potrebbe comportare l'impossibilità per alcuni client meno recenti di connettersi al proxy utilizzando HTTPS o SSL. La disattivazione di una selezione sufficientemente ampia di crittografi nel profilo CUSTOM potrebbe comportare l'impossibilità per i client di negoziare HTTPS.

  • Un certificato SSL associato al bilanciatore del carico utilizza una firma digitale ECDSA o RSA. I profili predefiniti sono compatibili tipi di firme dei certificati. Un profilo personalizzato dovrebbe abilitare crittografie sono compatibili con la firma digitale utilizzata certificati.

  • Le funzionalità che controllano le suite di crittografia si applicano solo alle connessioni client che utilizzano TLS 1.2 e versioni precedenti. Non controllano la selezione della crittografia nelle connessioni che utilizzano QUIC o TLS 1.3.

Passaggi successivi