Share via


Steuern des ausgehenden Datenverkehrs mit benutzerdefinierten Routen

Hinweis

Dieses Feature wird nur für den Umgebungstyp der Workloadprofile unterstützt. Benutzerdefinierte Routen funktionieren nur mit einer internen Azure-Container-Apps-Umgebung.

In diesem Artikel wird gezeigt, wie Sie benutzerdefinierte Routen (USER Defined Routes, UDR) mit azure Firewall verwenden, um ausgehenden Datenverkehr von Ihren Container-Apps auf Back-End-Azure-Ressourcen oder andere Netzwerkressourcen zu sperren.

Azure erstellt eine Standardroutentabelle für Ihre virtuellen Netzwerke, die erstellt werden. Durch die Implementierung einer benutzerdefinierten Routentabelle können Sie steuern, wie Datenverkehr innerhalb Ihres virtuellen Netzwerks weitergeleitet wird. In diesem Leitfaden richten Sie UDR im virtuellen Container-Apps-Netzwerk ein, um ausgehenden Datenverkehr mit Azure Firewall einzuschränken.

Sie können auch ein NAT-Gateway oder andere Drittanbieter-Anwendung anstelle von Azure Firewall verwenden.

Weitere Informationen finden Sie im Konfigurieren von UDR mit Azure Firewall in Netzwerken in Azure-Container-Apps .

Voraussetzungen

  • Workloadprofile-Umgebung: Eine Workloadprofile-Umgebung, die in ein benutzerdefiniertes virtuelles Netzwerk integriert ist. Weitere Informationen finden Sie in der Anleitung zum Erstellen einer Container-App-Umgebung in der Workloadprofile-Umgebung.

  • curl Unterstützung: Ihre Container-App muss über einen Container verfügen, der Befehle unterstützt curl . In dieser Vorgehensweise verwenden curl Sie, um zu überprüfen, ob die Container-App ordnungsgemäß bereitgestellt wird. Wenn Sie keine Container-App mit curl bereitgestellter App haben, können Sie den folgenden Container curlbereitstellen, der , . mcr.microsoft.com/k8se/quickstart:latest

Erstellen des Firewallsubnetzes

Ein Subnetz namens AzureFirewallSubnet ist erforderlich, um eine Firewall im integrierten virtuellen Netzwerk bereitzustellen.

  1. Öffnen Sie das virtuelle Netzwerk, das in Ihre App integriert ist, in der Azure-Portal.

  2. Wählen Sie im Menü auf der linken Seite Subnetze und dann +Subnetz aus.

  3. Geben Sie die folgenden Werte ein:

    Einstellung Aktion
    Name Geben Sie AzureFirewallSubnet ein.
    Subnetzadressbereich Verwenden Sie den Standardwert, oder geben Sie einen Subnetzbereich /26 oder höher an.
  4. Wählen Sie Speichern aus.

Bereitstellen der Firewall

  1. Wählen Sie im Menü des Azure-Portals oder auf der Startseite die Option Ressource erstellen aus.

  2. Suchen Sie nach Firewall.

  3. Wählen Sie Firewall aus.

  4. Klicken Sie auf Erstellen.

  5. Konfigurieren Sie auf der Seite "Firewall erstellen" die Firewall mit den folgenden Einstellungen.

    Einstellung Aktion
    Ressourcengruppe Geben Sie dieselbe Ressourcengruppe wie das integrierte virtuelle Netzwerk ein.
    Name Geben Sie einen Namen Ihrer Wahl ein.
    Region Wählen Sie dieselbe Region wie das integrierte virtuelle Netzwerk aus.
    Firewallrichtlinie Erstellen Sie eine, indem Sie Neu hinzufügen auswählen.
    Virtuelles Netzwerk Wählen Sie das integrierte virtuelle Netzwerk aus.
    Öffentliche IP-Adresse Wählen Sie eine vorhandene Adresse aus, oder erstellen Sie eine, indem Sie Neu hinzufügen auswählen.
  6. Klicken Sie auf Überprüfen + erstellen. Wählen Sie Erstellen aus, wenn die Validierung erfolgreich war. Der Überprüfungsschritt kann einige Minuten dauern.

  7. Nachdem die Bereitstellung abgeschlossen ist, wählen Sie "Gehe zu Ressource" aus.

  8. Kopieren Sie auf der Seite "Übersicht" der Firewall die private IP-Adresse der Firewall. Diese IP-Adresse wird beim Erstellen der Routingregel für das virtuelle Netzwerk als nächste Hopadresse verwendet.

Weiterleiten des gesamten Datenverkehrs an die Firewall

