Übersicht über den TCP/TLS-Proxy des Anwendungsgateways (Vorschau)
Zusätzlich zu den vorhandenen Ebene 7-Funktionen (HTTP, HTTPS, WebSockets und HTTP/2) unterstützt Azure Application Gateway jetzt auch Ebene 4 (TCP-Protokoll) und TLS (Transport Layer Security)-Proxying. Dieses Feature ist zurzeit als öffentliche Preview verfügbar. Informationen zur Vorschau dieser Funktion finden Sie unter Registrieren für die Vorschau.
TLS/TCP-Proxyfunktionen in Application Gateway
Als Reverseproxydienst funktionieren die Ebene 4-Vorgänge des Anwendungsgateways ähnlich wie ihre Ebene 7-Proxyvorgänge. Ein Client stellt eine TCP-Verbindung mit dem Anwendungsgateway her und das Anwendungsgateway selbst initiiert eine neue TCP-Verbindung mit einem Back-End-Server aus dem Back-End-Pool. Die folgende Abbildung zeigt einen typischen Vorgang.
Prozessablauf:
- Ein Client initiiert eine TCP- oder TLS-Verbindung mit dem Anwendungsgateway mithilfe der IP-Adresse und Portnummer des Front-End-Listeners. Dadurch wird die Front-End-Verbindung hergestellt. Sobald die Verbindung hergestellt wurde, sendet der Client eine Anforderung mithilfe des erforderlichen Anwendungsschichtprotokolls.
- Das Anwendungsgateway stellt eine neue Verbindung mit einem der Back-End-Ziele aus dem zugeordneten Back-End-Pool (bilden die Back-End-Verbindung) her und sendet die Clientanforderung an diesen Back-End-Server.
- Die Antwort vom Back-End-Server wird vom Anwendungsgateway an den Client zurückgesendet.
- Die gleiche Front-End-TCP-Verbindung wird für nachfolgende Anforderungen vom Client verwendet, es sei denn, der TCP-Leerlauftimeout schließt diese Verbindung.
Vergleich von Azure Load Balancer mit Azure Application Gateway:
Produkt | type |
---|---|
Azure-Lastenausgleich | Ein Passthrough-Lastenausgleich, bei dem ein Client direkt eine Verbindung mit einem Back-End-Server herstellt, der über den Verteilungsalgorithmus des Lastenausgleichs ausgewählt wird. |
Azure Application Gateway | Beenden des Lastenausgleichs, bei dem ein Client direkt eine Verbindung mit Application Gateway und eine separate Verbindung mit einem Back-End-Server herstellt, der über den Verteilungsalgorithmus von Application Gateway ausgewählt wird. |
Features
- Verwenden Sie einen einzelnen Endpunkt (Frontend-IP), um HTTP- und Nicht-HTTP-Workloads zu bedienen. Ein und dasselbe Anwendungsgateway kann Ebene 7- und Ebene 4-Protokolle unterstützen: HTTP(S), TCP oder TLS. Alle Ihre Clients können eine Verbindung mit demselben Endpunkt herstellen und auf verschiedene Back-End-Anwendungen zugreifen.
- Verwenden Sie eine benutzerdefinierte Domäne für jeden Back-End-Dienst. Mit dem Frontend für Anwendungsgateway V2 SKU als öffentliche und private IP-Adressen können Sie jeden benutzerdefinierten Domänennamen so konfigurieren, dass er über einen Adresseintrag (A) auf seine IP-Adresse verweist. Darüber hinaus können Sie mit TLS-Abschluss und Support für Zertifikate von einer privaten Zertifizierungsstelle (ZS) eine sichere Verbindung in der Domäne Ihrer Wahl sicherstellen.
- Verwenden Sie einen Back-End-Server von einem beliebigen Speicherort (Azure oder lokal). Die Back-Ends für das Anwendungsgateway können sein:
- Azure-Ressourcen wie virtuelle IaaS-Computer, Skalierungssätze für VM oder PaaS (App Services, Event Hubs, SQL)
- Remoteressourcen wie lokale Server, auf die über FQDN oder IP-Adressen zugegriffen werden kann
- Wird für ein nur privates Gateway unterstützt. Mit der Unterstützung von TLS und TCP-Proxy für private Anwendungsgateway-Bereitstellungen können Sie HTTP- und Nicht-HTTP-Clients in einer isolierten Umgebung unterstützen und so die Sicherheit erhöhen.
Begrenzungen
- Ein WAF v2-SKU-Gateway ermöglicht die Erstellung von TLS- oder TCP-Listenern und Back-Ends, um HTTP- und nicht-HTTP-Datenverkehr über dieselbe Ressource zu unterstützen. Es prüft jedoch keinen Datenverkehr auf TLS- und TCP-Listenern auf Exploits und Sicherheitsrisiken.
- Der Standardwert für die Abfluss-Zeitüberschreitung für Backend-Server ist 30 Sekunden. Zurzeit wird ein benutzerdefinierter Abflusswert nicht unterstützt.
- Die Client-IP-Beibehaltung wird derzeit nicht unterstützt.
- Der Application Gateway Ingress Controller (AGIC) wird nicht unterstützt und funktioniert nur mit L7-Proxy über HTTP(S)-Listener.