Een split-brain DNS-configuratie gebruiken om een web-app in Azure te hosten

Azure Front Door
Azure Application Gateway
Azure ExpressRoute
Azure DNS

Teams die workloads beheren, zijn vaak afhankelijk van FQDN's (Fully Qualified Domain Names) voor klanttoegang. FQDN's worden doorgaans gecombineerd met Transport Layer Security (TLS) Server Name Indication (SNI). ** Wanneer met deze aanpak publieke klanten toegang hebben tot een workload vanaf het openbare internet of wanneer zakelijke klanten intern toegang hebben tot een workload, kan de routering naar de toepassing vaste paden volgen en verschillende niveaus van beveiliging of kwaliteit van service (QoS) hebben.

In de volgende architectuur ziet u een benadering om onderscheid te maken tussen hoe verkeer wordt behandeld op basis van dns (Domain Name System) en of de klant afkomstig is van internet of van een bedrijfsnetwerk.

Architecture

Diagram van de architectuur voor het hosten van toepassingen.

Download een Visio-bestand van deze architectuur.

In de volgende werkstroomsecties worden twee configuraties beschreven: een openbare internetwerkstroom en een privéwerkstroom. Combineer de twee werkstromen om een split-brain hostingarchitectuur te implementeren.

Publieke internet werkstroom

Diagram van de openbare internetwerkstroom.

Download een Visio-bestand van deze architectuur.

  1. Klanten verzenden een aanvraag voor de app.contoso.com toepassing via het openbare internet.

  2. Er is een Azure DNS-zone geconfigureerd voor het contoso.com domein. De juiste CNAME-vermeldingen (Canonical Name) zijn geconfigureerd voor de Azure Front Door-eindpunten.

  3. Externe klanten hebben toegang tot de webtoepassing via Azure Front Door Standard of Premium, die fungeert als een globale load balancer en een Web Application Firewall (WAF).

    • Binnen Azure Front Door wordt app.contoso.com toegewezen als de FQDN via routes op een geconfigureerd eindpunt. Azure Front Door host ook de TLS SNI-certificaten voor de toepassingen.

      Note

      Azure Front Door biedt geen ondersteuning voor zelfondertekende certificaten.

    • Azure Front Door stuurt de aanvragen naar de geconfigureerde origin-groep op basis van de Host HTTP-header van de klant.

    • De oorspronkelijke groep is geconfigureerd om te verwijzen naar het Azure Application Gateway exemplaar via het openbare IP-adres van Application Gateway.

  4. Een netwerkbeveiligingsgroep (NSG) is geconfigureerd in het AppGW-subnet om binnenkomende toegang op poort 80 en poort 443 toe te staan vanuit de servicetag AzureFrontDoor.Backend . De Network Security Group (NSG) staat geen binnenkomend verkeer op poort 80 en poort 443 toe vanuit de Internet Service Tag.

    Note

    De servicetag AzureFrontDoor.Backend beperkt verkeer niet alleen tot uw exemplaar van Azure Front Door. Validatie vindt plaats in de volgende fase.

  5. Het Application Gateway-exemplaar heeft een listener op poort 443. Verkeer wordt doorgestuurd naar de back-end op basis van de hostnaam die is opgegeven in de listener.

    • Om ervoor te zorgen dat verkeer afkomstig is van uw Azure Front Door-profiel, configureert u een aangepaste WAF-regel om de X-Azure-FDID headerwaarde te controleren.

    • Azure genereert een unieke id voor elk Azure Front Door-profiel. De unieke id is de Azure Front Door-id op de overzichtspagina van de Azure-portal.

  6. Verkeer bereikt de rekenresource die als een back-endpool in Application Gateway is geconfigureerd.

Werkstroom voor privé-ondernemingen

Diagram van de werkstroom voor privé-ondernemingen.

Download een Visio-bestand van deze architectuur.

  1. Klanten initiëren een aanvraag voor de app.contoso.com toepassing vanuit een on-premises omgeving.

  2. FQDN's voor toepassingen worden geconfigureerd op de on-premises DNS-provider. Deze DNS-provider kan lokale Active Directory Domain Services (AD DS) DNS-servers of andere partneroplossingen zijn. De DNS-vermeldingen voor elk van de FQDN's van de toepassing zijn geconfigureerd om te verwijzen naar het privé-IP-adres van het Application Gateway-exemplaar.

  3. Een Azure ExpressRoute-circuit of een site-naar-site-VPN vereenvoudigt de toegang tot Application Gateway.

  4. Een NSG is geconfigureerd in het AppGW-subnet om binnenkomende privéaanvragen van on-premises klantnetwerken toe te staan waaruit verkeer afkomstig is. Deze configuratie zorgt ervoor dat andere bronnen van privéverkeer het privé-IP-adres van Application Gateway niet rechtstreeks kunnen bereiken.

  5. Application Gateway heeft een listener die is geconfigureerd op poort 80 en poort 443. Verkeer wordt doorgestuurd naar de back-end op basis van de hostnaam die is opgegeven in de listener.

  6. Alleen privénetwerkverkeer bereikt de compute-resources die zijn geconfigureerd als een back-end pool in Application Gateway.

