Implementace DMZ mezi Azure a InternetemImplement a DMZ between Azure and the Internet

Tato referenční architektura obsahuje zabezpečenou hybridní síť, která rozšiřuje místní síť do Azure a přijímá také přenosy z internetu.This reference architecture shows a secure hybrid network that extends an on-premises network to Azure and also accepts Internet traffic. Nasaďte toto řešení.Deploy this solution.

Zabezpečení hybridní síťové architektury

Stáhněte si soubor aplikace Visio s touto architekturou.Download a Visio file of this architecture.

Tato referenční architektura rozšiřuje architekturu popsanou v rámci implementace hraniční sítě mezi Azure a vaším místním datovým centrem.This reference architecture extends the architecture described in Implementing a DMZ between Azure and your on-premises datacenter. Přidá veřejnou hraniční síť, která zpracovává přenosy z Internetu, privátní hraniční síti, která zpracovává přenosy z místní sítě.It adds a public DMZ that handles Internet traffic, in addition to the private DMZ that handles traffic from the on-premises network.

Obvyklá využití pro tuto architekturu:Typical uses for this architecture include:

  • Hybridní aplikace, kde úlohy běží částečně místně a částečně v AzureHybrid applications where workloads run partly on-premises and partly in Azure.
  • Infrastruktura Azure, která směruje příchozí provoz z místní sítě a z internetu.Azure infrastructure that routes incoming traffic from on-premises and the Internet.

ArchitekturaArchitecture

Tato architektura se skládá z následujících součástí.The architecture consists of the following components.

  • Veřejná IP adresa:Public IP address (PIP). IP adresa veřejného koncového bodu.The IP address of the public endpoint. Prostřednictvím této adresy můžou získat přístup k systému externí uživatelé připojení k internetu.External users connected to the Internet can access the system through this address.
  • Síťové virtuální zařízení:Network virtual appliance (NVA). Tato architektura obsahuje samostatný fond síťových virtuálních zařízení pro přenosy z internetu.This architecture includes a separate pool of NVAs for traffic originating on the Internet.
  • Azure Load Balancer:Azure load balancer. Všechny žádosti přicházející z internetu prochází přes nástroj pro vyrovnávání zatížení a distribuují se do síťových virtuálních zařízení ve veřejné hraniční síti.All incoming requests from the Internet pass through the load balancer and are distributed to the NVAs in the public DMZ.
  • Podsíť příchozích přenosů ve veřejné hraniční síti:Public DMZ inbound subnet. Tato podsíť přijímá žádosti od služby Azure Load Balancer.This subnet accepts requests from the Azure load balancer. Příchozí žádosti se předávají do jednoho ze síťových virtuálních zařízení ve veřejného hraniční síti.Incoming requests are passed to one of the NVAs in the public DMZ.
  • Podsíť odchozích přenosů ve veřejné hraniční síti:Public DMZ outbound subnet. Žádosti, které schválí síťové virtuální zařízení, projdou přes tuto podsíť do interního nástroje pro vyrovnávání zatížení pro webovou vrstvu.Requests that are approved by the NVA pass through this subnet to the internal load balancer for the web tier.

DoporučeníRecommendations

Následující doporučení platí pro většinu scénářů.The following recommendations apply for most scenarios. Pokud nemáte konkrétní požadavek, který by těmto doporučením nedopovídal, postupujte podle nich.Follow these recommendations unless you have a specific requirement that overrides them.

Doporučení pro síťová virtuální zařízeníNVA recommendations

