Delen via


Uitgaand verkeer beheren met Azure Firewall

In dit artikel leest u hoe u het uitgaande verkeer van uw App Service-app naar back-end-Azure-resources of andere netwerkbronnen met Azure Firewall kunt vergrendelen. Deze configuratie helpt bij het voorkomen van gegevensexfiltratie of het risico van schadelijke programma-implantatie.

Standaard kan een App Service-app uitgaande aanvragen indienen bij het openbare internet (bijvoorbeeld bij het installeren van vereiste Node.js pakketten van NPM.org.). Als uw app is geïntegreerd met een virtueel Azure-netwerk, kunt u het uitgaande verkeer tot op zekere hoogte beheren met netwerkbeveiligingsgroepen, zoals het doel-IP-adres, de poort en het protocol. Met Azure Firewall kunt u uitgaand verkeer op een veel gedetailleerder niveau beheren en verkeer filteren op basis van realtime bedreigingsinformatie van Microsoft Cyber Security. U kunt beleid voor toepassings- en netwerkconnectiviteit centraal maken, afdwingen en registreren voor abonnementen en virtuele netwerken (zie Azure Firewall-functies).

Zie Netwerkfuncties en Zero to Hero met App Service, deel 6: Uw web-app beveiligen, voor gedetailleerde netwerkconcepten en beveiligingsverbeteringen in App Service.

Vereisten

  • Regionale integratie van virtueel netwerk inschakelen voor uw app.
  • Controleer of Route All is ingeschakeld. Deze instelling is standaard ingeschakeld, waardoor App Service al het uitgaande verkeer via het geïntegreerde virtuele netwerk moet routeren. Als u dit uitschakelt, wordt alleen verkeer naar privé-IP-adressen doorgestuurd via het virtuele netwerk.
  • Als u ook toegang tot back-end Azure-services wilt routeren via Azure Firewall, schakelt u alle service-eindpunten in het App Service-subnet in het geïntegreerde virtuele netwerk uit. Nadat Azure Firewall is geconfigureerd, wordt uitgaand verkeer naar Azure Services gerouteerd via de firewall in plaats van de service-eindpunten.

1. Maak het vereiste firewallsubnet

Als u een firewall wilt implementeren in het geïntegreerde virtuele netwerk, hebt u een subnet met de naam AzureFirewallSubnet nodig.

  1. Navigeer in Azure Portal naar het virtuele netwerk dat is geïntegreerd met uw app.
  2. Selecteer Subnets>+ Subnet in het linkernavigatievenster.
  3. Typ AzureFirewallSubnet in Naam.
  4. Subnetadresbereik, accepteer de standaardinstelling of geef een bereik op dat ten minste /26 in grootte is.
  5. Selecteer Opslaan.

2. Implementeer de firewall en haal het IP-adres op

  1. Selecteer in het menu van Azure Portal of op de startpagina de optie Een resource maken.

  2. Typ firewall in het zoekvak en druk op Enter.

  3. Selecteer Firewall en vervolgens Maken.

  4. Configureer op de Een firewallpagina de firewall zoals weergegeven in de volgende tabel.

    Instelling Waarde
    Resourcegroep Dezelfde resourcegroep als het geïntegreerde virtuele netwerk.
    Naam Naam van uw keuze
    Regio Dezelfde regio als het geïntegreerde virtuele netwerk.
    Firewallbeleid Maak er een door Nieuwe toevoegen te selecteren.
    Virtueel netwerk Selecteer het geïntegreerde virtuele netwerk.
    Openbaar IP-adres Selecteer een bestaand adres of maak er een door nieuwe toevoegen te selecteren.

    Schermopname van het maken van een Azure Firewall in Azure Portal.

  5. Klik op Controleren + aanmaken.

  6. Selecteer Opnieuw maken .

    Het duurt enkele minuten voordat deze is geïmplementeerd.

  7. Nadat de implementatie is voltooid, gaat u naar uw resourcegroep en selecteert u de firewall.

  8. Kopieer op de overzichtspagina van de firewall het privé-IP-adres. Het privé-IP-adres wordt gebruikt als volgend hopadres in de routeringsregel voor het virtuele netwerk.

    Schermopname van het ophalen van een privé-IP-adres van Azure Firewall.

3. Alle verkeer naar de firewall routeren

