Zelfstudie: Een toepassingsgateway met een Web Application Firewall maken met behulp van de Azure-portal

In deze zelfstudie wordt uitgelegd hoe u de Azure Portal gebruikt om een toepassingsgateway met een Web Application Firewall (WAF) te maken. De WAF gebruikt OWASP-regels om uw toepassing te beveiligen. Deze regels omvatten bescherming tegen aanvallen als SQL-injectie, XSS-aanvallen (cross-site scripting) en sessiekapingen. Nadat u de toepassingsgateway hebt gemaakt, test u deze om te controleren of deze correct werkt. Met Azure Application Gateway kunt u webverkeer van uw toepassing omleiden naar specifieke resources door listeners toe te wijzen aan poorten, regels te maken en resources toe te voegen aan een back-endpool. Voor het gemak maakt deze zelfstudie gebruik van een eenvoudige installatie met een openbaar front-end-IP-adres, een eenvoudige listener voor het hosten van één site op deze toepassingsgateway, twee virtuele Linux-machines die worden gebruikt voor de back-endpool en een eenvoudige regel voor het routeren van aanvragen.

In deze zelfstudie leert u het volgende:

  • Een toepassingsgateway maken met WAF ingeschakeld
  • De virtuele machines maken die als back-endservers worden gebruikt
  • Een opslagaccount maken en diagnostische gegevens configureren
  • De toepassingsgateway testen

Diagram van het voorbeeld van webtoepassingsfirewall.

Notitie

Het wordt aanbevolen de Azure Az PowerShell-module te gebruiken om te communiceren met Azure. Zie Azure PowerShell installeren om aan de slag te gaan. Raadpleeg Azure PowerShell migreren van AzureRM naar Az om te leren hoe u naar de Azure PowerShell-module migreert.

Vereisten

Als u nog geen abonnement op Azure hebt, maak dan een gratis account aan voordat u begint.

Aanmelden bij Azure

Meld u aan bij de Azure-portal.

Een toepassingsgateway maken

  1. Selecteer Een resource maken in het linkermenu van de Azure-portal. Het venster Nieuw wordt weergegeven.

  2. Selecteer Netwerken en vervolgens Application Gateway in de lijst Aanbevolen.

Tabblad Basisbeginselen

  1. Op het tabblad Basisinformatie voert u deze waarden in voor de volgende toepassingsgateway-instellingen:

    • Resourcegroep: Selecteer myResourceGroupAG als de resourcegroep. Als deze nog niet bestaat, selecteert u Nieuwe maken om deze te maken.

    • Naam toepassingsgateway: Typ myAppGateway als naam voor de toepassingsgateway.

    • Laag: selecteer WAF V2.

    • WAF-beleid: selecteer Nieuwe maken, typ een naam voor het nieuwe beleid en selecteer vervolgens OK. Hiermee maakt u een basis-WAF-beleid met een beheerde CRS (Core Rule Set).

      Schermopname van nieuwe toepassingsgateway maken: tabblad Basisbeginselen.

  2. Er is een virtueel netwerk nodig voor communicatie tussen de resources die u maakt. U kunt een nieuw virtueel netwerk maken of een bestaand gebruiken. In dit voorbeeld maakt u een virtueel netwerk op hetzelfde moment dat u de toepassingsgateway maakt. Instanties van toepassingsgateways worden in afzonderlijke subnetten gemaakt. In dit voorbeeld maakt u twee subnetten: één voor de toepassingsgateway en één voor de back-endservers.

    Selecteer onder Virtueel netwerk configurerende optie Nieuw maken om een nieuw virtueel netwerk te maken. Voer in het venster Virtueel netwerk maken dat wordt geopend, de volgende waarden in om het virtuele netwerk en twee subnetten te maken:

    • Naam: Typ myVnet als naam voor het virtuele netwerk.

    • Subnetnaam (subnet van toepassingsgateway): Het raster Subnetten geeft een subnet met de naam Standaard weer. Wijzig de naam van dit subnet in myAGSubnet.
      Het subnet van de toepassingsgateway kan alleen bestaan uit toepassingsgateways. Andere resources zijn niet toegestaan.

    • Subnetnaam (subnet van back-endserver): In de tweede rij van het raster Subnetten voert u in de kolom Subnetnaam, myBackendSubnet in.

    • Adresbereik (subnet van back-endserver): In de tweede rij van het raster Subnetten voert u een adresbereik in dat niet overlapt met het adresbereik van myAGSubnet. Als het adresbereik van myAGSubnet bijvoorbeeld 10.21.0.0/24 is, voert u 10.21.1.0/24 in voor het adresbereik van myBackendSubnet.

    Selecteer OK om het venster Virtueel netwerk maken te sluiten en de instellingen van het virtuele netwerk op te slaan.

    Schermopname van Nieuwe toepassingsgateway maken: Virtueel netwerk maken.

  3. Accepteer in het tabblad Basisinstellingen de standaardwaarden voor de overige instellingen en selecteer dan Volgende: Front-ends.