Použijte jednu sadu síťových virtuálních zařízení pro přenosy z internetu a jinou pro přenosy z místní sítě.Use one set of NVAs for traffic originating on the Internet, and another for traffic originating on-premises. Použití jenom jedné sady síťových virtuálních zařízení pro oba typy přenosů představuje bezpečnostní riziko, protože mezi těmito dvěma sadami síťových přenosů neexistuje žádná bezpečnostní hranice.Using only one set of NVAs for both is a security risk, because it provides no security perimeter between the two sets of network traffic. Pomocí samostatných síťových virtuálních zařízení snižuje složitost pravidel pro kontrolu zabezpečení a vyjasňuje, která pravidla platí pro jednotlivé příchozí žádosti v síti.Using separate NVAs reduces the complexity of checking security rules, and makes it clear which rules correspond to each incoming network request. Jedna sada síťových virtuálních zařízení implementuje pravidla jenom pro přenosy z internetu a druhá pravidla jenom pro místní přenosy.One set of NVAs implements rules for Internet traffic only, while another set of NVAs implement rules for on-premises traffic only.

Pokud budete chtít ukončit připojení aplikací na úrovni síťového virtuálního zařízení a zachovat kompatibilitu s vrstvami back-end, zahrňte síťové virtuální zařízení vrstvy 7.Include a layer-7 NVA to terminate application connections at the NVA level and maintain compatibility with the backend tiers. Zaručí se tak symetrické připojení, ve kterém se přenosy odpovědí z úrovní back-end vrací přes síťové virtuální zařízení vrstvy.This guarantees symmetric connectivity where response traffic from the backend tiers returns through the NVA.

Doporučení pro veřejný nástroj pro vyrovnávání zatíženíPublic load balancer recommendations

Aby byla zajištěná dostupnost a škálovatelnost, nasaďte veřejná síťová virtuální zařízení hraniční sítě ve skupině dostupnosti a použijte internetový nástroj pro vyrovnávání zatížení k distribuci žádostí z internetu napříč síťovými virtuálními zařízeními v sadě dostupnosti.For scalability and availability, deploy the public DMZ NVAs in an availability set and use an Internet facing load balancer to distribute Internet requests across the NVAs in the availability set.

Konfigurujte nástroj pro vyrovnávání zatížení tak, aby přijímal žádosti pouze na portech potřebných pro přenosy z internetu.Configure the load balancer to accept requests only on the ports necessary for Internet traffic. Můžete například omezit příchozí žádosti HTTP na port 80 a příchozí žádosti HTTPS na port 443.For example, restrict inbound HTTP requests to port 80 and inbound HTTPS requests to port 443.

Aspekty zabezpečeníScalability considerations

I když vaše architektura původně vyžaduje jediné síťové virtuální zařízení ve veřejné hraniční síti, doporučujeme od začátku umístit nástroj pro vyrovnávání zatížení před veřejnou hraniční síť.Even if your architecture initially requires a single NVA in the public DMZ, we recommend putting a load balancer in front of the public DMZ from the beginning. Usnadní se tak škálování na více síťových virtuálních zařízení, pokud bude v budoucnu nutné.That will make it easier to scale to multiple NVAs in the future, if needed.

Aspekty dostupnostiAvailability considerations

Internetové nástroje pro vyrovnávání zatížení vyžadují, aby každé síťové virtuální zařízení v podsíti příchozích přenosů ve veřejné hraniční síti implementovalo sondu stavu.The Internet facing load balancer requires each NVA in the public DMZ inbound subnet to implement a health probe. Sonda stavu, která nebude na tomto koncovém bodu odpovídat, se bude považovat za nedostupnou a nástroj pro vyrovnávání zatížení bude směrovat požadavky na jiná síťová virtuální zařízení ve stejné sadě dostupnosti.A health probe that fails to respond on this endpoint is considered to be unavailable, and the load balancer will direct requests to other NVAs in the same availability set. Chtěli bychom vás upozornit na to, že pokud žádné síťové virtuální zařízení neodpoví, přestane aplikace reagovat. Je tedy důležité mít sledování nakonfigurované tak, aby se poslalo upozornění pro roli DevOps, když počet instancí síťových virtuálních zařízení, jejichž stav je v pořádku, klesne pod definovanou prahovou hodnotu.Note that if all NVAs fail to respond, your application will fail, so it's important to have monitoring configured to alert DevOps when the number of healthy NVA instances falls below a defined threshold.

