Maken en configureren van een toepassingsgateway

Voltooid

Application Gateway bestaat uit een reeks onderdelen die er samen voor zorgen dat aanvragen naar een pool webservers worden gerouteerd en dat de status van deze webservers wordt gecontroleerd. We gaan nu kijken hoe deze onderdelen zijn gerelateerd en welke rol ze spelen in een toepassingsgateway.

Diagram with a visualization of the Application Gateway components.

Front-end-IP-adres

Clientaanvragen worden ontvangen via een front-end-IP-adres. U kunt Application Gateway configureren met een openbaar IP-adres, een privé-IP-adres, of met beide. Application Gateway kan niet meer dan één openbaar IP-adres en één privé-IP-adres hebben.

Listeners

Application Gateway gebruikt één of meer listeners om binnenkomende aanvragen te ontvangen. Een listener accepteert verkeer dat binnenkomt bij een specifieke combinatie van protocol, poort, host en IP-adres. Met elke listener worden aanvragen naar een back-endpool met servers gerouteerd, volgens de regels voor doorsturen die u opgeeft. Een listener kan Basic of Multisite zijn. Met een basislistener kan een aanvraag alleen worden gerouteerd op basis van het pad in de URL. Een listener voor meerdere locaties kan aanvragen ook routeren met behulp van het hostnaamelement van de URL.

Listeners kunnen ook SSL-certificaten verwerken om uw toepassing te beveiligen tussen de gebruiker en de toepassingsgateway.

Regels voor doorsturen

Met een regel voor doorsturen wordt een listener verbonden met de back-endpools. Een regel geeft aan hoe de hostnaam en padelementen in de URL van een aanvraag moeten worden geïnterpreteerd en hoe de aanvraag naar de juiste back-endpool moet worden geleid. Een regel voor doorsturen heeft ook een gekoppelde set met HTTP-instellingen. Deze instellingen geven aan of (en hoe) verkeer is versleuteld tussen Application Gateway en de back-endservers, en bieden ook andere informatie over de configuratie, zoals:

  • Protocol (HTTP or HTTPS).
  • Sessiepersistentie, zodat alle aanvragen in een clientsessie worden doorgegeven aan dezelfde webserver, in plaats van dat ze via taakverdeling worden verdeeld over de verschillende servers.
  • Verbinding maken verwijderen van servers uit een back-endpool mogelijk maken.
  • De time-outperiode voor aanvragen, in seconden.
  • Statustests, het opgeven van een test-URL, time-outperioden en andere parameters die worden gebruikt om te bepalen of een server in de back-endpool beschikbaar is.

Back-endpools

Een back-endpool verwijst naar een verzameling webservers. Tijdens het configureren van de pool geeft u het IP-adres van elke webserver op en de poort waarop deze luistert naar aanvragen. Voor elke pool kan een vaste set virtuele machines, een virtuele-machineschaalset, een app die wordt gehost in Azure App Services, of een verzameling on-premises servers worden opgegeven. Aan elke back-endpool is een load balancer gekoppeld waarmee werk wordt verdeeld over de pool

Web Application Firewall

De WAF (Web Application Firewall) is een optioneel onderdeel waarmee binnenkomende aanvragen worden verwerkt voordat ze een listener bereiken. Elke aanvraag wordt met de Web Application Firewall gecontroleerd op veelvoorkomende bedreigingen, op basis van de OWASP (Open Web Application Security Project). Deze omvatten:

  • SQL-injectie
  • Script uitvoeren op meerdere sites
  • Opdrachtinjectie
  • HTTP-aanvraag smokkelen
  • HTTP-antwoord splitsen
  • Externe bestandsopname
  • Bots, crawlers en scanners
  • Schendingen van en afwijkingen in HTTP-protocollen