Tabblad Front-ends

  1. Controleer in het tabblad Frontends of Front-end-IP-adres is ingesteld op Openbaar.
    U kunt het IP-adres van de front-end configureren als openbaar of beide op basis van uw gebruiksscenario. In dit voorbeeld kiest u een openbaar front-end-IP.

    Notitie

    Voor de Application Gateway v2-SKU worden momenteel de typen openbare en beide front-end-IP-adressen ondersteund. Alleen privé-front-end-IP-configuratie wordt momenteel niet ondersteund.

  2. Kies Nieuwe toevoegen voor het openbare IP-adres en voer myAGPublicIPAddress in als naam van het openbare IP-adres en selecteer vervolgens OK.

    Schermopname van Nieuwe toepassingsgateway maken: Front-ends.

  3. Selecteer Volgende: Back-ends.

Tabblad Back-ends

De back-endpool word gebruikt om aanvragen te routeren naar de back-endservers die de aanvraag verwerken. Back-endpools kunnen bestaan uit NIC's, virtuele-machineschaalsets, openbare IP's, interne IP's, FQDN's (Fully Qualified Domain Name) en multitenant back-ends als Azure App Service. In dit voorbeeld maakt u een lege back-endpool met uw toepassingsgateway en voegt u later back-enddoelen toe aan de back-endpool.

  1. Selecteer op het tabblad Back-endsde optie Een back-endpool toevoegen.

  2. Voer in het venster Een back-endpool toevoegen dat wordt geopend, de volgende waarden in om een lege back-endpool te maken:

    • Naam: Voer myBackendPool in als naam van de back-endpool.
    • Een back-endpool zonder doelen toevoegen: Selecteer Ja om een back-endpool zonder doelen te maken. U voegt na het maken van de toepassingsgateway de back-enddoelen toe.
  3. Selecteer in het venster Een back-endpool maken de optie Toevoegen om de configuratie van de back-endpool op te slaan en terug te keren naar het tabblad Back-ends.

    Schermopname van Nieuwe toepassingsgateway maken: back-ends.

  4. Selecteer in het tabblad Back-ends de optie Volgende: Configuratie.

Tabblad Configuratie