Ihre virtuellen Netzwerke in Azure verfügen über Standardroutentabellen, wenn Sie das Netzwerk erstellen. Durch die Implementierung einer benutzerdefinierten Routentabelle können Sie steuern, wie Datenverkehr innerhalb Ihres virtuellen Netzwerks weitergeleitet wird. In den folgenden Schritten erstellen Sie einen UDR, um den gesamten Datenverkehr an Ihre Azure Firewall weiterzuleiten.

  1. Wählen Sie im Menü des Azure-Portals oder auf der Startseite die Option Ressource erstellen aus.

  2. Suchen Sie nach Routentabellen.

  3. Wählen Sie "Routentabellen" aus.

  4. Klicken Sie auf Erstellen.

  5. Geben Sie die folgenden Werte ein:

    Einstellung Aktion
    Region Wählen Sie die Region als virtuelles Netzwerk aus.
    Name Geben Sie einen Namen ein.
    Verteilen von Gatewayrouten Wählen Sie Nein aus.
  6. Klicken Sie auf Überprüfen + erstellen. Wählen Sie Erstellen aus, wenn die Validierung erfolgreich war.

  7. Nachdem die Bereitstellung abgeschlossen ist, wählen Sie "Gehe zu Ressource" aus.

  8. Wählen Sie im Menü auf der linken Seite "Routen" und dann " Hinzufügen" aus, um eine neue Routentabelle zu erstellen.

  9. Konfigurieren Sie die Routentabelle mit den folgenden Einstellungen:

    Einstellung Aktion
    Adresspräfix Geben Sie 0.0.0.0/0 ein.
    Typ des nächsten Hops Wählen Sie Virtuelles Gerät aus.
    Adresse des nächsten Hops Geben Sie die private Firewall-IP ein, die Sie in "Bereitstellen der Firewall" gespeichert haben.
  10. Klicken Sie auf Hinzufügen, um die Route zu erstellen.

  11. Wählen Sie im Menü auf der linken Seite Subnetze aus, und wählen Sie dann "Zuordnen" aus, um Die Routentabelle dem Subnetz der Container-App zuzuordnen.

  12. Konfigurieren Sie das Subnetz "Subnetz zuordnen" mit den folgenden Werten:

    Einstellung Aktion
    Virtuelles Netzwerk Wählen Sie das virtuelle Netzwerk für Ihre Container-App aus.
    Subnetz Wählen Sie das Subnetz ihrer Container-App aus.
  13. Klickan Sie auf OK.

Konfigurieren von Firewallrichtlinien

Hinweis

Wenn Sie UDR mit Azure Firewall in Azure-Container-Apps verwenden, müssen Sie der Zulassungsliste für die Firewall bestimmte FQDN- und Diensttags hinzufügen. Bitte lesen Sie die Konfiguration von UDR mit der Azure-Firewall , um zu bestimmen, welche Diensttags Sie benötigen.

Jetzt wird der gesamte ausgehende Datenverkehr aus Ihrer Container-App an die Firewall weitergeleitet. Derzeit lässt die Firewall weiterhin den gesamten ausgehenden Datenverkehr durch. Um den zulässigen oder verweigerten ausgehenden Datenverkehr zu verwalten, müssen Sie Firewallrichtlinien konfigurieren.

  1. Wählen Sie in Ihrer Azure Firewall-Ressource auf der Seite "Übersicht" die Option "Firewallrichtlinie" aus.

  2. Wählen Sie im Menü auf der linken Seite der Firewallrichtlinie die Option "Anwendungsregeln" aus.

  3. Wählen Sie Regelsammlung hinzufügen aus.

  4. Geben Sie die folgenden Werte für die Regelsammlung ein:

    Einstellung Aktion
    Name Geben Sie einen Sammlungsnamen ein.
    Regelsammlungstyp Anwendung auswählen
    Priorität Geben Sie die Priorität ein, z. B. 110
    Regelsammlungsaktion Wählen Sie Zulassen aus.
    Regelsammlungsgruppe DefaultApplicationRuleCollectionGroup auswählen
  5. Geben Sie unter "Regeln" die folgenden Werte ein:

    Einstellung Aktion
    Name Geben Sie einen Namen für die Regel ein.
    Quellentyp IP-Adresse auswählen
    Quelle Geben Sie * ein.
    Protokoll Http:80,https:443 eingeben
    Zieltyp Wählen Sie FQDN aus.
    Ziel Geben Sie mcr.microsoft.comdie Eingabetaste ein*.data.mcr.microsoft.com. Wenn Sie ACR verwenden, fügen Sie Ihre ACR-Adresse und ihre ACR-Adresse hinzu *.blob.core.windows.net.
    Aktion Wählen Sie Zulassen aus.

    Hinweis

    Wenn Sie die Docker Hub-Registrierung verwenden und über Ihre Firewall darauf zugreifen möchten, müssen Sie der Regelzielliste die folgenden FQDNs hinzufügen: hub.docker.com, registry-1.docker.io und production.cloudflare.docker.com.

  6. Wählen Sie Hinzufügen aus.

Überprüfen, ob Ihre Firewall ausgehenden Datenverkehr blockiert

Um zu überprüfen, ob die Firewallkonfiguration ordnungsgemäß eingerichtet ist, können Sie den Befehl über die curl Debugkonsole Ihrer App verwenden.

  1. Navigieren Sie zu Ihrer Container-App, die mit azure Firewall konfiguriert ist.

  2. Wählen Sie im Menü auf der linken Seite "Konsole" und dann Ihren Container aus, der den curl Befehl unterstützt.

  3. Wählen Sie im Menü "Startbefehl auswählen" /bin/sh aus, und wählen Sie Verbinden aus.

  4. Führen Sie in der Konsole aus curl -s https://mcr.microsoft.com. Beim Hinzufügen zur Zulassungsliste für Ihre Firewallrichtlinien sollte eine erfolgreiche Antwort angezeigt mcr.microsoft.com werden.

  5. Führen Sie curl -s https://<FQDN_ADDRESS> eine URL aus, die keiner Ihrer Zielregeln entspricht, z example.com. B. . Der Beispielbefehl wäre curl -s https://example.com. Sie sollten keine Antwort erhalten, was angibt, dass Ihre Firewall die Anforderung blockiert hat.

Nächste Schritte