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. Omwille van de eenvoud maakt deze zelfstudie gebruik van een eenvoudige installatie met een openbaar front-end-IP-adres, een basislistener voor het hosten van één site op deze toepassingsgateway, twee virtuele Linux-machines die worden gebruikt voor de back-endpool en een basisregel 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
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 geen Azure-abonnement hebt, maakt u een gratis account voordat u begint.
Aanmelden bij Azure
Meld u aan bij het Azure-portaal.
Een toepassingsgateway maken
Selecteer Een resource maken in het linkermenu van de Azure-portal. Het venster Een resource maken wordt weergegeven.
Selecteer Netwerken en selecteer vervolgens Application Gateway in de lijst populaire Azure-services .
Tabblad Basisbeginselen
Op het tabblad Basisinformatie voert u deze waarden in voor de volgende toepassingsgateway-instellingen:
Resourcegroep: Selecteer myResourceGroupAG voor de resourcegroep. Als deze nog niet bestaat, selecteert u Nieuwe maken om deze te maken.
Naam van toepassingsgateway: Voer myAppGateway in als naam van de toepassingsgateway.
Laag: selecteer WAF V2.
WAF-beleid: Selecteer Nieuw maken, typ een naam voor het nieuwe beleid en selecteer VERVOLGENS OK. Hiermee maakt u een basis WAF-beleid met een beheerde Core Rule Set (CRS).
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 tegelijkertijd een nieuw virtueel netwerk dat u de toepassingsgateway maakt. Instanties van toepassingsgateways worden in afzonderlijke subnetten gemaakt. In dit voorbeeld maakt u twee subnetten: een voor de toepassingsgateway en voegt later nog een toe voor de back-endservers.
Selecteer onder Virtueel netwerk configureren de optie Nieuwe 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 een subnet te maken:
Naam: Voer myVNet in als naam van het virtuele netwerk.
Adresruimte : Accepteer het adresbereik 10.0.0.0/16 .
Subnetnaam (Application Gateway-subnet): In het gebied Subnetten wordt een subnet met de naam Default weergegeven. Wijzig de naam van dit subnet in myAGSubnet en laat het standaard-IPv4-adresbereik 10.0.0.0/24 staan.
Het subnet van de toepassingsgateway kan alleen bestaan uit toepassingsgateways. Andere resources zijn niet toegestaan.Selecteer OK om het venster Virtueel netwerk maken te sluiten en de instellingen van het virtuele netwerk op te slaan.
Accepteer op het tabblad Basisbeginselen de standaardwaarden voor de andere instellingen en selecteer vervolgens Volgende: Front-ends.
Tabblad Front-ends
Controleer in het tabblad Frontends of Front-end-IP-adres is ingesteld op Openbaar.
U kunt het front-end-IP-adres zo configureren dat het openbaar of beide is op basis van uw gebruiksscenario. In dit voorbeeld kiest u een openbaar front-end-IP-adres.Notitie
Voor de Application Gateway v2-SKU worden openbare en beide front-end-IP-adrestypen momenteel ondersteund. Privé-front-end-IP-configuratie wordt momenteel niet ondersteund.
Kies Nieuw toevoegen voor het openbare IP-adres en voer myAGPublicIPAddress in voor de naam van het openbare IP-adres en selecteer VERVOLGENS OK.
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 Names) en multitenant back-ends zoals 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.
Selecteer Een back-endpool toevoegen op het tabblad Back-ends.
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 de naam van de back-endpool.
- Back-endpool zonder doelen toevoegen: Selecteer Ja als u een back-endpool zonder doelen wilt maken. U voegt na het maken van de toepassingsgateway de back-enddoelen toe.
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.
Selecteer volgende op het tabblad Back-ends: Configuratie.
Tabblad Configuratie
Op het tabblad Configuratie verbindt u de front-end- en back-endpool die u hebt gemaakt met behulp van een routeringsregel.
Selecteer Een routeringsregel toevoegen in de kolom Routeringsregels.
Voer in het venster Een regel voor doorsturen toevoegen dat wordt geopend, myRoutingRule in als de Regelnaam.
Bij Prioriteit typt u een prioriteitsnummer.
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.
Front-end-IP-protocol: selecteer Openbare IPv4 om het openbare IP-adres 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.
Selecteer in het tabblad Back-enddoelen de optie myBackendPool als het Back-enddoel.
Voor de back-endinstellingen selecteert u Nieuwe toevoegen om een nieuwe back-endinstelling te maken. Deze instelling bepaalt het gedrag van de routeringsregel. Voer in het venster Back-endinstellingen toevoegen dat wordt geopend myBackendSetting in voor de naam van de back-endinstellingen. Accepteer de standaardwaarden voor de andere instellingen in het venster en selecteer Vervolgens Toevoegen om terug te keren naar het venster Een routeringsregel toevoegen.
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.
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 voordat Azure de toepassingsgateway heeft gemaakt.
Wacht totdat de implementatie is voltooid voordat u doorgaat met de volgende sectie.
Het subnet van de back-endserver toevoegen
- Open het virtuele myVNet-netwerk.
- Selecteer onder Instellingen de optie Subnetten.
- Selecteer + Subnet.
- Bij Name typt u myBackendSubnet.
- Voor het beginadres typt u 10.0.1.0.
- Selecteer Toevoegen om het subnet toe te voegen.
Back-enddoelen toevoegen
In dit voorbeeld gebruikt u virtuele machines als doelback-end. U kunt bestaande virtuele machines gebruiken of nieuwe maken. U maakt twee virtuele machines die Azure gebruikt als back-endservers voor de toepassingsgateway.
Hiervoor moet u het volgende doen:
- Maak twee nieuwe Virtuele Linux-machines, myVM en myVM2, die moeten worden gebruikt als back-endservers.
- Installeer NGINX op de virtuele machines om te controleren of de toepassingsgateway is gemaakt.
- Voeg de back-endservers toe aan de back-endpool.
Maak een virtuele machine
Selecteer Een resource maken in de Azure-portal. Het venster Een resource maken wordt weergegeven.
Selecteer Onder Virtuele machine maken.
Voer deze waarden in op het tabblad Basisinformatie voor de volgende instellingen voor de virtuele machine:
- Resourcegroep: selecteer myResourceGroupAG voor de naam van de resourcegroep.
- Naam van virtuele machine: voer myVM in als naam van 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.
Accepteer de overige standaardwaarden en selecteer vervolgens Volgende: Schijven.
Accepteer de standaardinstellingen van het tabblad Schijven en selecteer vervolgens Volgende: Netwerken.
Zorg ervoor dat, op het tabblad Netwerken, myVNet is geselecteerd bij Virtueel netwerk en dat Subnet is ingesteld op myBackendSubnet.
Selecteer Geen voor Openbaar IP.
Accepteer de overige standaardwaarden en selecteer vervolgens Volgende: Beheer.
Selecteer Volgende: Bewaking, stel diagnostische gegevens over opstarten in op Uitschakelen. Accepteer de overige standaardwaarden en selecteer Beoordelen en maken.
Controleer de instellingen op het tabblad Beoordelen en maken, corrigeer eventuele validatiefouten en selecteer vervolgens Maken.
Wacht tot de virtuele machine is gemaakt voordat u verder gaat.
NGINX installeren voor testen
In dit voorbeeld installeert u NGINX alleen op de virtuele machines om te controleren of Azure de toepassingsgateway heeft gemaakt.
Open een Bash Cloud Shell. Hiervoor selecteert u het Cloud Shell-pictogram in de bovenste navigatiebalk van Azure Portal en selecteert u vervolgens Bash in de vervolgkeuzelijst.
Zorg ervoor dat uw bash-sessie is ingesteld voor uw abonnement:
az account set --subscription "<your subscription name>"
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" }'
Maak een tweede virtuele machine en installeer NGINX met behulp van deze stappen die u eerder hebt voltooid. Gebruik myVM2 voor de naam van de virtuele machine en voor de
--vm-name
instelling van de cmdlet.
Back-endservers toevoegen aan de back-endpool
Selecteer Alle resources en vervolgens myAppGateway.
Selecteer Back-endpools in het linkermenu.
Selecteer myBackendPool.
Selecteer onder Doeltype virtuele machine in de vervolgkeuzelijst.
Selecteer onder Doel de bijbehorende netwerkinterface voor myVM in de vervolgkeuzelijst.
Herhaal dit voor myVM2.
Selecteer Opslaan.
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:
Zoek op de pagina Overzicht het openbare IP-adres voor de toepassingsgateway.
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.
Kopieer het openbare IP-adres en plak het in de adresbalk van de browser.
Controleer het antwoord. Een geldig antwoord verifieert dat de toepassingsgateway is gemaakt en verbinding kan maken met de back-end.
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:
- Selecteer Resourcegroepen in het linkermenu van de Azure-portal.
- Zoek en selecteer myResourceGroupAG in de lijst op de pagina Resourcegroepen.
- Selecteer Resourcegroep verwijderen op de pagina van de resourcegroep.
- Voer myResourceGroupAG in bij TYP DE RESOURCEGROEPNAAM en selecteer vervolgens Verwijderen.