In questo documento, il termine SSL si riferisce ai protocolli SSL (Secure Sockets Layer) e TLS (Transport Layer Security). Le informazioni contenute in questo documento si applicano alle connessioni TLS tramite il protocollo di trasporto TCP, che può utilizzare qualsiasi versione supportata di TLS. Per i bilanciatori del carico che utilizzano connessioni HTTP/3, il protocollo di trasporto sottostante è QUIC, che utilizza esclusivamente TLS 1.3.
Le policy SSL specificano l'insieme di funzionalità SSL che i bilanciatori del carico utilizzano durante la negoziazione SSL con i client. Google Cloud Ad esempio, puoi utilizzare una policy SSL per definire la versione e le funzionalità TLS minime che ogni client deve supportare per inviare traffico al bilanciatore del carico.
I seguenti bilanciatori del carico supportano le norme 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 le policy 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 offrono 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 criteri SSL per specificare l'insieme di funzionalità SSL che il bilanciatore del carico utilizza durante la negoziazione SSL con i client.
Il seguente esempio mostra come vengono stabilite e terminate le connessioni dai client a un bilanciatore del carico.
Puoi utilizzare una policy 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). Le norme SSL non influiscono sulle connessioni tra il bilanciatore del carico e i backend (Connessione 2).
Definizione di una policy SSL
Per definire una policy 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 ti consentono di specificare il livello di compatibilità appropriato per la tua applicazione. I tre profili preconfigurati sono i seguenti:
- COMPATIBILE. Consente al più ampio set di client, inclusi quelli che supportano solo funzionalità SSL obsolete, di negoziare SSL con il bilanciatore del carico.
- MODERNO. Supporta un ampio set di funzionalità SSL, consentendo ai client moderni di negoziare SSL.
- RESTRICTED. Supporta un set ridotto di funzionalità SSL, progettato per soddisfare requisiti di conformità più rigidi.
Un quarto profilo PERSONALIZZATO ti consente di selezionare singolarmente le funzionalità SSL.
Il criterio SSL specifica anche la versione minima del protocollo TLS che i client possono utilizzare per stabilire una connessione.
Tieni presente che un profilo può limitare indirettamente le versioni di TLS che il load balancer può negoziare. Ad esempio, le crittografie abilitate nel profilo CON RESTRIZIONI sono supportate solo da TLS 1.2; la scelta del profilo CON RESTRIZIONI impedisce di fatto 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. La policy SSL predefinita equivale a una policy 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 una policy SSL per un determinato proxy di destinazione. Le modifiche apportate ai criteri SSL non alterano né interrompono le connessioni del bilanciatore del carico esistenti.
Cloud Load Balancing non supporta le versioni SSL 3.0 o precedenti. La tabella seguente descrive il supporto delle funzionalità per ogni versione di TLS/SSL.
Versione TLS/SSL | Funzionalità supportate |
---|---|
TLS 1.0, 1.1 o 1.2 | Le impostazioni dei criteri SSL controllano i pacchetti di crittografia applicati alle connessioni client. |
TLS 1.3 | Le impostazioni nei criteri SSL non controllano la selezione delle cifrature. TLS 1.3
supporta solo gli algoritmi di crittografia TLS_AES_128_GCM_SHA256 ,
TLS_AES_256_GCM_SHA384 e
TLS_CHACHA20_POLY1305_SHA256 . |
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ù elevata che supporta. Il server è obbligato a selezionare la versione del protocollo più alta supportata dal client e dal server e consentita dalla configurazione del server. Ad esempio, se un bilanciatore del carico è configurato con una versione TLS minima 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 ancora precedente che supporta solo TLS 1.1 non va a buon fine.
La tabella seguente elenca le funzionalità delle norme SSL disponibili per ciascun profilo preconfigurato. Tutte le funzionalità controllano se è possibile utilizzare determinate suite di crittografia e si applicano solo alle connessioni che utilizzano TLS versione 1.2 o precedente, non alle connessioni che utilizzano TLS 1.3.
Valore IANA | Funzionalità | Nel profilo COMPATIBILE | Nel profilo MODERNO | Nel profilo con limitazioni |
---|---|---|---|---|
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 profili COMPATIBILE, MODERNO e CON LIMITAZIONI, nonché le funzionalità configurabili in un profilo PERSONALIZZATO. Lo facciamo man mano che rimuoviamo il supporto per funzionalità SSL meno recenti e aggiungiamo il supporto per quelle più recenti.
Quando aggiungiamo funzionalità che migliorano le capacità SSL, potremmo attivarle immediatamente nei profili COMPATIBILE, MODERNO e LIMITATO, in modo che le norme 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à aggiuntive.
Limitazioni
La disattivazione di versioni o cifrari SSL specifici potrebbe impedire ad alcuni client meno recenti di connettersi al proxy utilizzando HTTPS o SSL. La disattivazione di una selezione sufficientemente ampia di cifrari 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 con entrambi i tipi di firme dei certificati. Un profilo personalizzato deve abilitare le cifrature compatibili con la firma digitale utilizzata dai certificati del bilanciatore del carico.
Le funzionalità che controllano le suite di crittografia si applicano solo alle connessioni client che utilizzano TLS versione 1.2 e precedenti. Non controllano la selezione delle cifrature nelle connessioni che utilizzano TLS 1.3.
Passaggi successivi
- Per creare, modificare o eliminare una policy SSL, consulta Utilizzo dei criteri SSL.
- Per configurare un certificato SSL, vedi Creazione e utilizzo di certificati SSL.