Wanneer u een virtueel netwerk maakt, maakt Azure automatisch een standaardroutetabel voor elk van de subnetten en voegt systeemstandaardroutes toe aan de tabel. In deze stap maakt u een door de gebruiker gedefinieerde routetabel die al het verkeer naar de firewall routeert en deze vervolgens koppelt aan het App Service-subnet in het geïntegreerde virtuele netwerk.

  1. Selecteer in het menu van Azure Portal alle services of zoek alle services en selecteer alle services op een willekeurige pagina.

  2. Selecteer onder Netwerken de optie Routetabellen.

  3. Selecteer Toevoegen.

  4. Configureer de routetabel zoals in het volgende voorbeeld:

    Schermopname van het maken van een routeringsroutetabel in Azure Portal.

    Zorg ervoor dat u dezelfde regio selecteert als de firewall die u hebt gemaakt.

  5. Selecteer Controleren + maken.

  6. Selecteer Maken.

  7. Nadat de implementatie is voltooid, selecteert u Ga naar de resource.

  8. Selecteer routes>toevoegen in het linkernavigatievenster.

  9. Configureer de nieuwe route, zoals wordt weergegeven in de volgende tabel:

    Instelling Waarde
    Adresvoorvoegsel 0.0.0.0/0
    Volgend hoptype Virtueel apparaat
    Adres van de volgende hop Het privé-IP-adres voor de firewall die u in 2 hebt gekopieerd. Implementeer de firewall en haal het IP-adres op.
  10. Selecteer Subnetten>Koppelen in het linkernavigatievenster.

  11. Selecteer in het virtuele netwerk uw geïntegreerde virtuele netwerk.

  12. Selecteer in Subnet het App Service-subnet.

    Schermopname van het koppelen van de routetabel aan het App Service-subnet.

  13. Selecteer OK.

4. Firewallbeleid configureren

Uitgaand verkeer van uw app wordt nu doorgestuurd via het geïntegreerde virtuele netwerk naar de firewall. Als u uitgaand verkeer van App Service wilt beheren, voegt u een toepassingsregel toe aan het firewallbeleid.

  1. Navigeer naar de overzichtspagina van de firewall en selecteer het bijbehorende firewallbeleid.

  2. Selecteer op de pagina firewallbeleid in het linkernavigatievenster de optie Toepassingsregels>een regelverzameling toevoegen.

  3. Voeg in Regels een netwerkregel toe met het App Service-subnet als bronadres en geef een FQDN-bestemming op. In de onderstaande schermopname is de doel-FQDN ingesteld op contoso.com.

    Schermopname van het configureren van een Azure Firewall-beleidsregel.

    Notitie

    In plaats van het App Service-subnet op te geven als het bronadres, kunt u ook rechtstreeks het privé-IP-adres van de app in het subnet gebruiken. U vindt het privé-IP-adres van uw app in het subnet met behulp van de WEBSITE_PRIVATE_IP omgevingsvariabele.

  4. Selecteer Toevoegen.

5. Controleer het uitgaande verkeer

Een eenvoudige manier om uw configuratie te controleren, is door de opdracht van de curl SCM-foutopsporingsconsole van uw app te gebruiken om de uitgaande verbinding te controleren.

  1. Navigeer in een browser naar https://<app-name>.scm.azurewebsites.net/DebugConsole.

  2. Voer curl -s <protocol>://<fqdn-address> in de console een URL uit die overeenkomt met een toepassingsregel die u hebt geconfigureerd. De volgende schermopname is een voorbeeld van een website met een geslaagd antwoord van een API met een IP-adres.

    Schermopname van het controleren van het uitgaande verkeer met behulp van de curl-opdracht in de SCM-foutopsporingsconsole.

  3. Voer curl -s <protocol>://<fqdn-address> opnieuw uit met een URL die niet overeenkomt met de toepassingsregel die u hebt geconfigureerd. In de volgende schermopname krijgt u geen antwoord, wat aangeeft dat uw firewall de uitgaande aanvraag van de app heeft geblokkeerd.

    Schermopname van het verzenden van uitgaand verkeer met behulp van de curl-opdracht in de SCM-foutopsporingsconsole.

Tip

Omdat deze uitgaande aanvragen via de firewall gaan, kunt u deze vastleggen in de firewalllogboeken door diagnostische logboekregistratie voor de firewall in te schakelen (schakel de AzureFirewallApplicationRule in).

Als u de curl opdrachten uitvoert waarvoor diagnostische logboeken zijn ingeschakeld, kunt u deze vinden in de firewalllogboeken.

  1. Navigeer in Azure Portal naar uw firewall.

  2. Selecteer Logboeken in het linkernavigatievenster.

  3. Sluit het welkomstbericht door X te selecteren.

  4. In Alle Query's, selecteer Firewalllogboeken>Logboekgegevens van de toepassingsregel.

  5. Klik op Uitvoeren . U kunt deze twee toegangslogboeken zien in het queryresultaat.

    Schermopname van de SCM-console voor foutopsporing om het mislukte uitgaande verkeer te controleren met behulp van de curl-opdracht.

Meer middelen

Azure Firewall-logboeken en metrische gegevens bewaken.