Components

  • DNS is een systeem waarmee domeinnamen worden toegewezen aan IP-adressen, waarmee clients services kunnen vinden en er verbinding mee kunnen maken. Voor een openbare internetwerkstroom in deze architectuur moet u een openbare DNS-zone configureren met de juiste CNAME van de Azure Front Door eindpunt-FQDN. Configureer aan de privézijde (enterprise) de lokale DNS-provider (AD DS DNS of een partneroplossing) om elke toepassings-FQDN te laten verwijzen naar het privé-IP-adres van Application Gateway.

  • Azure DNS Private Resolver is een volledig beheerde service die DNS-omzetting tussen on-premises omgevingen en Azure mogelijk maakt zonder aangepaste DNS-servers te implementeren. In deze architectuur maakt DNS Private Resolver het mogelijk om on-premises klanten op te lossen, zodat zakelijke gebruikers deze split-brain DNS-oplossing kunnen gebruiken voor toegang tot toepassingen zonder het openbare internet te doorlopen.

  • Azure Front Door is een wereldwijde load balancer en WAF die snelle en veilige levering van webtoepassingen biedt aan wereldwijde klanten. In deze architectuur stuurt Azure Front Door Standard of Premium externe klanten naar het Application Gateway-exemplaar en biedt caching- en optimalisatieopties om de klantervaring te verbeteren.

  • Application Gateway is een regionale load balancer en WAF die hoge beschikbaarheid, schaalbaarheid en beveiliging biedt voor webtoepassingen. In deze architectuur stuurt Application Gateway aanvragen van externe en interne klanten naar de back-end-berekening en beschermt de webtoepassing tegen veelvoorkomende webaanvallen.

    Zowel Azure Front Door als Application Gateway bieden WAF-mogelijkheden, maar de privéwerkstroom in deze oplossing maakt geen gebruik van Azure Front Door. Als gevolg hiervan gebruiken beide architecturen de WAF-functionaliteit van Application Gateway.

  • ExpressRoute is een service die on-premises netwerken uitbreidt naar de cloud via een privéverbinding die tot stand is gebracht door een connectiviteitsprovider. In deze architectuur faciliteert ExpressRoute privéconnectiviteit met Application Gateway voor on-premises klanten.

Alternatives

Als alternatieve oplossing kunt u Azure Front Door Standard of Premium verwijderen en in plaats daarvan de openbare DNS-record laten verwijzen naar het openbare IP-adres van Application Gateway. Op basis van de vereisten van deze architectuur moet u het verkeer cachen en optimaliseren op het toegangspunt in Azure. Als gevolg hiervan kunt u de alternatieve oplossing voor dit scenario niet gebruiken. Zie Kostenoptimalisatie voor meer informatie.

Diagram van de alternatieve split-brain DNS-hostingarchitectuur.

Download een Visio-bestand van deze architectuur.

Andere mogelijke alternatieven voor het openbare inkomend verkeer in deze architectuur zijn:

  • Azure Traffic Manager: Traffic Manager is een op DNS gebaseerde verkeersrouteringsservice die verkeer distribueert over verschillende regio's en eindpunten. U kunt Traffic Manager gebruiken in plaats van Azure Front Door Standard of Premium om externe klanten naar het dichtstbijzijnde Application Gateway-exemplaar te routeren. Azure Front Door biedt echter functies, zoals WAF-mogelijkheden, caching en sessieaffiniteit. Traffic Manager biedt deze functies niet.

  • Azure Load Balancer: Azure Load Balancer is een netwerk load balancer die hoge beschikbaarheid en schaalbaarheid biedt voor UDP-verkeer (Transmission Control Protocol) en User Datagram Protocol (UDP). U kunt Load Balancer gebruiken in plaats van Application Gateway om aanvragen van externe en interne klanten naar back-endwebservers te routeren. Application Gateway biedt echter functies, zoals WAF-mogelijkheden, SSL-beëindiging (Secure Sockets Layer) en sessieaffiniteit op basis van cookies. Load Balancer biedt deze functies niet.

