SSL-Richtlinien für SSL- und TLS-Protokolle

SSL-Richtlinien geben die SSL-Features an, die Google Cloud-Load-Balancer beim Aushandeln von SSL mit Clients verwenden. In diesem Dokument bezieht sich der Begriff SSL sowohl auf das SSL- als auch auf das TLS-Protokoll.

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.

Clientverbindungen in externen Application Load Balancern oder externen Proxy-Network Load Balancern.
Clientverbindungen in externen Application Load Balancern oder externen Proxy-Network Load Balancern (zum Vergrößern anklicken).

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. Ein Profil kann auch die Versionen von TLS einschränken, die das Lastenausgleichsmodul 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, müssen Clients unabhängig von der gewählten Mindestversion für TLS tatsächlich TLS 1.2 verwenden.

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 unterstützte TLS-Protokollversion an. Der Server ist erforderlich, um die höchste Protokollversion auszuwä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. Ein Handshake mit einem früheren Client, der nur TLS 1.2 unterstützt, verwendet TLS 1.2. Ein Handshake mit einem noch früheren 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.

Wir kündigen im Voraus an, wenn wir die Möglichkeit zur Steuerung eines Features (durch erzwungene Aktivierung/Deaktivierung für alle Richtlinien) entfernen, es sei denn, das Entfernen der Steuerungsmöglichkeit ist aus Sicherheitsgründen erforderlich.

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