Konfigurowanie wymuszonego tunelowania przy użyciu klasycznego modelu wdrażaniaConfigure forced tunneling using the classic deployment model

Wymuszane tunelowanie umożliwia przekierowywanie lub „wymuszanie” przekazywania całego ruchu internetowego z powrotem do lokalizacji lokalnej za pośrednictwem tunelu VPN między lokacjami do celów przeprowadzania inspekcji.Forced tunneling lets you redirect or "force" all Internet-bound traffic back to your on-premises location via a Site-to-Site VPN tunnel for inspection and auditing. Jest to krytyczne wymaganie dotyczące zabezpieczeń w przypadku większości zasad IT dla przedsiębiorstw.This is a critical security requirement for most enterprise IT policies. Bez wymuszonego tunelowania ruch związany z Internetem z maszyn wirtualnych na platformie Azure będzie zawsze przepływał od infrastruktury sieci platformy Azure bezpośrednio z Internetu bez opcji, aby umożliwić inspekcję lub inspekcję ruchu.Without forced tunneling, Internet-bound traffic from your VMs in Azure will always traverse from Azure network infrastructure directly out to the Internet, without the option to allow you to inspect or audit the traffic. Nieautoryzowany dostęp do Internetu może potencjalnie prowadzić do ujawnienia informacji lub innych rodzajów naruszeń zabezpieczeń.Unauthorized Internet access can potentially lead to information disclosure or other types of security breaches.

Obecnie platforma Azure obsługuje dwa modele wdrażania: model wdrażania przy użyciu usługi Azure Resource Manager i model klasyczny.Azure currently works with two deployment models: Resource Manager and classic. Te dwa modele nie są ze sobą w pełni zgodne.The two models are not completely compatible with each other. Zanim zaczniesz, musisz wiedzieć, z którym modelem chcesz pracować.Before you begin, you need to know which model that you want to work in. Aby uzyskać więcej informacji na temat modeli wdrażania, zobacz Understanding deployment models (Omówienie modeli wdrażania).For information about the deployment models, see Understanding deployment models. Jeśli dopiero zaczynasz pracę na platformie Azure, zalecamy użycie modelu wdrażania przy użyciu usługi Resource Manager.If you are new to Azure, we recommend that you use the Resource Manager deployment model.

W tym artykule omówiono konfigurowanie wymuszonego tunelowania dla sieci wirtualnych utworzonych przy użyciu klasycznego modelu wdrażania.This article walks you through configuring forced tunneling for virtual networks created using the classic deployment model. Wymuszone tunelowanie można skonfigurować przy użyciu programu PowerShell, a nie za pośrednictwem portalu.Forced tunneling can be configured by using PowerShell, not through the portal. Jeśli chcesz skonfigurować Wymuszone tunelowanie dla Menedżer zasobówgo modelu wdrażania, wybierz pozycję Menedżer zasobów artykuł z poniższej listy rozwijanej:If you want to configure forced tunneling for the Resource Manager deployment model, select Resource Manager article from the following dropdown list:

Wymagania i zagadnieniaRequirements and considerations

