Back-endpools configureren voor versleuteling

Voltooid

De back-endpool bevat de servers die de toepassing implementeren. Azure Application Gateway stuurt aanvragen naar deze servers en kan het verkeer gelijk tussen deze servers verdelen.

In de verzendingsportal moeten de toepassingsservers in de back-endpool SSL gebruiken om de gegevens te versleutelen die tussen Application Gateway en de servers in de back-endpool worden verzonden. Application Gateway maakt gebruik van een SSL-certificaat met een openbare sleutel om de gegevens te versleutelen. De servers gebruiken de bijbehorende persoonlijke sleutel om de gegevens bij ontvangst te ontsleutelen. In deze les ziet u hoe u de back-endpool maakt en de benodigde certificaten installeert in Application Gateway. Deze certificaten helpen de berichten te beveiligen die naar en van de back-endpool worden verzonden.

Versleuteling van Application Gateway naar de back-endpool

Een back-endpool kan verwijzen naar afzonderlijke virtuele machines, een virtuele-machineschaalset, de IP-adressen van echte computers (on-premises of extern) of services die worden gehost met Azure App Service. Alle servers in de back-endpool moeten op dezelfde manier worden geconfigureerd, met inbegrip van de beveiligingsinstellingen.

Diagram showing how Application Gateway routes a request to a web server.

Als het verkeer dat wordt doorgestuurd naar de back-endpool wordt beveiligd met behulp van SSL, moet elke server in de back-endpool een geschikt certificaat leveren. U kunt een zelfondertekend certificaat maken voor testdoeleinden. In een productieomgeving moet u altijd een certificaat genereren of aanschaffen dat kan worden geverifieerd door een certificeringsinstantie (CA).

Er zijn momenteel twee versies van Application Gateway: v1 en v2. Ze hebben vergelijkbare mogelijkheden, maar hebben iets andere implementatiedetails. De versie v2 biedt meer functies en prestatieverbeteringen.

Certificaatconfiguratie in Application Gateway v1

Application Gateway v1 vereist dat u het verificatiecertificaat voor de servers in de gatewayconfiguratie installeert. Dit certificaat bevat de openbare sleutel die Application Gateway gebruikt om berichten te versleutelen en uw servers te verifiëren. U kunt dit certificaat maken door het te exporteren van de server. De toepassingsserver gebruikt de bijbehorende persoonlijke sleutel voor het ontsleutelen van deze berichten. Deze persoonlijke sleutel mag uitsluitend worden opgeslagen op uw toepassingsservers.

U kunt een verificatiecertificaat aan Application Gateway toevoegen met de opdracht az network application-gateway auth-cert create vanaf de Azure CLI. In het volgende voorbeeld ziet u de syntaxis van deze opdracht. Het certificaat moet de CER-indeling hebben (Claim,Evidence en Reasoning).

az network application-gateway auth-cert create \
    --resource-group <resource group name> \
    --gateway-name <application gateway name> \
    --name <certificate name> \
    --cert-file <path to authentication certificate>

Application Gateway biedt andere opdrachten die u kunt gebruiken om verificatiecertificaten weer te geven en te beheren. Voorbeeld:

  • De az network application-gateway auth-cert list-opdracht toont de certificaten die zijn geïnstalleerd.
  • U kunt de az network application-gateway auth-cert update opdracht gebruiken om het certificaat te wijzigen.
  • Met de az network application-gateway auth-cert delete opdracht wordt een certificaat verwijderd.

Certificaatconfiguratie in Application Gateway v2

Application Gateway v2 heeft enigszins andere verificatievereisten. U levert het certificaat voor de certificeringsinstantie die het SSL-certificaat heeft geverifieerd voor de servers in de back-endpool. U voegt dit certificaat als vertrouwd basiscertificaat toe aan Application Gateway. Gebruik de opdracht az network application-gateway root-cert create vanaf de Azure CLI.

az network application-gateway root-cert create \
      --resource-group <resource group name> \
      --gateway-name <application gateway name> \
      --name <certificate name> \
      --cert-file <path to trusted CA certificate>

Als uw servers een zelfondertekend certificaat gebruiken, voegt u dit certificaat als het vertrouwde basiscertificaat in Application Gateway toe.

HTTP-instellingen

Application Gateway gebruikt een regel om op te geven hoe de berichten die worden ontvangen op de binnenkomende poort naar de servers in de back-endpool worden doorgestuurd. Als de servers SSL gebruiken, moet u de regel configureren om het volgende aan te geven:

  • De servers verwachten verkeer via het HTTPS-protocol.
  • Welk certificaat moet worden gebruikt voor het versleutelen van verkeer en het verifiëren van de verbinding met een server.

U definieert deze configuratiegegevens met een HTTP-instelling.

U kunt een HTTP-instelling definiëren met behulp van de az network application-gateway http-settings create opdracht in de Azure CLI. In het volgende voorbeeld ziet u de syntaxis voor het maken van een instelling waarmee verkeer met behulp van het HTTPS-protocol naar poort 443 op de servers in de back-endpool wordt gestuurd. Als u Application Gateway v1 gebruikt, is de parameter --auth-certs de naam van het verificatiecertificaat dat u eerder aan Application Gateway hebt toegevoegd.

az network application-gateway http-settings create \
    --resource-group <resource group name> \
    --gateway-name <application gateway name> \
    --name <HTTPS settings name> \
    --port 443 \
    --protocol Https \
    --auth-certs <certificate name>

Als u Application Gateway v2 gebruikt, laat u de parameter --auth-certs weg. Application Gateway maakt verbinding met de back-endserver. De service controleert de echtheid van het certificaat dat door de server wordt geleverd aan de hand van de certificeringsinstanties via een lijst met vertrouwde basiscertificaten. Als er geen overeenkomst is, wordt Application Gateway niet verbonden met de back-endserver en wordt de fout HTTP 502 (ongeldige gateway) gegenereerd.