In het tabblad Configuratie verbindt u de front-end- en de back-endpool die u hebt gemaakt met een regel voor doorsturen.

  1. Selecteer Een routeringsregel toevoegen in de kolom Routeringsregels .

  2. Voer in het venster Een regel voor doorsturen toevoegen dat wordt geopend, myRoutingRule in als de Regelnaam.

  3. Bij Prioriteit typt u een prioriteitsnummer.

  4. Voor een regel voor doorsturen is een listener vereist. Voer in het tabblad Listener in het venster Een regel voor doorsturen toevoegen de volgende waarden in voor de listener:

    • Naam van listener: Voer myListener in als naam van de listener.

    • IP van front-end: Selecteer Openbaar om het openbare IP te kiezen dat u voor de front-end hebt gemaakt.

      Accepteer de standaardwaarden voor de overige instellingen in het tabblad Listener en selecteer vervolgens het tabblad Back-enddoelen om de rest van de regel voor doorsturen te configureren.

    Schermopname van Nieuwe toepassingsgateway maken: listener.

  5. Selecteer in het tabblad Back-enddoelen de optie myBackendPool als het Back-enddoel.

  6. Selecteer voor back-endinstellingende optie Nieuwe toevoegen om een nieuwe back-endinstelling te maken. Deze instelling bepaalt het gedrag van de regel voor doorsturen. Voer in het venster Back-endinstelling toevoegen dat wordt geopend myBackendSetting in als naam voor back-endinstellingen. Accepteer de standaardwaarden voor de andere instellingen in het venster en selecteer vervolgens Toevoegen om terug te keren naar het venster Een regel voor doorsturen toevoegen .

    Schermopname van Nieuwe toepassingsgateway maken, back-endinstelling.

  7. Selecteer in het venster Een regel voor doorsturen toevoegen de optie Toevoegen om de routeringsregel op te slaan en terug te keren naar het tabblad Configuratie.

    Schermopname van Nieuwe toepassingsgateway maken: routeringsregel.

  8. Selecteer Volgende: Tags en vervolgens Volgende: Beoordelen en maken.

Tabblad Beoordelen en maken

Controleer de instellingen op het tabblad Beoordelen en maken en selecteer vervolgens Maken om het virtuele netwerk, het openbare IP-adres en de toepassingsgateway te maken. Het kan enkele minuten duren om de toepassingsgateway te maken in Azure.

Wacht totdat de implementatie is voltooid voordat u doorgaat met de volgende sectie.

Back-enddoelen toevoegen

In dit voorbeeld gebruikt u virtuele machines als het doelback-end. U kunt bestaande virtuele machines gebruiken of nieuwe maken. U maakt twee virtuele machines die in Azure worden gebruikt als back-endservers voor de toepassingsgateway.

Hiervoor moet u het volgende doen:

  1. Maak twee nieuwe Linux-VM's, myVM en myVM2, die als back-endservers moeten worden gebruikt.
  2. Installeer NGINX op de virtuele machines om te controleren of de toepassingsgateway is gemaakt.
  3. Voeg de back-endservers toe aan de back-endpool.

Een virtuele machine maken

  1. Selecteer Een resource maken in de Azure-portal. Het venster Een resource maken wordt weergegeven.

  2. Selecteer onder Virtuele machinede optie Maken.

  3. Voer deze waarden in op het tabblad Basisinformatie voor de volgende instellingen voor de virtuele machine:

    • Resourcegroep: Selecteer myResourceGroupAG als naam van de resourcegroep.
    • Naam van virtuele machine: Typ myVM als naam voor de virtuele machine.
    • Afbeelding: Ubuntu Server 20.04 LTS - Gen2.
    • Verificatietype: Wachtwoord
    • Gebruikersnaam: Voer een naam in voor de gebruikersnaam van de beheerder.
    • Wachtwoord: voer een wachtwoord in voor het beheerderswachtwoord.
    • Openbare binnenkomende poorten: selecteer Geen.
  4. Accepteer de overige standaardwaarden en klik op Volgende: Schijven.

  5. Accepteer de standaardwaarden op het tabblad Schijven en selecteer Volgende: Netwerken.

  6. Zorg ervoor dat, op het tabblad Netwerken, myVNet is geselecteerd bij Virtueel netwerk en dat Subnet is ingesteld op myBackendSubnet.

  7. Selecteer Geen voor Openbaar IP.

  8. Accepteer de overige standaardwaarden en klik op Volgende: Beheer.

  9. Selecteer Volgende: Bewaking en stel Diagnostische gegevens over opstarten in op Uitschakelen. Accepteer de overige standaardwaarden en selecteer Beoordelen en maken.

  10. Controleer de instellingen op het tabblad Beoordelen en maken, corrigeer eventuele validatiefouten en selecteer vervolgens Maken.

  11. Wacht tot de virtuele machine is gemaakt voordat u verder gaat.

