Application Gateway-Listenerkonfiguration

Hinweis

Es wird empfohlen, das Azure Az PowerShell-Modul für die Interaktion mit Azure zu verwenden. Informationen zu den ersten Schritten finden Sie unter Installieren des Azure Az PowerShell-Moduls. Informationen zum Migrieren zum Az PowerShell-Modul finden Sie unter Migrieren von Azure PowerShell von AzureRM zum Az-Modul.

Ein Listener ist eine logische Entität, die mithilfe von Port, Protokoll, Host und IP-Adresse auf eingehende Verbindungsanforderungen prüft. Wenn Sie den Listener konfigurieren, müssen Sie Werte für diese eingeben, die den entsprechenden Werten in der eingehenden Anforderung auf dem Gateway entsprechen.

Wenn Sie ein Application Gateway mithilfe des Azure-Portals erstellen, erstellen Sie außerdem einen Standardlistener durch Auswählen von Protokoll und Port für den Listener. Sie können wahlweise HTTP2-Unterstützung auf dem Listener aktivieren. Nach der Erstellung des Application Gateways können Sie die Einstellungen dieses Standardlisteners (appGatewayHttpListener) bearbeiten oder neue Listener erstellen.

Listenertyp

Wenn Sie einen neuen Listener erstellen, wählen Sie zwischen grundlegend und mehreren Standorten aus.

  • Wenn alle Ihre Anforderungen (für eine beliebige Domäne) akzeptiert und an Back-End-Pools weitergeleitet werden sollen, wählen Sie „Basic“ aus. Erfahren Sie, wie Sie ein Application Gateway mit einem grundlegenden Listener erstellen.

  • Wenn Sie Anforderungen an verschiedene Back-End-Pools basierend auf dem Hostheader oder den Hostnamen weiterleiten möchten, wählen Sie den Listener für mehrere Standorte aus. Application Gateway verwendet HTTP 1.1-Hostheader, um mehrere Websites an der gleichen öffentlichen IP-Adresse und dem gleichen Port zu hosten. Um Anforderungen für denselben Port zu unterscheiden, müssen Sie einen Hostnamen angeben, der mit der eingehenden Anforderung übereinstimmt. Weitere Informationen finden Sie unter Anwendungsgateways – Hosten mehrerer Websites.

Verarbeitungsreihenfolge von Listenern

Bei der v1-SKU werden Anforderungen entsprechend der Reihenfolge der Regeln und des Listenertyps abgeglichen. Wenn eine Regel mit dem Basislistener in der Reihenfolge an erster Stelle steht, wird sie zuerst verarbeitet und akzeptiert alle Anforderungen für diese Port- und IP-Kombination. Um dies zu vermeiden, konfigurieren Sie die Regeln zuerst mit Listenern für mehrere Standorte, und verschieben Sie die Regel mit dem Basislistener an die letzte Stelle in der Liste.

Für die v2-SKU werden Listener für mehrere Standorte vor grundlegenden Listenern verarbeitet. Wenn Sie die Regelpriorität verwenden, müssen Listener mit Platzhaltern mit einer höheren Priorität als Listener ohne Platzhalter definiert werden, um sicherzustellen, dass Listener ohne Platzhalter vor den Listenern mit Platzhaltern ausgeführt werden.

Frontend IP address (Front-End-IP-Adresse)

Wählen Sie die Front-End-IP-Adresse aus, die Sie diesem Listener zuordnen möchten. Der Listener lauscht auf eingehende Anforderungen für diese IP-Adresse.

Hinweis

Das Application Gateway-Front-End unterstützt Dual-Stack-IP-Adressen. Sie können bis zu vier Front-End-IP-Adressen erstellen: zwei IPv4-Adressen (öffentlich und privat) und zwei IPv6-Adressen (öffentlich und privat).

Front-End-Port

Ordnen Sie einen Front-End-Port zu. Sie können einen vorhandenen Port auswählen oder einen neuen erstellen. Wählen Sie einen beliebigen Wert aus dem zulässigen Portbereich aus. Sie können nicht nur die bekannten Ports wie 80 und 443 verwenden, sondern jeden geeigneten zulässigen benutzerdefinierten Port. Derselbe Port kann für öffentliche und private Listener verwendet werden.

Hinweis

Wenn Sie private und öffentliche Listener mit demselben Port verwenden, ändert das Anwendungsgateway das Ziel des eingehenden Flows in die Front-End-IP-Adressen Ihres Gateways. Je nach Konfiguration Ihrer Netzwerksicherheitsgruppe benötigen Sie daher möglicherweise eine eingehende Regel mit Ziel-IP-Adressen als öffentliche und private Front-End-IP-Adressen Ihres Anwendungsgateways.

Eingehende Regel:

  • Quelle: (gemäß Ihren Anforderungen)
  • Ziel-IP-Adressen: öffentliche und private Front-End-IP-Adressen Ihres Anwendungsgateways.
  • Zielport: (gemäß Listenerkonfiguration)
  • Protokoll: TCP

Ausgangsregel: (keine spezifische Anforderung)

Protokoll

