Konfigurace vynuceného tunelování
Vynucené tunelování umožňuje přesměrování nebo „vynucení“ směrování veškerého provozu vázaného na internet zpět do místního umístění prostřednictvím tunelu VPN typu site-to-site pro kontrolu a auditování. Toto je kritický požadavek na zabezpečení pro většinu podnikových zásad IT. Pokud vynucené tunelování nenakonfigurujete, provoz z vašich virtuálních počítače v Azure vázaný na internet vždy prochádí ze síťové infrastruktury Azure přímo z internetu, aniž by bylo možné povolit kontrolu nebo auditování provozu. Neoprávněný přístup k internetu může potenciálně vést ke zpřístupnění informací nebo jiným typům narušení zabezpečení.
Vynucené tunelování je možné nakonfigurovat pomocí Azure PowerShell. Není možné ho nakonfigurovat pomocí Azure Portal. Tento článek vám pomůže nakonfigurovat vynucené tunelování pro virtuální sítě vytvořené pomocí Resource Manager nasazení. Pokud chcete nakonfigurovat vynucené tunelování pro model nasazení Classic, podívejte se na stránku Vynucené tunelování – classic.
Informace o vynuceném tunelování
Následující diagram znázorňuje, jak funguje vynucené tunelování.
V tomto příkladu není podsíť front-endu vynuceně tunelována. Úlohy v podsíti Frontend mohou i nadále přijímat požadavky zákazníků z internetu a reagovat na ně přímo. Podsítě mid-tier a back-end jsou vynuceně tunelované. Všechna odchozí připojení z těchto dvou podsítí do internetu budou vynucena nebo přesměrována zpět do místní lokality prostřednictvím jednoho z tunelů VPN site-to-site (S2S).
To vám umožní omezit a kontrolovat přístup k internetu z vašich virtuálních počítačů nebo cloudových služeb v Azure a současně povolit požadovanou vícevrstvou architekturu služby. Pokud ve virtuálních sítích nejsou žádné úlohy s přístupem k internetu, můžete také použít vynucené tunelování na celé virtuální sítě.
Požadavky a důležité informace
Vynucené tunelování v Azure se konfiguruje pomocí vlastních tras definovaných uživatelem virtuální sítě. Přesměrování provozu do místní lokality se vyjadřuje jako výchozí trasa k bráně Azure VPN. Další informace o směrování definovaném uživatelem a virtuálních sítích najdete v tématu Vlastní trasy definované uživatelem.
Každá podsíť virtuální sítě má integrovanou systémovou směrovací tabulku. Systémová směrovací tabulka obsahuje následující tři skupiny tras:
- Místní trasy virtuální sítě: Přímo k cílovým virtuálním počítačům ve stejné virtuální síti.
- Místní trasy: Na bránu Azure VPN.
- Výchozí trasa: Přímo na internet. Pakety určené pro privátní IP adresy, na které se nevztahují předchozí dvě trasy, se zahodí.
Tento postup pomocí tras definovaných uživatelem (UDR) vytvoří směrovací tabulku pro přidání výchozí trasy a pak přidruží směrovací tabulku k podsíti virtuální sítě, aby bylo v těchto podsítích povoleno vynucené tunelování.
Vynucené tunelování musí být přidružené k virtuální síti, která má bránu VPN založenou na směrování. Musíte nastavit "výchozí lokalitu" mezi místními lokalitami připojenými k virtuální síti. Místní zařízení VPN musí být také nakonfigurované pomocí selektorů provozu 0.0.0.0/0.
Vynucené tunelování ExpressRoute není prostřednictvím tohoto mechanismu nakonfigurované, ale místo toho je povoleno inzerováním výchozí trasy prostřednictvím relací partnerského vztahu protokolu BGP ExpressRoute. Další informace najdete v dokumentaci k ExpressRoute.
Pokud máte VPN Gateway i bránu ExpressRoute nasazené ve stejné virtuální síti, uživatelsky definované trasy (UDR) už nejsou potřeba, protože brána ExpressRoute bude inzerovat nakonfigurovanou výchozí lokalitu do virtuální sítě.
Přehled konfigurace
Následující postup vám pomůže vytvořit skupinu prostředků a virtuální síť. Pak vytvoříte bránu VPN a nakonfigurujete vynucené tunelování. V tomto postupu má virtuální síť MultiTier-VNet tři podsítě: Frontend, Midtier a Backend se čtyřmi připojeními mezi místními sítěmi: DefaultSiteHQ a tři větve.
Kroky postupu nastaví DefaultSiteHQ jako výchozí připojení lokality pro vynucené tunelování a nakonfigurují podsítě Midtier a Backend tak, aby se vynucené tunelování používá.
Než začnete
Nainstalujte nejnovější verzi rutin PowerShellu pro Azure Resource Manager. Další informace o instalaci rutin prostředí PowerShell najdete v tématu Instalace a konfigurace Azure PowerShellu.
Důležité
Vyžaduje se instalace nejnovější verze rutin PowerShellu. V opačném případě se při spuštění některých rutin mohou zobrazit chyby ověřování.
Přihlášení
Pokud používáte PowerShell místně, otevřete konzolu PowerShellu se zvýšenými oprávněními a připojte se ke svému účtu Azure. Rutina Connect-AzAccount vás vyzve k zadání přihlašovacích údajů. Po ověření se stáhne nastavení vašeho účtu, aby bylo možné Azure PowerShell.
Pokud používáte Azure Cloud Shell prostředí PowerShell místně, budete si všimnout, že nemusíte spouštět rutinu Connect-AzAccount. Po výběru vyzkoušet se Azure Cloud Shell ke svému účtu Azure automaticky připojí.
Pokud používáte PowerShell místně, přihlaste se.
Connect-AzAccountPokud máte více než jedno předplatné, získejte seznam předplatných Azure.
Get-AzSubscriptionUrčete předplatné, které chcete použít.
Select-AzSubscription -SubscriptionName "Name of subscription"
Konfigurace vynuceného tunelování
Poznámka
Může se zobrazit upozornění typu Výstupní objekt této rutiny se bude upravovat v budoucí verzi. Toto je očekávané chování a tato upozornění můžete bezpečně ignorovat.
Vytvořte skupinu prostředků.
New-AzResourceGroup -Name 'ForcedTunneling' -Location 'North Europe'Vytvořte virtuální síť a zadejte podsítě.
$s1 = New-AzVirtualNetworkSubnetConfig -Name "Frontend" -AddressPrefix "10.1.0.0/24" $s2 = New-AzVirtualNetworkSubnetConfig -Name "Midtier" -AddressPrefix "10.1.1.0/24" $s3 = New-AzVirtualNetworkSubnetConfig -Name "Backend" -AddressPrefix "10.1.2.0/24" $s4 = New-AzVirtualNetworkSubnetConfig -Name "GatewaySubnet" -AddressPrefix "10.1.200.0/28" $vnet = New-AzVirtualNetwork -Name "MultiTier-VNet" -Location "North Europe" -ResourceGroupName "ForcedTunneling" -AddressPrefix "10.1.0.0/16" -Subnet $s1,$s2,$s3,$s4Vytvořte brány místní sítě.
$lng1 = New-AzLocalNetworkGateway -Name "DefaultSiteHQ" -ResourceGroupName "ForcedTunneling" -Location "North Europe" -GatewayIpAddress "111.111.111.111" -AddressPrefix "192.168.1.0/24" $lng2 = New-AzLocalNetworkGateway -Name "Branch1" -ResourceGroupName "ForcedTunneling" -Location "North Europe" -GatewayIpAddress "111.111.111.112" -AddressPrefix "192.168.2.0/24" $lng3 = New-AzLocalNetworkGateway -Name "Branch2" -ResourceGroupName "ForcedTunneling" -Location "North Europe" -GatewayIpAddress "111.111.111.113" -AddressPrefix "192.168.3.0/24" $lng4 = New-AzLocalNetworkGateway -Name "Branch3" -ResourceGroupName "ForcedTunneling" -Location "North Europe" -GatewayIpAddress "111.111.111.114" -AddressPrefix "192.168.4.0/24"Vytvořte směrovací tabulku a pravidlo směrování.
New-AzRouteTable –Name "MyRouteTable" -ResourceGroupName "ForcedTunneling" –Location "North Europe" $rt = Get-AzRouteTable –Name "MyRouteTable" -ResourceGroupName "ForcedTunneling" Add-AzRouteConfig -Name "DefaultRoute" -AddressPrefix "0.0.0.0/0" -NextHopType VirtualNetworkGateway -RouteTable $rt Set-AzRouteTable -RouteTable $rtPřidružte směrovací tabulku k podsíti Midtier a Backend.
$vnet = Get-AzVirtualNetwork -Name "MultiTier-Vnet" -ResourceGroupName "ForcedTunneling" Set-AzVirtualNetworkSubnetConfig -Name "MidTier" -VirtualNetwork $vnet -AddressPrefix "10.1.1.0/24" -RouteTable $rt Set-AzVirtualNetworkSubnetConfig -Name "Backend" -VirtualNetwork $vnet -AddressPrefix "10.1.2.0/24" -RouteTable $rt Set-AzVirtualNetwork -VirtualNetwork $vnetVytvořte bránu virtuální sítě. Vytvoření brány může obvykle trvat 45 minut nebo déle, a to v závislosti na vybrané skladové jednotce (SKU) brány. Pokud se zobrazí chyby ValidateSet týkající se hodnoty GatewaySKU, ověřte, že máte nainstalovanou nejnovější verzi rutin PowerShellu. Nejnovější verze rutin PowerShellu obsahuje nové ověřené hodnoty pro nejnovější skladové položky brány.
$pip = New-AzPublicIpAddress -Name "GatewayIP" -ResourceGroupName "ForcedTunneling" -Location "North Europe" -AllocationMethod Dynamic $gwsubnet = Get-AzVirtualNetworkSubnetConfig -Name "GatewaySubnet" -VirtualNetwork $vnet $ipconfig = New-AzVirtualNetworkGatewayIpConfig -Name "gwIpConfig" -SubnetId $gwsubnet.Id -PublicIpAddressId $pip.Id New-AzVirtualNetworkGateway -Name "Gateway1" -ResourceGroupName "ForcedTunneling" -Location "North Europe" -IpConfigurations $ipconfig -GatewayType Vpn -VpnType RouteBased -GatewaySku VpnGw1 -EnableBgp $falsePřiřaďte k bráně virtuální sítě výchozí lokalitu. -GatewayDefaultSite je parametr rutiny, který umožňuje, aby konfigurace vynuceného směrování fungovala, proto toto nastavení nakonfigurujte správně.
$LocalGateway = Get-AzLocalNetworkGateway -Name "DefaultSiteHQ" -ResourceGroupName "ForcedTunneling" $VirtualGateway = Get-AzVirtualNetworkGateway -Name "Gateway1" -ResourceGroupName "ForcedTunneling" Set-AzVirtualNetworkGatewayDefaultSite -GatewayDefaultSite $LocalGateway -VirtualNetworkGateway $VirtualGatewayNavázání připojení VPN site-to-site.
$gateway = Get-AzVirtualNetworkGateway -Name "Gateway1" -ResourceGroupName "ForcedTunneling" $lng1 = Get-AzLocalNetworkGateway -Name "DefaultSiteHQ" -ResourceGroupName "ForcedTunneling" $lng2 = Get-AzLocalNetworkGateway -Name "Branch1" -ResourceGroupName "ForcedTunneling" $lng3 = Get-AzLocalNetworkGateway -Name "Branch2" -ResourceGroupName "ForcedTunneling" $lng4 = Get-AzLocalNetworkGateway -Name "Branch3" -ResourceGroupName "ForcedTunneling" New-AzVirtualNetworkGatewayConnection -Name "Connection1" -ResourceGroupName "ForcedTunneling" -Location "North Europe" -VirtualNetworkGateway1 $gateway -LocalNetworkGateway2 $lng1 -ConnectionType IPsec -SharedKey "preSharedKey" New-AzVirtualNetworkGatewayConnection -Name "Connection2" -ResourceGroupName "ForcedTunneling" -Location "North Europe" -VirtualNetworkGateway1 $gateway -LocalNetworkGateway2 $lng2 -ConnectionType IPsec -SharedKey "preSharedKey" New-AzVirtualNetworkGatewayConnection -Name "Connection3" -ResourceGroupName "ForcedTunneling" -Location "North Europe" -VirtualNetworkGateway1 $gateway -LocalNetworkGateway2 $lng3 -ConnectionType IPsec -SharedKey "preSharedKey" New-AzVirtualNetworkGatewayConnection -Name "Connection4" -ResourceGroupName "ForcedTunneling" -Location "North Europe" -VirtualNetworkGateway1 $gateway -LocalNetworkGateway2 $lng4 -ConnectionType IPsec -SharedKey "preSharedKey" Get-AzVirtualNetworkGatewayConnection -Name "Connection1" -ResourceGroupName "ForcedTunneling"