Konfigurera framtvingad tunneling med den klassiska distributionsmodellen

Med tvingad tunneltrafik kan du omdirigera eller ”tvinga” all Internetbunden trafik tillbaka till din lokala plats via en plats-till-plats-VPN-tunnel för kontroll och granskning. Detta är ett kritiskt säkerhetskrav för de flesta företags IT-principer. Utan tvingad tunneltrafik passerar Internetbunden trafik från dina virtuella datorer i Azure alltid från Azure-nätverksinfrastrukturen direkt ut till Internet, utan alternativet att låta dig inspektera eller granska trafiken. Obehörig Internetåtkomst kan potentiellt leda till avslöjande av information eller andra typer av säkerhetsintrång.

Azure fungerar för nuvarande med två distributionsmodeller: Resource Manager och klassisk. De två modellerna är inte helt kompatibla med varandra. Innan du börjar behöver du veta vilken modell som du vill arbeta i. Mer information om distributionsmodellerna finns i Förstå distributionsmodeller. Om du inte har erfarenhet av Azure rekommenderar vi att du använder Resource Manager-distributionsmodellen.

Den här artikeln beskriver hur du konfigurerar tvingad tunneling för virtuella nätverk som skapats med hjälp av den klassiska distributionsmodellen. Tvingad tunneling kan konfigureras med hjälp av PowerShell, inte via portalen. Om du vill konfigurera tvingad tunneling Resource Manager distributionsmodellenväljer du Resource Manager i följande listrutan:

Krav och överväganden

Tvingad tunneltrafik i Azure konfigureras via användardefinierade vägar för virtuella nätverk (UDR). Omdirigering av trafik till en lokal plats uttrycks som en standardväg till Azure VPN-gatewayen. I följande avsnitt visas den aktuella begränsningen för routningstabellen och vägarna för en Azure-Virtual Network:

  • Varje virtuellt nätverksundernät har en inbyggd systemroutningstabell. Systemruttertabellen har följande tre grupper med vägar:

    • Lokala VNet-vägar: Direkt till de virtuella måldatorerna i samma virtuella nätverk.
    • Lokala vägar: Till Azure VPN-gatewayen.
    • Standardväg: Direkt till Internet. Paket till de privata IP-adresser som inte omfattas av de föregående två vägarna tas bort.
  • Med lanseringen av användardefinierade vägar kan du skapa en routningstabell för att lägga till en standardväg och sedan associera routningstabellen till dina VNet-undernät för att aktivera tvingad tunnel i dessa undernät.

  • Du måste ange en "standardplats" bland de lokala platser som är anslutna till det virtuella nätverket.

  • Tvingad tunneling måste associeras med ett VNet som har en VPN-gateway med dynamisk routning (inte en statisk gateway).

  • Tvingad Tunneling i ExpressRoute konfigureras inte via den här mekanismen, utan aktiveras i stället genom annonsering av en standardväg via ExpressRoute BGP-peeringsessioner. Mer information finns i Vad är ExpressRoute?.

Översikt över konfiguration

I följande exempel är undernätet i frontend inte tvingad tunnel. Arbetsbelastningarna i undernätet i frontend kan fortsätta att acceptera och svara på kundförfrågningar direkt från Internet. Undernäten Mid-tier och Backend tvingad tunnel. Alla utgående anslutningar från dessa två undernät till Internet tvingas eller omdirigeras tillbaka till en lokal plats via någon av S2S VPN-tunnlarna.

På så sätt kan du begränsa och inspektera Internetåtkomst från dina virtuella datorer eller molntjänster i Azure, samtidigt som du fortsätter att aktivera din tjänstarkitektur med flera nivåer som krävs. Du kan också använda tvingad tunneling till hela virtuella nätverk om det inte finns några Internetriktade arbetsbelastningar i dina virtuella nätverk.

Tvingad tunneling

Förutsättningar

Kontrollera att du har följande innan du påbörjar konfigurationen:

  • En Azure-prenumeration. Om du inte har någon Azure-prenumeration kan du aktivera dina MSDN-prenumerantförmåner eller registrera dig för ett kostnadsfritt konto.
  • Ett konfigurerat virtuellt nätverk.
  • När du arbetar med den klassiska distributions modellen kan du inte använda Azure Cloud Shell. I stället måste du installera den senaste versionen av Azure Service Management (SM) PowerShell-cmdlets lokalt på datorn. Dessa cmdletar skiljer sig från AzureRM-eller AZ-cmdletarna. Information om hur du installerar SM-cmdlets finns i Installera Service Management-cmdletar. Mer information om Azure PowerShell i allmänhet finns i Azure PowerShell- dokumentationen.

Konfigurera tvingad tunneltrafik

Följande procedur hjälper dig att ange tvingad tunneltrafik för ett virtuellt nätverk. Konfigurationsstegen motsvarar konfigurationsfilen för det virtuella nätverket. I det här exemplet har det virtuella nätverket MultiTier-VNet tre undernät: "Frontend", "Midtier" och "Backend"-undernät, med fyra anslutningar mellan flera platser: DefaultSiteHQ och tre grenar.

<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>

Följande steg anger DefaultSiteHQ som standardplatsanslutning för tvingad tunneling och konfigurerar midtier- och backend-undernäten för att använda tvingad tunneling.

  1. Öppna PowerShell-konsolen med utökade rättigheter. Anslut till ditt konto med hjälp av följande exempel:

    Add-AzureAccount
    
  2. Skapa en routningstabell. Använd följande cmdlet för att skapa din vägtabell.

    New-AzureRouteTable –Name "MyRouteTable" –Label "Routing Table for Forced Tunneling" –Location "North Europe"
    
  3. Lägg till en standardväg i routningstabellen.

    I följande exempel läggs en standardväg till i routningstabellen som skapades i steg 1. Observera att den enda vägen som stöds är målprefixet "0.0.0.0/0" till "VPNGateway" NextHop.

    Get-AzureRouteTable -Name "MyRouteTable" | Set-AzureRoute –RouteTable "MyRouteTable" –RouteName "DefaultRoute" –AddressPrefix "0.0.0.0/0" –NextHopType VPNGateway
    
  4. Associera routningstabellen med undernäten.

    När en routningstabell har skapats och en väg har lagts till använder du följande exempel för att lägga till eller associera routningstabellen till ett VNet-undernät. I exemplet läggs vägtabellen "MyRouteTable" till i undernäten Midtier och Backend i VNet MultiTier-VNet.

    Set-AzureSubnetRouteTable -VirtualNetworkName "MultiTier-VNet" -SubnetName "Midtier" -RouteTableName "MyRouteTable"
    Set-AzureSubnetRouteTable -VirtualNetworkName "MultiTier-VNet" -SubnetName "Backend" -RouteTableName "MyRouteTable"
    
  5. Tilldela en standardplats för tvingad tunneling.

    I föregående steg skapade exempel-cmdlet-skripten routningstabellen och associerade routningstabellen till två av VNet-undernäten. Det återstående steget är att välja en lokal plats bland flera platsanslutningar i det virtuella nätverket som standardplats eller tunnel.

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

Ytterligare PowerShell-cmdlets

Ta bort en vägtabell

Remove-AzureRouteTable -Name <routeTableName>

Visa en lista över en vägtabell

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

Ta bort en väg från en vägtabell

Remove-AzureRouteTable –Name <routeTableName>

Ta bort en väg från ett undernät

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

Visa en lista över den vägtabell som är associerad med ett undernät

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

Ta bort en standardplats från en VNet VPN-gateway

Remove-AzureVnetGatewayDefaultSite -VNetName <virtualNetworkName>