Aspekty správyManageability considerations

Monitorování a správa pro síťová virtuální zařízení ve veřejné hraniční síti by měl provádět jumpbox v podsíti správy.All monitoring and management for the NVAs in the public DMZ should be performed by the jumpbox in the management subnet. Jak je popsáno v implementaci hraniční sítě mezi Azure a vaším místním datovým centrem, definujte jednu síťovou trasu z místní sítě přes bránu do jumpboxu, aby bylo možné omezit přístup.As discussed in Implementing a DMZ between Azure and your on-premises datacenter, define a single network route from the on-premises network through the gateway to the jumpbox, in order to restrict access.

Pokud nefunguje připojení brány z vaší místní sítě do Azure, můžete stále použít jumpbox tak, že nasadíte veřejnou IP adresu, přidáte ji k jumpboxu a použijete přihlášení z internetu.If gateway connectivity from your on-premises network to Azure is down, you can still reach the jumpbox by deploying a public IP address, adding it to the jumpbox, and logging in from the Internet.

Aspekty zabezpečeníSecurity considerations

Tato referenční architektura implementuje více úrovní zabezpečení:This reference architecture implements multiple levels of security:

  • Internetový nástroj pro vyrovnávání zatížení směruje žádosti na síťová virtuální zařízení v podsíti příchozích přenosů ve veřejné hraniční síti a jenom na porty, které potřebuje daná aplikace.The Internet facing load balancer directs requests to the NVAs in the inbound public DMZ subnet, and only on the ports necessary for the application.
  • Pravidla NSG podsítí příchozích a odchozích přenosů ve veřejné hraniční síti zabraňují tomu, aby došlo k ohrožení zabezpečení síťových virtuálních zařízení, protože blokují žádosti, které nevyhovují pravidlům NSG.The NSG rules for the inbound and outbound public DMZ subnets prevent the NVAs from being compromised, by blocking requests that fall outside of the NSG rules.
  • Konfigurace směrování Network Address Translation (NAT) pro síťová virtuální zařízení směruje příchozí žádosti na portu 80 a 443 do nástroje pro vyrovnávání zatížení ve webové vrstvě, ale žádosti na všech ostatních portech ignoruje.The NAT routing configuration for the NVAs directs incoming requests on port 80 and port 443 to the web tier load balancer, but ignores requests on all other ports.

Všechny příchozí žádosti na všech portech byste měli protokolovat.You should log all incoming requests on all ports. Protokoly pravidelně auditujte a dejte pozor na žádosti, které spadají mimo očekávané parametry, protože ty můžou znamenat pokusy o neoprávněná vniknutí.Regularly audit the logs, paying attention to requests that fall outside of expected parameters, as these may indicate intrusion attempts.

Nasazení řešeníDeploy the solution

Nasazení pro referenční architekturu implementující tato doporučení je k dispozici na GitHubu.A deployment for a reference architecture that implements these recommendations is available on GitHub.

PožadavkyPrerequisites

  1. Klonování, rozvětvit nebo stáhněte soubor zip pro referenční architektury úložiště GitHub.Clone, fork, or download the zip file for the reference architectures GitHub repository.

  2. Nainstalujte Azure CLI 2.0.Install Azure CLI 2.0.

  3. Nainstalujte stavební bloky Azure balíčku npm.Install the Azure building blocks npm package.

    npm install -g @mspnp/azure-building-blocks
    
  4. Z příkazového řádku bash řádku nebo řádku Powershellu se přihlaste ke svému účtu Azure následujícím způsobem:From a command prompt, bash prompt, or PowerShell prompt, sign into your Azure account as follows:

    az login
    

Nasazení prostředkůDeploy resources

  1. Přejděte /dmz/secure-vnet-dmz složky úložiště GitHub referenční architektury.Navigate to the /dmz/secure-vnet-dmz folder of the reference architectures GitHub repository.

  2. Spusťte následující příkaz:Run the following command:

    azbb -s <subscription_id> -g <resource_group_name> -l <region> -p onprem.json --deploy
    
  3. Spusťte následující příkaz:Run the following command:

    azbb -s <subscription_id> -g <resource_group_name> -l <region> -p secure-vnet-hybrid.json --deploy
    

