In diesem Dokument bezieht sich der Begriff SSL sowohl auf das SSL- (Secure Sockets Layer) als auch auf das TLS-Protokoll (Transport Layer Security).
SSL-Richtlinien geben die SSL-Features an, die Google Cloud-Load-Balancer beim Aushandeln von SSL mit Clients verwenden. Mit einer SSL-Richtlinie können Sie beispielsweise die Mindest-TLS-Version und die Funktionen definieren, die jeder Client unterstützen muss, um Traffic an Ihren Load Balancer senden zu können.
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
Standardmäßig verwenden diese Load-Balancer eine Reihe von SSL-Features, die eine hohe Sicherheit und umfassende Kompatibilität bieten. Einige Anwendungen erfordern mehr Kontrolle darüber, welche SSL-Versionen und -Chiffren für ihre HTTPS- oder SSL-Verbindungen verwendet werden. Sie können SSL-Richtlinien definieren, um die Gruppe von SSL-Features anzugeben, die der Load-Balancer beim Aushandeln von SSL mit Clients verwendet.
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 haben Auswirkungen auf Verbindungen zwischen Clients und dem Load-Balancer (Verbindung-1 in der Abbildung). SSL-Richtlinien haben keine Auswirkungen auf die Verbindungen zwischen dem Load Balancer und den Backends (Verbindung 2).
SSL-Richtlinie definieren
Geben Sie eine Mindestversion für TLS und ein Profil an, um eine SSL-Richtlinie zu definieren. Über das Profil werden eine Reihe von SSL-Funktionen ausgewählt, die im Lastenausgleichsmodul aktiviert werden sollen.
Mit drei vorkonfigurierten Google-Profilen können Sie festlegen, welche Kompatibilitätsstufe für Ihre Anwendung geeignet ist. Die drei vorkonfigurierten Profile sind:
- KOMPATIBEL: Ermöglicht der umfassendsten Gruppe von Clients, einschließlich Clients, die nur veraltete SSL-Features unterstützen, SSL mit dem Load-Balancer auszuhandeln.
- MODERN: Unterstützt eine breite Palette von SSL-Features, mit denen moderne Clients SSL aushandeln können.
- EINGESCHRÄNKT: Unterstützt eine reduzierte Anzahl von SSL-Features, die strengere Compliance-Anforderungen erfüllen sollen.
Ein viertes benutzerdefiniertes Profil (BENUTZERDEFINIERT) ermöglicht die Auswahl einzelner SSL-Features.
Die SSL-Richtlinie gibt außerdem die Mindestversion des TLS-Protokolls an, die Clients zum Herstellen einer Verbindung verwenden können.
Beachten Sie, dass ein Profil indirekt die TLS-Versionen einschränken kann, die der Load Balancer aushandeln kann. Zum Beispiel werden Chiffres, die im Profil EINGESCHRÄNKT aktiviert sind, nur von TLS 1.2 unterstützt. Wenn Sie das Profil EINGESCHRÄNKT auswählen, können Clients TLS 1.0 und 1.1 daher faktisch nicht verwenden, selbst wenn die TLS-Mindestversion der SSL-Richtlinie dies zulässt.
Wenn Sie keines der drei vorkonfigurierten Profile auswählen oder eine benutzerdefinierte SSL-Richtlinie erstellen, verwendet der Load Balancer die Standard-SSL-Richtlinie. Die Standard-SSL-Richtlinie entspricht einer SSL-Richtlinie, die das Profil KOMPATIBEL mit einer TLS-Mindestversion von TLS 1.0 verwendet.
Sie können eine SSL-Richtlinie an mehrere Zielproxies anhängen. Pro Zielproxy können Sie jedoch nicht mehr als eine SSL-Richtlinie konfigurieren. Änderungen an SSL-Richtlinien ändern oder unterbrechen keine vorhandenen Load Balancer-Verbindungen.
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.0, 1.1 oder 1.2 | Einstellungen in SSL-Richtlinien steuern die Chiffresammlungen, die für Clientverbindungen gelten. |
TLS 1.3 | Einstellungen in SSL-Richtlinien steuern die Auswahl der Chiffre nicht. TLS 1.3 unterstützt nur TLS_AES_128_GCM_SHA256 -, TLS_AES_256_GCM_SHA384 - und TLS_CHACHA20_POLY1305_SHA256 -Chiffren. |
QUIC | Einstellungen in SSL-Richtlinien steuern die Auswahl der Chiffre nicht. |
SSL 3.0 oder älter | Nicht zutreffend. Wird von Cloud Load Balancing nicht unterstützt |
Bei jedem TLS-Handshake gibt der Client die höchste TLS-Protokollversion an, die er unterstützt. Der Server muss die höchste Protokollversion auswählen, die vom Client und Server unterstützt und von der Serverkonfiguration zugelassen wird. Wenn ein Load Balancer beispielsweise mit einer TLS-Mindestversion von 1.2 konfiguriert ist, wählt ein Handshake mit einem modernen Client, der TLS 1.3 unterstützt, TLS 1.3 aus. Bei einem Handshake mit einem älteren Client, der nur TLS 1.2 unterstützt, wird TLS 1.2 verwendet. Ein Handshake mit einem noch älteren Client, der nur TLS 1.1 unterstützt, schlägt fehl.
In der folgenden Tabelle sind die verfügbaren SSL-Richtlinienfunktionen für jedes vorkonfigurierte Profil aufgeführt. Alle Features steuern, ob bestimmte Chiffresammlungen verwendet werden können, und gelten nur für Clientverbindungen, die TLS Version 1.2 oder früher verwenden, nicht für Clients, die QUIC verwenden.
IANA-Wert | Funktion | Im Profil KOMPATIBEL | Im Profil MODERN | Im Profil EINGESCHRÄNKT |
---|---|---|---|---|
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 | ♦ |
Featureaktualisierungen
Wir behalten uns das Recht vor, die in den Profilen KOMPATIBEL, MODERN und EINGESCHRÄNKT aktivierten Features und die in einem BENUTZERDEFINIERTEN Profil konfigurierbaren Features zu aktualisieren. Diese Aktualisierungen erfolgen, wenn wird die Unterstützung für ältere SSL-Funktionen entfernen und Unterstützung für neuere SSL-Funktionen hinzufügen.
Wenn wir Features zur Verbesserung der SSL-Funktionen hinzufügen, können wir diese sofort in den Profilen KOMPATIBEL, MODERN und EINGESCHRÄNKT aktivieren, sodass SSL-Richtlinien, die diese Profile auswählen, die neuen FEATURES verwenden können. Wenn Ihre Richtlinie jedoch das BENUTZERDEFINIERTE Profil auswählt, müssen Sie die Einstellungen der Richtlinie ändern, um die hinzugefügten Features 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 BENUTZERDEFINIERT deaktiviert 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 sollten Chiffres aktiviert werden, die mit der digitalen Signatur kompatibel sind, die von den Zertifikaten Ihres Load-Balancers verwendet wird.
Die Funktionen, die Chiffresammlungen steuern, gelten nur für Clientverbindungen, die TLS in der Version 1.2 und älter verwenden. Sie steuern nicht die Chiffreauswahl in Verbindungen, die QUIC oder TLS 1.3 verwenden.
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 erstellen und verwenden.