In diesem Dokument bezieht sich der Begriff SSL sowohl auf das Secure Sockets Layer-Protokoll (SSL) als auch auf das Transport Layer Security-Protokoll (TLS). Die Informationen in diesem Dokument beziehen sich auf TLS-Verbindungen über das TCP-Transportprotokoll, für die eine beliebige unterstützte Version von TLS verwendet werden kann. Bei Load-Balancern, die HTTP/3 verwenden, ist das zugrunde liegende Transportprotokoll QUIC, das ausschließlich TLS 1.3 verwendet.
SSL-Richtlinien sind Google Cloud Konfigurationsobjekte, mit denen Sie steuern können, wie Load-Balancer Client-TLS-Verbindungen beenden. Eine SSL-Richtlinie ist einem Ziel-HTTPS-Proxy oder Ziel-SSL-Proxy zugeordnet. In einer SSL-Richtlinie werden ein Profil von TLS-Funktionen und eine TLS-Mindestversion angegeben.
Jedes vordefinierte Profil einer SSL-Richtlinie gibt eine Reihe von TLS-Funktionen an, die der Load-Balancer unterstützen soll. Die TLS-Mindestversion schränkt den Load Balancer weiter ein, sodass nur bestimmte TLS-Versionen verwendet werden. Wenn Sie die Unterstützung für bestimmte Cipher-Suites angeben müssen, die von TLS 1.2 und älter verwendet werden, können Sie das mit einem benutzerdefinierten Profil tun. Jeder SSL-Richtlinie ist ein Bereich zugeordnet, entweder global oder regional, je nach Load Balancer.
Die folgenden Load-Balancer unterstützen globale SSL-Richtlinien:
- Globaler externer Application Load Balancer
- Klassischer Application Load Balancer
- Regionsübergreifender interner Application Load Balancer
- Globaler externer Proxy-Network Load Balancer
- Klassischer Proxy-Network Load Balancer
Die folgenden Load-Balancer unterstützen regionale SSL-Richtlinien:
- Regionaler externer Application Load Balancer
- Regionaler interner Application Load Balancer
Die Zuordnung einer SSL-Richtlinie zu einem Ziel-HTTPS-Proxy oder Ziel-SSL-Proxy ist optional. Jedem HTTPS-Zielproxy oder SSL-Zielproxy kann höchstens eine SSL-Richtlinie zugeordnet werden. Sie können dieselbe SSL-Richtlinie mehreren Ziel-HTTPS-Proxys oder mehreren Ziel-SSL-Proxys zuordnen, sofern die SSL-Richtlinie und der Zielproxy identische Bereiche verwenden. Änderungen an SSL-Richtlinien ändern oder unterbrechen keine vorhandenen Load Balancer-Verbindungen.
Das folgende Beispiel zeigt, wie Verbindungen von Clients zu einem Load-Balancer hergestellt und beendet werden.
Sie können eine SSL-Richtlinie verwenden, um die Mindest-TLS-Version und die SSL-Features zu konfigurieren, die im Load-Balancer aktiviert sind. SSL-Richtlinien wirken sich auf Verbindungen zwischen Clients und dem Load-Balancer aus (Verbindung 1 in der Abbildung). SSL-Richtlinien haben keine Auswirkungen auf die Verbindungen zwischen dem Load Balancer und den Backends (Verbindung 2 in der Abbildung).
SSL-Richtlinie erstellen
Wenn Sie eine SSL-Richtlinie erstellen, geben Sie die folgenden Informationen an:
- ein Profil, das eine Reihe von TLS-Funktionen angibt, die der Load Balancer unterstützen soll, und
- Eine Mindest-TLS-Version, die den Load Balancer weiter einschränkt, sodass nur bestimmte Versionen von TLS verwendet werden.
Wenn Clients eine Verbindung zum Load-Balancer herstellen, geben sie die TLS-Protokollversionen, Cipher-Suites und anderen TLS-Funktionen an, die sie unterstützen. Während des TLS-Handshake wählt der Load Balancer die neueste TLS-Protokollversion aus, die sowohl er als auch der Client unterstützen, und wählt auch andere TLS-Parameter (einschließlich einer Cipher Suite) für die Verbindung aus. Der TLS-Handshake schlägt fehl, wenn der Load-Balancer und der Client keine sich überschneidenden TLS-Versionen, Cipher Suites und anderen Funktionen unterstützen.
Vordefinierte Profile
Google Cloud bietet die folgenden vordefinierten Profile.
COMPATIBLE: Unterstützt die meisten Clients, einschließlich Clients, die nur frühere TLS-Versionen und TLS-Funktionen verwenden können.MODERN: Unterstützt eine Vielzahl von TLS-Chiffren, mit denen moderne Clients TLS aushandeln können.RESTRICTED: Unterstützt einen reduzierten Satz von TLS-Chiffren. Das ProfilRESTRICTEDsoll strengere Compliance-Anforderungen erfüllen.FIPS_202205: Unterstützt eine Reihe von TLS-Funktionen, die FIPS 140-3-konform sein sollen.
Benutzerdefiniertes Profil
Die Profile COMPATIBLE, MODERN und RESTRICTED unterscheiden sich in den unterstützten Cipher Suites, wenn der Load Balancer TLS 1.2 und frühere Versionen aushandelt. Die Unterschiede sind in der Tabelle im Abschnitt Cipher Suites für TLS 1.2 und früher aufgeführt.
Sie können auch ein CUSTOM-Profil erstellen und die vom Load Balancer für TLS 1.2 und früher unterstützten Cipher Suites einzeln angeben. Dies hat keine Auswirkungen darauf, wie der Load-Balancer TLS 1.3 aushandelt.
Verhalten, wenn keine SSL-Richtlinie angegeben ist
Wenn Sie einem Ziel-HTTPS-Proxy oder Ziel-SSL-Proxy keine SSL-Richtlinie zuordnen, verhält sich der Load-Balancer so, als hätten Sie eine SSL-Richtlinie mit den folgenden Einstellungen zugeordnet:
- das Profil
COMPATIBLEausgewählt ist und - Die TLS-Mindestversion ist auf 1.0 festgelegt.
Unterstützung von TLS-Versionen
Ein Profil kann auch indirekt die Versionen von TLS einschränken, die der Load-Balancer aushandeln kann. Die im Profil RESTRICTED aktivierten Chiffresammlungen enthalten beispielsweise keine Chiffresammlungen, die von TLS 1.0 oder 1.1 unterstützt werden. Wenn Sie das Profil RESTRICTED auswählen, können Clients TLS 1.0 und 1.1 daher faktisch nicht verwenden, selbst wenn die TLS-Mindestversion der SSL-Richtlinie auf 1.0 oder 1.1 festgelegt ist.
Cloud Load Balancing unterstützt nicht die SSL-Version 3.0 oder früher. In der folgenden Tabelle werden die unterstützten Features für jede TLS/SSL-Version aufgelistet.
| TLS/SSL-Version | Funktionsunterstützung |
|---|---|
| TLS 1.3 |
Alle Profile außer dem Profil
Das Profil
|
| TLS 1.2 und früher | Das von der SSL-Richtlinie verwendete Profil steuert, welche Chiffresammlungen mit TLS 1.2 und älter verwendet werden. |
| SSL 3.0 oder älter | Wird nicht von Load-Balancern unterstützt, die SSL-Richtlinien verwenden. |
Cipher Suites für TLS 1.2 und früher
In der folgenden Tabelle sind die Chiffrierverfahren für TLS 1.2 und früher aufgeführt, die in den einzelnen vordefinierten Profilen enthalten sind. Wenn Sie eine SSL-Richtlinie mit dem Profil CUSTOM erstellen, können Sie diese Chiffresammlungen einzeln auswählen. SSL-Richtlinien, die das Profil CUSTOM verwenden, müssen mindestens eine Cipher Suite aus der folgenden Liste enthalten.
| IANA-Wert | Funktion | 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 |
FIPS_202205-Profildetails
Das Profil FIPS_202205 beschränkt den Load Balancer auf die Verwendung einer Reihe von TLS-Funktionen, die mit dem FIPS 140-3-Standard kompatibel sein sollen.
Wenn in einer SSL-Richtlinie dieses Profil verwendet wird, unterstützt der Load-Balancer TLS 1.2 oder 1.3 mit den folgenden Einschränkungen:
Wenn die TLS-Verbindung TLS 1.2 verwendet, sind nur die folgenden Chiffresammlungen zulässig:
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
Wenn die TLS-Verbindung TLS 1.3 verwendet, sind nur die folgenden Cipher Suites zulässig:
TLS_AES_128_GCM_SHA256TLS_AES_256_GCM_SHA384
Für die Schlüsselvereinbarung sind nur
P-256oderP-384zulässig.Es sind nur die folgenden digitalen Signaturen für Load-Balancer-Zertifikate zulässig:
- PKCS#1/PSS mit
SHA-256,SHA-384oderSHA-512 - ECDSA mit
P-256oderP-384undSHA-256oderSHA-384
- PKCS#1/PSS mit
Featureaktualisierungen
Wir behalten uns das Recht vor, die in den Profilen COMPATIBLE, MODERN und RESTRICTED aktivierten Funktionen und die in einem CUSTOM-Profil konfigurierbaren Funktionen zu aktualisieren. Diese Aktualisierungen erfolgen, wenn wir die Unterstützung für ältere TLS-Funktionen entfernen und Unterstützung für neuere TLS-Funktionen hinzufügen.
Wenn wir Features zur Verbesserung der TLS-Funktionen hinzufügen, können wir diese sofort in den Profilen COMPATIBLE, MODERN und RESTRICTED aktivieren, sodass SSL-Richtlinien, die diese Profile auswählen, die hinzugefügten Features verwenden können. Wenn Ihre Richtlinie jedoch das Profil CUSTOM auswählt, müssen Sie die Einstellungen der Richtlinie ändern, um die hinzugefügten Funktionen zu verwenden.
Beschränkungen
Das Deaktivieren bestimmter SSL-Versionen oder -Chiffres kann dazu führen, dass einige ältere Clients keine Verbindung über HTTPS oder SSL zu Ihrem Proxy herstellen können. Wenn zu viele Chiffres im Profil
CUSTOMdeaktiviert werden, kann möglicherweise kein Client eine HTTPS-Verbindung aushandeln.Ein SSL-Zertifikat, das Ihrem Load-Balancer zugeordnet ist, verwendet entweder eine digitale ECDSA- oder RSA-Signatur. Die vordefinierten Profile sind mit beiden Arten von Zertifikatsignaturen kompatibel. In einem benutzerdefinierten Profil müssen Chiffres aktiviert werden, die mit der digitalen Signatur kompatibel sind, die von den Zertifikaten Ihres Load-Balancers verwendet wird.
Nächste Schritte
- Informationen zum Erstellen, Ändern oder Löschen von SSL-Richtlinien finden Sie unter SSL-Richtlinien verwenden.
- Informationen zum Konfigurieren eines SSL-Zertifikats finden Sie unter SSL-Zertifikate – Übersicht.