Propojení místních a bran AzureConnect the on-premises and Azure gateways

V tomto kroku připojíte dvě brány místní sítě.In this step, you will connect the two local network gateways.

  1. Na webu Azure Portal přejděte do skupiny prostředků, kterou jste vytvořili.In the Azure Portal, navigate to the resource group that you created.

  2. Najít prostředek s názvem ra-vpn-vgw-pip a IP adresou uvedenou v kopírování přehled okno.Find the resource named ra-vpn-vgw-pip and copy the IP address shown in the Overview blade.

  3. Najít prostředek s názvem onprem-vpn-lgw.Find the resource named onprem-vpn-lgw.

  4. Klikněte na tlačítko konfigurace okno.Click the Configuration blade. V části IP adresu, vložte na IP adresu z kroku 2.Under IP address, paste in the IP address from step 2.

    Snímek obrazovky pole IP adresy

  5. Klikněte na tlačítko Uložit a počkejte na dokončení operace.Click Save and wait for the operation to complete. Může trvat přibližně 5 minut.It can take about 5 minutes.

  6. Najít prostředek s názvem onprem-vpn-gateway1-pip.Find the resource named onprem-vpn-gateway1-pip. Zkopírujte IP adresou uvedenou v přehled okno.Copy the IP address shown in the Overview blade.

  7. Najít prostředek s názvem ra-vpn-lgw.Find the resource named ra-vpn-lgw.

  8. Klikněte na tlačítko konfigurace okno.Click the Configuration blade. V části IP adresu, vložte na IP adresu z kroku 6.Under IP address, paste in the IP address from step 6.

  9. Klikněte na tlačítko Uložit a počkejte na dokončení operace.Click Save and wait for the operation to complete.

  10. Chcete-li ověřit připojení, přejděte připojení okno pro každou bránu.To verify the connection, go to the Connections blade for each gateway. Stav by měl být připojeno.The status should be Connected.

Ověřte, že síťové přenosy přicházejí webové vrstvyVerify that network traffic reaches the web tier

  1. Na webu Azure Portal přejděte do skupiny prostředků, kterou jste vytvořili.In the Azure Portal, navigate to the resource group that you created.

  2. Najít prostředek s názvem pub-dmz-lb, což je nástroj pro vyrovnávání zatížení před veřejnou hraniční síti.Find the resource named pub-dmz-lb, which is the load balancer in front of the public DMZ.

  3. Zkopírujte veřejný IP addess z přehled okna a otevřete tuto adresu ve webovém prohlížeči.Copy the public IP addess from the Overview blade and open this address in a web browser. Zobrazí výchozí Apache2 server domovskou stránku.You should see the default Apache2 server home page.

  4. Najít prostředek s názvem int-dmz-lb, což je nástroj pro vyrovnávání zatížení před privátní zónu DMZ.Find the resource named int-dmz-lb, which is the load balancer in front of the private DMZ. Zkopírujte privátní IP adresu z přehled okno.Copy the private IP address from the Overview blade.

  5. Vyhledejte virtuální počítač s názvem jb-vm1.Find the VM named jb-vm1. Klikněte na tlačítko připojit a použijte vzdálenou plochu pro připojení k virtuálnímu počítači.Click Connect and use Remote Desktop to connect to the VM. Uživatelské jméno a heslo jsou uvedeny v souboru onprem.json.The user name and password are specified in the onprem.json file.

  6. Z relace vzdálené plochy otevřete webový prohlížeč a přejděte na IP adresu z kroku 4.From the Remote Desktop Session, open a web browser and navigate to the IP address from step 4. Zobrazí výchozí Apache2 server domovskou stránku.You should see the default Apache2 server home page.