Wymuszone tunelowanie na platformie Azure jest konfigurowane za pośrednictwem tras zdefiniowanych przez użytkownika sieci wirtualnej (UDR).Forced tunneling in Azure is configured via virtual network user-defined routes (UDR). Przekierowywanie ruchu do lokacji lokalnej jest wyrażone jako trasa domyślna do bramy sieci VPN platformy Azure.Redirecting traffic to an on-premises site is expressed as a Default Route to the Azure VPN gateway. W poniższej sekcji wymieniono bieżące ograniczenie tabeli routingu i trasy dla Virtual Network platformy Azure:The following section lists the current limitation of the routing table and routes for an Azure Virtual Network:

  • Każda podsieć sieci wirtualnej ma wbudowaną, systemową tabelę routingu.Each virtual network subnet has a built-in, system routing table. Tabela routingu systemu zawiera trzy następujące grupy tras:The system routing table has the following three groups of routes:

    • Lokalne trasy sieci wirtualnej: Bezpośrednio do docelowych maszyn wirtualnych w tej samej sieci wirtualnej.Local VNet routes: Directly to the destination VMs in the same virtual network.
    • Trasy lokalne: Z bramą sieci VPN platformy Azure.On-premises routes: To the Azure VPN gateway.
    • Trasa domyślna: Bezpośrednio z Internetem.Default route: Directly to the Internet. Pakiety przeznaczone dla prywatnych adresów IP, które nie są objęte poprzednimi dwiema trasami, zostaną usunięte.Packets destined to the private IP addresses not covered by the previous two routes will be dropped.
  • Dzięki wykorzystaniu tras zdefiniowanych przez użytkownika można utworzyć tabelę routingu w celu dodania trasy domyślnej, a następnie skojarzyć tabelę routingu z podsieciami sieci wirtualnej w celu włączenia wymuszonego tunelowania w tych podsieciach.With the release of user-defined routes, you can create a routing table to add a default route, and then associate the routing table to your VNet subnet(s) to enable forced tunneling on those subnets.

  • Należy ustawić "domyślną lokację" między lokacjami lokalnymi między różnymi lokalizacjami połączonymi z siecią wirtualną.You need to set a "default site" among the cross-premises local sites connected to the virtual network.

  • Wymuszone tunelowanie musi być skojarzone z siecią wirtualną, która ma bramę sieci VPN z routingiem dynamicznym (nie bramą statyczną).Forced tunneling must be associated with a VNet that has a dynamic routing VPN gateway (not a static gateway).

  • Wymuszone tunelowanie ExpressRoute nie jest konfigurowane za pośrednictwem tego mechanizmu, ale zamiast tego jest włączane poprzez anonsowanie trasy domyślnej za pośrednictwem sesji komunikacji równorzędnej BGP ExpressRoute.ExpressRoute forced tunneling is not configured via this mechanism, but instead, is enabled by advertising a default route via the ExpressRoute BGP peering sessions. Aby uzyskać więcej informacji, zobacz co to jest ExpressRoute?.For more information, see the What is ExpressRoute?.

Przegląd konfiguracjiConfiguration overview

W poniższym przykładzie nie jest wymuszane tunelowanie podsieci frontonu.In the following example, the Frontend subnet is not forced tunneled. Obciążenia w podsieci frontonu mogą nadal akceptować i odpowiadać na żądania klientów bezpośrednio z Internetu.The workloads in the Frontend subnet can continue to accept and respond to customer requests from the Internet directly. Tunele warstwy środkowej i zaplecza są wymuszone.The Mid-tier and Backend subnets are forced tunneled. Wszystkie połączenia wychodzące z tych dwóch podsieci do Internetu zostaną wymuszone lub przekierowane z powrotem do lokacji lokalnej za pośrednictwem jednego z tuneli sieci VPN S2S.Any outbound connections from these two subnets to the Internet will be forced or redirected back to an on-premises site via one of the S2S VPN tunnels.

Dzięki temu można ograniczyć i sprawdzić dostęp do Internetu z maszyn wirtualnych lub usług w chmurze na platformie Azure, pozostawiając jednocześnie wymaganą architekturę usługi wielowarstwowej.This allows you to restrict and inspect Internet access from your virtual machines or cloud services in Azure, while continuing to enable your multi-tier service architecture required. Można również zastosować Wymuszone tunelowanie do całych sieci wirtualnych, jeśli w sieciach wirtualnych nie ma obciążeń mających dostęp do Internetu.You also can apply forced tunneling to the entire virtual networks if there are no Internet-facing workloads in your virtual networks.

Wymuszone tunelowanie

Wymagania wstępnePrerequisites