Scenario-details

Dit scenario lost het probleem op van het hosten van een webtoepassing die zowel externe als interne klanten bedient. Deze architectuur zorgt ervoor dat verkeer een geschikt pad volgt op basis van de oorsprong van een klant. Deze architectuur:

  • Biedt snelle en betrouwbare toegang via internet tot een webtoepassing voor wereldwijde niet-enterprise klanten.

  • Biedt zakelijke klanten de mogelijkheid om toegang te krijgen tot een toepassing zonder het openbare internet te doorlopen.

  • Beschermt een webtoepassing tegen veelvoorkomende webaanvallen en schadelijk verkeer.

Mogelijke gebruiksvoorbeelden

Gebruik deze architectuur voor scenario's waarvoor het volgende is vereist:

  • Split-brain DNS: Deze oplossing maakt gebruik van Azure Front Door voor externe klanten en Application Gateway voor interne klanten, met verschillende DNS-records voor elke service. Deze aanpak helpt bij het optimaliseren van de netwerkprestaties, beveiliging en beschikbaarheid voor verschillende klanten.

  • Schaalbaarheid van toepassingen: Deze oplossing maakt gebruik van Application Gateway, die verkeer kan verdelen over geconfigureerde back-end-rekenresources. Deze aanpak helpt de prestaties en beschikbaarheid van toepassingen te verbeteren en horizontaal schalen te ondersteunen.

Considerations

Met deze overwegingen worden de pijlers van het Azure Well-Architected Framework geïmplementeerd. Dit is een set richtlijnen die u kunt gebruiken om de kwaliteit van een workload te verbeteren. Zie Well-Architected Framework voor meer informatie.

Reliability

Betrouwbaarheid zorgt ervoor dat uw toepassing kan voldoen aan de toezeggingen die u aan uw klanten hebt gedaan. Zie de controlelijst ontwerpbeoordeling voor betrouwbaarheid voor meer informatie.

  • Identificeer foutpunten. In deze split-brain DNS-architectuur is betrouwbaarheid afhankelijk van de juiste werking van belangrijke onderdelen, zoals Azure Front Door, Application Gateway en DNS-configuraties. U moet potentiële foutpunten identificeren, zoals onjuiste configuraties, problemen met SSL-certificaten of overbelasting van capaciteit.

  • Impact beoordelen. U moet de impact van fouten beoordelen. Voor externe klanten kan elke onderbreking van Azure Front Door, die als gateway fungeert, invloed hebben op wereldwijde toegang. Voor interne klanten kan elke onderbreking van Application Gateway bedrijfsactiviteiten belemmeren.

  • Risicobeperkingsstrategieën implementeren. Als u risico's wilt beperken, implementeert u redundantie in meerdere beschikbaarheidszones, gebruikt u statustests voor realtime-bewaking en zorgt u ervoor dat de juiste configuratie van DNS-routering voor zowel extern als intern verkeer wordt uitgevoerd. Zorg ervoor dat u DNS-records regelmatig bijwerkt en een noodherstelplan hebt.

  • Continu bewaken. Gebruik Azure Monitor functies om de gezondheid van uw systeem in de gaten te houden. Stel waarschuwingen in voor afwijkingen en laat een plan voor incidentrespons gereed om mogelijke problemen onmiddellijk op te lossen.

Houd zich aan deze principes om een robuust en betrouwbaar systeem te garanderen dat bestand is tegen uitdagingen en servicecontinuïteit kan behouden.

Security

Beveiliging biedt garanties tegen opzettelijke aanvallen en misbruik van uw waardevolle gegevens en systemen. Zie de controlelijst ontwerpbeoordeling voor beveiliging voor meer informatie.

  • Gebruik de Zero Trust benadering. Pas de Zero Trust benadering toe in de split-brain DNS-installatie. Controleer expliciet de identiteit van een klant, ongeacht of deze afkomstig zijn van internet of een bedrijfsnetwerk. Deze aanpak zorgt ervoor dat alleen vertrouwde entiteiten geautoriseerde acties kunnen uitvoeren.

  • Implementeer identiteits- en toegangsbeheer effectief. Implementeer Microsoft Entra ID voor robuust identiteitsbeheer. Gebruik beleid voor voorwaardelijke toegang van Microsoft Entra om strikte toegangsbeheer af te dwingen op basis van klantcontext, apparaatstatus en locatie.

    • Beoordeel uw beveiligingsmaatregelen. Evalueer de effectiviteit van de beveiligingsmaatregelen voor uw workload met dubbele toegang door het implementeren van:

      • Evalueer regelmatig uw defensieve investeringen. Evalueer regelmatig de effectiviteit van Azure Front Door en Application Gateway. Zorg ervoor dat ze zinvolle bescherming bieden tegen bedreigingen.

      • Beperk het effectbereik van potentiële schendingen. Zorg ervoor dat u beveiligingsinbreuken binnen een beperkte reikwijdte beperkt. U kunt bijvoorbeeld externe en interne verkeersstromen effectief isoleren.

  • Stel dat een inbreuk altijd mogelijk is. Bevestig dat aanvallers beveiligingscontroles kunnen schenden. Bereid u voor op dergelijke scenario's.

  • Implementeer uitgebreide beveiligingsmaatregelen. Netwerksegmentatie, microsegmentatie en NSG's implementeren. Veronderstel dat een aanvaller mogelijk toegang krijgt, en ontwerp compenserende controles dienovereenkomstig.