Wählen Sie HTTP oder HTTPS aus:

  • Wenn Sie sich für HTTP entscheiden, ist der Datenverkehr zwischen dem Client und dem Application Gateway unverschlüsselt.

  • Wählen Sie HTTPS aus, wenn Sie die TLS-Beendigung oder End-to-End-TLS-Verschlüsselung verwenden möchten. Der Datenverkehr zwischen dem Client und dem Anwendungsgateway wird verschlüsselt, und die TSL-Verbindung endet am Anwendungsgateway. Wenn Sie End-to-End-TLS-Verschlüsselung für das Back-End-Ziel wünschen, müssen Sie HTTPS auch in der Back-End-HTTP-Einstellung auswählen. Dadurch wird sichergestellt, dass der Datenverkehr verschlüsselt wird, wenn das Anwendungsgateway eine Verbindung mit dem Back-End-Ziel initiiert.

Zum Konfigurieren der TLS-Terminierung muss dem Listener ein TLS/SSL-Zertifikat hinzugefügt werden. Dadurch kann der Application Gateway eingehenden Datenverkehr entschlüsseln und den Antwortdatenverkehr an den Client verschlüsseln. Das Zertifikat für die Application Gateway muss im PFX-Format (Personal Information Exchange) vorliegen, das sowohl die privaten als auch die öffentlichen Schlüssel enthält.

Hinweis

Wenn Sie ein TLS-Zertifikat aus Key Vault für einen Listener verwenden, müssen Sie sicherstellen, dass Ihr Application Gateway immer Zugriff auf diese verknüpfte Schlüsseltresorressource und das darin gespeicherte Zertifikatobjekt hat. Dies ermöglicht nahtlose Vorgänge der TLS-Terminierungsfunktion und erhält die allgemeine Integrität Ihrer Gatewayressource. Wenn eine Application Gateway-Ressource einen fehlerhaft konfigurierten Schlüsseltresor erkennt, versetzt sie die zugeordneten HTTPS-Listener automatisch in einen deaktivierten Zustand. Weitere Informationen

Unterstützte Zertifikate

Siehe Übersicht über TLS-Beendigung und End-to-End-TLS mit Application Gateway.

Unterstützung zusätzlicher Protokolle

HTTP2-Unterstützung

Die Unterstützung des HTTP/2-Protokolls ist nur für Clients verfügbar, die mit Application Gateway-Listenern verbunden sind. Die Kommunikation mit Back-End-Serverpools erfolgt immer über HTTP/1.1. Die HTTP/2-Unterstützung ist standardmäßig deaktiviert. Der folgende Azure PowerShell-Codeausschnitt zeigt, wie Sie sie aktivieren:

$gw = Get-AzApplicationGateway -Name test -ResourceGroupName hm

$gw.EnableHttp2 = $true

Set-AzApplicationGateway -ApplicationGateway $gw

Sie können die HTTP2-Unterstützung auch über das Azure-Portal aktivieren, indem Sie unter HTTP2 in „Anwendungsgateway und Konfiguration“ Aktiviert auswählen.

WebSocket-Unterstützung

Die WebSocket-Unterstützung ist standardmäßig aktiviert. Sie kann von Benutzern nicht aktiviert oder deaktiviert werden. Sie können das WebSocket-Protokoll sowohl mit HTTP- als auch mit HTTPS-Listenern verwenden.

Benutzerdefinierte Fehlerseiten

Sie können benutzerdefinierte Fehlerseiten für verschiedene Antwortcodes definieren, die vom Anwendungsgateway zurückgegeben werden. Die Antwortcodes, für die Sie Fehlerseiten konfigurieren können, sind 400, 403, 405, 408, 500, 502, 503 und 504. Sie können globale oder listenerspezifische Fehlerseitenkonfigurationen verwenden, um sie für jeden Listener präzise festzulegen. Weitere Informationen finden Sie unter Create Application Gateway custom error pages (Erstellen von benutzerdefinierten Application Gateway-Fehlerseiten).

Hinweis

Ein Fehler vom Back-End-Server wird vom Anwendungsgateway an den Client weitergegeben.

TLS-Richtlinie

Sie können die TLS/SSL-Zertifikatverwaltung zentralisieren sowie den Ver- und Entschlüsselungsaufwand für eine Back-End-Serverfarm verringern. Diese zentralisierte TLS-Behandlung ermöglicht auch die Angabe einer zentralen TLS-Richtlinie, die auf Ihre Sicherheitsanforderungen abgestimmt ist. Sie können zwischen einer vordefinierten oder benutzerdefinierten TLS-Richtlinie wählen.

Sie konfigurieren die TLS-Richtlinie, um die TLS-Protokollversionen zu steuern. Sie können eine Application Gateway-Instanz so konfigurieren, dass es eine Mindestprotokollversion für TLS-Handshakes von TLS 1.0, TLS 1.1, TLS 1.2 und TLS 1.3 verwendet. Standardmäßig sind SSL 2.0 und 3.0 deaktiviert und nicht konfigurierbar. Weitere Informationen finden Sie unter TLS-Richtlinienübersicht für Azure Application Gateway.

Nachdem Sie einen Listener erstellt haben, ordnen Sie ihm eine Anforderungsroutingregel zu. Diese Regel bestimmt, wie vom Listener empfangene Anforderungen an das Back-End weitergeleitet werden.

Nächste Schritte