Przed rozpoczęciem konfiguracji sprawdź, czy dysponujesz następującymi elementami:Verify that you have the following items before beginning configuration:

  • Subskrypcja platformy Azure.An Azure subscription. Jeśli nie masz jeszcze subskrypcji platformy Azure, możesz aktywować korzyści dla subskrybentów MSDN lub utworzyć bezpłatne konto.If you don't already have an Azure subscription, you can activate your MSDN subscriber benefits or sign up for a free account.
  • Skonfigurowana Sieć wirtualna.A configured virtual network.
  • Podczas pracy z klasycznym modelem wdrażania nie można używać Azure Cloud Shell.When working with the classic deployment model, you can't use Azure Cloud Shell. Zamiast tego należy lokalnie zainstalować najnowszą wersję poleceń cmdlet programu PowerShell dla usługi Azure Service Management (SM) na komputerze.Instead, you must install the latest version of the Azure Service Management (SM) PowerShell cmdlets locally on your computer. Te polecenia cmdlet różnią się od AzureRM lub AZ poleceń cmdlet.These cmdlets are different from the AzureRM or Az cmdlets. Aby zainstalować polecenia cmdlet narzędzia SM, zobacz Instalowanie poleceń cmdlet programu Service Management.To install the SM cmdlets, see Install Service Management cmdlets. Aby uzyskać więcej informacji na temat ogólnie Azure PowerShell, zapoznaj się z dokumentacją Azure PowerShell.For more information about Azure PowerShell in general, see the Azure PowerShell documentation.

Konfigurowanie wymuszonego tunelowaniaConfigure forced tunneling

Poniższa procedura pomoże Ci określić Wymuszone tunelowanie dla sieci wirtualnej.The following procedure will help you specify forced tunneling for a virtual network. Kroki konfiguracji odpowiadają plikowi konfiguracji sieci wirtualnej.The configuration steps correspond to the VNet network configuration file. W tym przykładzie Sieć wirtualna "wielowarstwowa" sieci wirtualnej ma trzy podsieci: "fronton", "MidTier" i "zaplecze" z czterema połączeniami między różnymi lokalizacjami: "DefaultSiteHQ" i trzema gałęziami.In this example, the virtual network 'MultiTier-VNet' has three subnets: 'Frontend', 'Midtier', and 'Backend' subnets, with four cross premises connections: 'DefaultSiteHQ', and three Branches.

<VirtualNetworkSite name="MultiTier-VNet" Location="North Europe">
     <AddressSpace>
      <AddressPrefix>10.1.0.0/16</AddressPrefix>
        </AddressSpace>
        <Subnets>
          <Subnet name="Frontend">
            <AddressPrefix>10.1.0.0/24</AddressPrefix>
          </Subnet>
          <Subnet name="Midtier">
            <AddressPrefix>10.1.1.0/24</AddressPrefix>
          </Subnet>
          <Subnet name="Backend">
            <AddressPrefix>10.1.2.0/23</AddressPrefix>
          </Subnet>
          <Subnet name="GatewaySubnet">
            <AddressPrefix>10.1.200.0/28</AddressPrefix>
          </Subnet>
        </Subnets>
        <Gateway>
          <ConnectionsToLocalNetwork>
            <LocalNetworkSiteRef name="DefaultSiteHQ">
              <Connection type="IPsec" />
            </LocalNetworkSiteRef>
            <LocalNetworkSiteRef name="Branch1">
              <Connection type="IPsec" />
            </LocalNetworkSiteRef>
            <LocalNetworkSiteRef name="Branch2">
              <Connection type="IPsec" />
            </LocalNetworkSiteRef>
            <LocalNetworkSiteRef name="Branch3">
              <Connection type="IPsec" />
            </LocalNetworkSiteRef>
        </Gateway>
      </VirtualNetworkSite>
    </VirtualNetworkSite>