Integreer deze beveiligingsprincipes in uw split-brain DNS-architectuur om een robuust en tolerant systeem te maken dat interne en externe toegang tot uw workload beschermt.

Andere beveiligingsverbeteringen

  • Application Gateway: U kunt een WAF op Application Gateway gebruiken om uw webtoepassingen te beschermen tegen veelvoorkomende beveiligingsproblemen en aanvallen op internet. U kunt Azure Private Link ook gebruiken om veilig toegang te krijgen tot uw back-endtoepassingsservers vanuit Application Gateway zonder ze beschikbaar te maken op het openbare internet.

  • Azure Firewall: U kunt een Azure firewall toevoegen aan het virtuele hubnetwerk en Azure Firewall bedreigingsinformatie gebruiken om schadelijk verkeer van bekende schadelijke IP-adressen en domeinen te blokkeren. U kunt Azure Firewall ook gebruiken als EEN DNS-proxy om DNS-verkeer te onderscheppen en te inspecteren en regels voor DNS-filtering toe te passen.

  • Azure Front Door: U kunt Azure Web Application Firewall gebruiken om uw webtoepassingen te beschermen tegen veelvoorkomende webproblemen en aanvallen aan de rand. U kunt Private Link ook gebruiken met de Azure Front Door Premium-laag om veilig toegang te krijgen tot uw back-endtoepassingsservers van Azure Front Door zonder ze beschikbaar te maken voor het openbare internet.

Kostenoptimalisatie

Kostenoptimalisatie richt zich op manieren om onnodige uitgaven te verminderen en operationele efficiëntie te verbeteren. Zie de controlelijst ontwerpbeoordeling voor Kostenoptimalisatie voor meer informatie.

  • Back-end berekenen: Veel factoren, zoals SKU-selectie, aantal replica's en regio's, zorgen voor de kosten van het uitvoeren van back-end-rekenservices. Zorg ervoor dat u rekening houdt met alle elementen van een rekenresource voordat u de beste optie voor uw workload selecteert.

  • Application Gateway: De kosten van Application Gateway zijn afhankelijk van het aantal exemplaren, de grootte van exemplaren en de hoeveelheid verwerkte gegevens. U kunt kosten verlagen door automatisch schalen te gebruiken om het aantal exemplaren aan te passen op basis van de verkeersvraag. U kunt ook zone-redundante SKU's implementeren in beschikbaarheidszones om de behoefte aan extra exemplaren voor hoge beschikbaarheid te verminderen.

  • Azure Front Door: Azure Front Door kosten zijn afhankelijk van het aantal routeringsregels, het aantal HTTP- of HTTPS-aanvragen en de hoeveelheid overgedragen gegevens. U kunt Azure Front Door Standard of Premium gebruiken om een uniforme ervaring te krijgen met Azure-netwerk voor contentlevering, Azure Web Application Firewall en Private Link. U kunt ook de azure Front Door-regelenginefunctie gebruiken om verkeerbeheer aan te passen en de prestaties en kosten te optimaliseren.

Als uw scenario geen globale toegang of de extra functies van Azure Front Door vereist, kunt u deze oplossing gebruiken met alleen Application Gateway. U kunt alle openbare DNS-records laten verwijzen naar het openbare IP-adres dat is geconfigureerd op de Application Gateway-listeners.

Bekijk een voorbeeld van deze oplossing waarmee het typische gebruik van de onderdelen in deze architectuur wordt geschat. Pas de kosten aan op uw scenario.

Contributors

Microsoft onderhoudt dit artikel. De volgende inzenders hebben dit artikel geschreven.

Hoofdauteur:

Andere Inzenders:

Als u niet-openbare LinkedIn-profielen wilt zien, meldt u zich aan bij LinkedIn.

Volgende stappen