NGINX installeren om te testen

In dit voorbeeld installeert u NGINX alleen op de virtuele machines om te controleren of Azure de toepassingsgateway heeft gemaakt.

  1. Open een Bash-Cloud Shell. Hiervoor selecteert u het pictogram Cloud Shell in de bovenste navigatiebalk van de Azure Portal en selecteert u vervolgens Bash in de vervolgkeuzelijst.

    Schermopname van de Bash-Cloud Shell.

  2. Voer de volgende opdracht uit om NGINX te installeren op de virtuele machine:

     az vm extension set \
     --publisher Microsoft.Azure.Extensions \
     --version 2.0 \
     --name CustomScript \
     --resource-group myResourceGroupAG \
     --vm-name myVM \
     --settings '{ "fileUris": ["https://raw.githubusercontent.com/Azure/azure-docs-powershell-samples/master/application-gateway/iis/install_nginx.sh"], "commandToExecute": "./install_nginx.sh" }'
    
  3. Maak een tweede virtuele machine en installeer NGINX met behulp van de stappen die u eerder hebt voltooid. Gebruik myVM2 voor de naam van de virtuele machine en voor de instelling --vm-name van de cmdlet.

Back-endservers toevoegen aan de back-endpool

  1. Selecteer Alle resources en vervolgens myAppGateway.

  2. Selecteer Back-endpools in het linkermenu.

  3. Selecteer myBackendPool.

  4. Selecteer onder Doeltypede optie Virtuele machine in de vervolgkeuzelijst.

  5. Selecteer onder Doel de gekoppelde netwerkinterface voor myVM in de vervolgkeuzelijst.

  6. Herhaal dit voor myVM2.

    Back-endservers toevoegen

  7. Selecteer Opslaan.

  8. Wacht tot de implementatie is voltooid voordat u doorgaat met de volgende stap.

De toepassingsgateway testen

Hoewel NGINX niet vereist is om de toepassingsgateway te maken, hebt u deze geïnstalleerd om te controleren of azure de toepassingsgateway heeft gemaakt. Gebruik de webservice om de toepassingsgateway te testen:

  1. Zoek op de pagina Overzicht het openbare IP-adres voor de toepassingsgateway. Schermopname van Application Gateway openbare IP-adres op de pagina Overzicht.

    U kunt ook Alle resources selecteren, myAGPublicIPAddress invoeren in het zoekvak en het openbare IP-adres vervolgens selecteren in de lijst met zoekresultaten. Het openbare IP-adres wordt weergegeven op de pagina Overzicht.

  2. Kopieer het openbare IP-adres en plak het in de adresbalk van de browser.

  3. Controleer het antwoord. Een geldig antwoord verifieert dat de toepassingsgateway is gemaakt en verbinding kan maken met de back-end.

    Schermopname van het testen van de toepassingsgateway.

Resources opschonen

Wanneer u de bij de toepassingsgateway gemaakte resources niet meer nodig hebt, verwijdert u de resourcegroep. Als u de resourcegroep verwijdert, worden ook de toepassingsgateway en alle gerelateerde resources verwijderd.

Ga als volgt te werk om de resourcegroep te verwijderen:

  1. Selecteer Resourcegroepen in het linkermenu van de Azure-portal.
  2. Zoek en selecteer myResourceGroupAG in de lijst op de pagina Resourcegroepen.
  3. Selecteer Resourcegroep verwijderen op de pagina van de resourcegroep.
  4. Voer myResourceGroupAG in bij TYP DE RESOURCEGROEPNAAM en selecteer vervolgens Verwijderen.

Volgende stappen