Poniższe kroki spowodują ustawienie "DefaultSiteHQ" jako domyślnego połączenia z lokacją dla wymuszonego tunelowania oraz skonfigurowanie MidTier i podsieci zaplecza do korzystania z wymuszonego tunelowania.The following steps will set the 'DefaultSiteHQ' as the default site connection for forced tunneling, and configure the Midtier and Backend subnets to use forced tunneling.

  1. Otwórz konsolę programu PowerShell z podwyższonym poziomem uprawnień.Open your PowerShell console with elevated rights. Połącz się z kontem przy użyciu poniższego przykładu:Connect to your account using the following example:

    Add-AzureAccount
    
  2. Utwórz tabelę routingu.Create a routing table. Użyj następującego polecenia cmdlet, aby utworzyć tabelę tras.Use the following cmdlet to create your route table.

    New-AzureRouteTable –Name "MyRouteTable" –Label "Routing Table for Forced Tunneling" –Location "North Europe"
    
  3. Dodaj domyślną trasę do tabeli routingu.Add a default route to the routing table.

    Poniższy przykład dodaje trasę domyślną do tabeli routingu utworzonej w kroku 1.The following example adds a default route to the routing table created in Step 1. Należy zauważyć, że jedyną obsługiwaną trasą jest prefiks docelowy "0.0.0.0/0" do skoku "bramy vpngateway".Note that the only route supported is the destination prefix of "0.0.0.0/0" to the "VPNGateway" NextHop.

    Get-AzureRouteTable -Name "MyRouteTable" | Set-AzureRoute –RouteTable "MyRouteTable" –RouteName "DefaultRoute" –AddressPrefix "0.0.0.0/0" –NextHopType VPNGateway
    
  4. Skojarz tabelę routingu z podsieciami.Associate the routing table to the subnets.

    Po utworzeniu tabeli routingu i dodaniu trasy Użyj poniższego przykładu, aby dodać lub skojarzyć tabelę tras z podsiecią wirtualną.After a routing table is created and a route added, use the following example to add or associate the route table to a VNet subnet. Przykład dodaje tabelę tras "MidTier" do podsieci zaplecza i sieci wirtualnej z obsługą wielowarstwowej warstwy wirtualnej.The example adds the route table "MyRouteTable" to the Midtier and Backend subnets of VNet MultiTier-VNet.

    Set-AzureSubnetRouteTable -VirtualNetworkName "MultiTier-VNet" -SubnetName "Midtier" -RouteTableName "MyRouteTable"
    Set-AzureSubnetRouteTable -VirtualNetworkName "MultiTier-VNet" -SubnetName "Backend" -RouteTableName "MyRouteTable"
    
  5. Przypisz domyślną lokację do wymuszonego tunelowania.Assign a default site for forced tunneling.

    W poprzednim kroku skrypty przykładowego polecenia cmdlet utworzyły tabelę routingu i skojarzono tabelę tras do dwóch podsieci sieci wirtualnej.In the preceding step, the sample cmdlet scripts created the routing table and associated the route table to two of the VNet subnets. Drugi krok polega na wybraniu lokacji lokalnej między połączeniami z wieloma lokacjami sieci wirtualnej jako domyślną lokacją lub tunelem.The remaining step is to select a local site among the multi-site connections of the virtual network as the default site or tunnel.

    $DefaultSite = @("DefaultSiteHQ")
    Set-AzureVNetGatewayDefaultSite –VNetName "MultiTier-VNet" –DefaultSite "DefaultSiteHQ"
    

Dodatkowe polecenia cmdlet programu PowerShellAdditional PowerShell cmdlets

Aby usunąć tabelę trasTo delete a route table

Remove-AzureRouteTable -Name <routeTableName>

Aby wyświetlić tabelę trasTo list a route table

Get-AzureRouteTable [-Name <routeTableName> [-DetailLevel <detailLevel>]]

Aby usunąć trasę z tabeli trasTo delete a route from a route table

Remove-AzureRouteTable –Name <routeTableName>

Aby usunąć trasę z podsieciTo remove a route from a subnet

Remove-AzureSubnetRouteTable –VirtualNetworkName <virtualNetworkName> -SubnetName <subnetName>

Aby wyświetlić tabelę tras skojarzoną z podsieciąTo list the route table associated with a subnet

Get-AzureSubnetRouteTable -VirtualNetworkName <virtualNetworkName> -SubnetName <subnetName>

Aby usunąć domyślną lokację z wirtualnej bramy sieci VPNTo remove a default site from a VNet VPN gateway

Remove-AzureVnetGatewayDefaultSite -VNetName <virtualNetworkName>