OWASP heeft een set algemene regels gedefinieerd voor het detecteren van aanvallen met de naam Core Rule Set (CRS). De regelsets worden continu gecontroleerd, aangezien aanvallen steeds complexer worden. WAF biedt ondersteuning voor twee regelsets, CRS 2.2.9 en CRS 3.0. CRS 3.0 is de standaard en recentere van deze regelsets. Indien nodig kunt ervoor kiezen om alleen specifieke regels in een regelset te selecteren, met het oog op bepaalde specifieke bedreigingen. Bovendien kunt u de firewall aanpassen om op te geven welke elementen in een aanvraag moeten worden onderzocht, en kunt u de grootte van berichten beperken om te voorkomen dat servers worden overbelast door toedoen van enorm grote uploads.

U kunt WAF inschakelen op uw Application Gateway door de WAF laag te selecteren wanneer u een gateway maakt.

Statuscontroles

Statustests zijn een belangrijk element bij het helpen van de load balancer om te bepalen welke servers beschikbaar zijn voor taakverdeling in een back-endpool. Application Gateway maakt gebruik van een statuscontrole om een aanvraag te verzenden naar de server. Als de server een HTTP-antwoord retourneert met een statuscode tussen 200 en 399, wordt de server beschouwd als in orde.

Als u geen statuscontrole configureert, wordt in Application Gateway een standaardcontrole gemaakt. Het duurt vervolgens 30 seconden voordat wordt besloten dat een server niet beschikbaar is.

Netwerkvereisten voor Application Gateway

Voor Application Gateway is een virtueel netwerk vereist waarin u kunt werken. U moet dit virtuele netwerk en een toegewezen subnet maken voordat u Application Gateway instelt. Application Gateway gebruikt een aantal privéadressen voor intern gebruik en voor communicatie met elk exemplaar als de gateway wordt uitgeschaald. Als u bijvoorbeeld van plan bent om uit te schalen naar vier exemplaren, maakt u een subnet met de grootte /28. Als u denkt te gaan uitschalen naar meer instanties, maakt u een groter subnet.

U kunt de Toepassingsgateway beschikbaar maken via een openbaar IP-adres of u kunt deze privé houden door het alleen een privé-IP-adres in het virtuele netwerk te geven. Dit is handig als u interne sites hebt waarop u Application Gateway wilt gebruiken voor taakverdeling.

Opties voor Application Gateway

U kunt een toepassingsgateway maken in de laag Standard of in de laag WAF. U hebt ook een keuze uit drie grootten met verschillende prestaties, prijzen en schaalbaarheid: Klein, Gemiddeld en Groot.

De lagen Standard en WAF zijn beschikbaar in twee versies, V1 en V2. V2 biedt ondersteuning voor Azure-beschikbaarheidszones, maar is momenteel nog in de preview-fase.

Application Gateway biedt ondersteuning voor handmatig en automatisch schalen. Als u automatisch schalen selecteert, wordt Application Gateway automatisch in- en uitgeschaald, afhankelijk van het toepassingsverkeer. U kunt het maximale en minimale aantal instanties van Application Gateway beperken.

Een gateway maken en configureren

U kunt een toepassingsgateway maken en configureren met behulp van de Azure-portal, Azure PowerShell of Azure CLI. Gebruik voor Azure CLI de opdracht az network application-gateway create om een nieuwe gateway te maken. Als uw voorkeur uitgaat naar PowerShell, kunt u de cmdlet New-AzApplicationGateway gebruiken. Voor het uitvoeren van de meeste bewerkingen kunt u ook de Azure-portal gebruiken.

U kunt de configuratie van de onderdelen in een gateway bekijken en wijzigen met behulp van de opdrachten az network application-gateway http-listener, az network application-gateway rule, az network application-gateway address-pool, az network application-gateway http-settings en az network application-gateway front-end-port in Azure CLI. De reeks cmdlets Get-AzApplicationGateway* en Set-AzApplicationGateway* bieden dezelfde bewerkingen voor PowerShell.

We gaan nu een toepassingsgateway maken en configureren voor de geïmplementeerde websites van de afdeling motorvoertuigen.