將 VPN 閘道連線至多個內部部署原則式 VPN 裝置
本文將協助您運用 S2S VPN 連線上的自訂 IPsec/IKE 原則,設定以 Azure 路由為基礎的 VPN 閘道連線至多個內部部署以原則為基礎的 VPN 裝置。 本文中的步驟會使用 Azure PowerShell。
關於以原則為基礎的 VPN 閘道和以路由為基礎的 VPN 閘道
原則式 VPN 裝置與以路由為基礎的 VPN 裝置,其差異在於如何於連線上設定 IPsec 流量選取器:
- 以原則為基礎的 VPN 裝置使用這兩個網路的前置詞組合,定義如何透過 IPsec 通道來加密/解密流量。 它通常內建在執行封包篩選的防火牆裝置上。 IPsec 通道加密和解密會新增至封包篩選和處理引擎。
- 以路由為基礎的 VPN 裝置使用任何對任何 (萬用字元) 流量選取器,並讓路由/轉接資料表將流量導向到不同 IPsec 通道。 它通常內建在路由器平台上,其中,每個 IPsec 通道都會建模為網路介面或 VTI (虛擬通道介面)。
下列各圖反白顯示兩個模型:
以原則為基礎的 VPN 範例
以路由為基礎的 VPN 範例
以原則為基礎的 VPN 的 Azure 支援
Azure 目前支援兩種 VPN 閘道模式:以路由為基礎的 VPN 閘道和以原則為基礎的 VPN 閘道。 它們內建在不同內部平台上,因而導致不同的規格。 如需閘道、輸送量和連線的詳細資訊,請參閱關於 VPN 閘道設定。
閘道 VPN 類型 | 閘道 SKU | 支援的 IKE 版本 |
---|---|---|
原則型閘道 | 基本 | IKEv1 |
路由型閘道 | 基本 | IKEv2 |
路由型閘道 | VpnGw1, VpnGw2, VpnGw3, VpnGw4, VpnGw5 | IKEv1 和 IKEv2 |
路由型閘道 | VpnGw1AZ, VpnGw2AZ, VpnGw3AZ, VpnGw4AZ, VpnGw5AZ | IKEv1 和 IKEv2 |
之前,您在使用原則型 VPN 時,只能使用原則型 VPN 閘道基本 SKU,而且只能連線到 1 個內部部署 VPN/防火牆裝置。 現在,您可以利用自訂 IPsec/IKE 原則,使用路由型 VPN 閘道連線到多個原則型 VPN/防火牆裝置。 若要使用路由型 VPN 閘道建立原則型 VPN 連線,請將路由型 VPN 閘道設定為使用前置詞型流量選取器與「PolicyBasedTrafficSelectors」選項。
考量
若要啟用這個連線,內部部署以原則為基礎的 VPN 裝置必須支援 IKEv2 連線至以 Azure 路由為基礎的 VPN 閘道。 確認您的 VPN 裝置規格。
使用這種機制透過以原則為基礎的 VPN 裝置所連線的內部部署網路,只能連線至 Azure 虛擬網路;其無法透過相同的 Azure VPN 閘道轉換到其他內部部署網路或虛擬網路。
設定選項是自訂 IPsec/IKE 連線原則的一部分。 如果您啟用以原則為基礎的流量選取器選項,則必須指定完整原則 (IPsec/IKE 加密及完整性演算法、金鑰長度和 SA 存留期)。
下圖顯示透過 VPN 閘道的轉換路由為何不適用於以原則為基礎的選項:
如圖所示,Azure VPN 閘道會有從虛擬網路到每個內部部署網路前置詞的流量選取器,但不是跨連線前置詞。 例如,內部部署網站 2、網站 3 和網站 4 分別可以與 VNet1 通訊,但無法透過 Azure VPN 閘道彼此連線。 此圖顯示此設定下不適用於 Azure VPN 閘道的跨連線流量選取器。
工作流程
本文中的指示遵循設定 S2S 或 VNet 對 VNet 連線的 IPsec/IKE 原則中所述的相同範例,以建立 S2S VPN 連線。 如下圖所示:
若要啟用連線,請使用下列工作流程:
- 建立跨單位連線的虛擬網路、VPN 閘道和區域網路閘道。
- 建立 IPsec/IKE 原則。
- 如果您建立 S2S 或 VNet 對 VNet 連線,並在連線上啟用原則式流量選取器,請套用該原則。
- 如果已經建立連線,您可以套用原則,或將其更新為現有連線。
啟用原則式流量選取器
本節說明如何在連線上啟用原則式流量選取器。 請確定您已完成設定 IPsec/IKE 原則文章的第 3 部分。 本文中的步驟會使用相同的參數。
建立虛擬網路、VPN 閘道和區域網路閘道
連線至您的訂用帳戶。 如果您是在本機電腦上執行 PowerShell,請使用 Connect-AzAccount Cmdlet 登入。 或者,改為在瀏覽器中使用 Azure Cloud Shell。
宣告變數。 針對此練習,我們使用下列變數:
$Sub1 = "<YourSubscriptionName>" $RG1 = "TestPolicyRG1" $Location1 = "East US 2" $VNetName1 = "TestVNet1" $FESubName1 = "FrontEnd" $BESubName1 = "Backend" $GWSubName1 = "GatewaySubnet" $VNetPrefix11 = "10.11.0.0/16" $VNetPrefix12 = "10.12.0.0/16" $FESubPrefix1 = "10.11.0.0/24" $BESubPrefix1 = "10.12.0.0/24" $GWSubPrefix1 = "10.12.255.0/27" $DNS1 = "8.8.8.8" $GWName1 = "VNet1GW" $GW1IPName1 = "VNet1GWIP1" $GW1IPconf1 = "gw1ipconf1" $Connection16 = "VNet1toSite6" $LNGName6 = "Site6" $LNGPrefix61 = "10.61.0.0/16" $LNGPrefix62 = "10.62.0.0/16" $LNGIP6 = "131.107.72.22"
建立資源群組。
New-AzResourceGroup -Name $RG1 -Location $Location1
使用下列範例來建立有三個子網路的虛擬網路 TestVNet1 和 VPN 閘道。 如果您想要替代值,請務必將閘道子網路命名為 'GatewaySubnet'。 如果您將其命名為其他名稱,閘道建立會失敗。
$fesub1 = New-AzVirtualNetworkSubnetConfig -Name $FESubName1 -AddressPrefix $FESubPrefix1 $besub1 = New-AzVirtualNetworkSubnetConfig -Name $BESubName1 -AddressPrefix $BESubPrefix1 $gwsub1 = New-AzVirtualNetworkSubnetConfig -Name $GWSubName1 -AddressPrefix $GWSubPrefix1 New-AzVirtualNetwork -Name $VNetName1 -ResourceGroupName $RG1 -Location $Location1 -AddressPrefix $VNetPrefix11,$VNetPrefix12 -Subnet $fesub1,$besub1,$gwsub1 $gw1pip1 = New-AzPublicIpAddress -Name $GW1IPName1 -ResourceGroupName $RG1 -Location $Location1 -AllocationMethod Dynamic $vnet1 = Get-AzVirtualNetwork -Name $VNetName1 -ResourceGroupName $RG1 $subnet1 = Get-AzVirtualNetworkSubnetConfig -Name "GatewaySubnet" -VirtualNetwork $vnet1 $gw1ipconf1 = New-AzVirtualNetworkGatewayIpConfig -Name $GW1IPconf1 -Subnet $subnet1 -PublicIpAddress $gw1pip1 New-AzVirtualNetworkGateway -Name $GWName1 -ResourceGroupName $RG1 -Location $Location1 -IpConfigurations $gw1ipconf1 -GatewayType Vpn -VpnType RouteBased -GatewaySku VpnGw1 New-AzLocalNetworkGateway -Name $LNGName6 -ResourceGroupName $RG1 -Location $Location1 -GatewayIpAddress $LNGIP6 -AddressPrefix $LNGPrefix61,$LNGPrefix62
使用 IPsec/IKE 原則建立 S2S VPN 連線
建立 IPsec/IKE 原則。
重要
您需要建立 IPsec/IKE 原則,才能在連線上啟用 "UsePolicyBasedTrafficSelectors" 選項。
下列範例會使用這些演算法和參數來建立 IPsec/IKE 原則:
- IKEv2:AES256、SHA384、DHGroup24
- IPsec:AES256、SHA256、PFS 無、SA 存留期 14400 秒和 102400000 KB
$ipsecpolicy6 = New-AzIpsecPolicy -IkeEncryption AES256 -IkeIntegrity SHA384 -DhGroup DHGroup24 -IpsecEncryption AES256 -IpsecIntegrity SHA256 -PfsGroup None -SALifeTimeSeconds 14400 -SADataSizeKilobytes 102400000
使用原則式流量選取器和 IPsec/IKE 原則建立 S2S VPN 連線,並套用在上一個步驟中建立的 IPsec/IKE 原則。 請注意,使用額外參數 "-UsePolicyBasedTrafficSelectors $True" 可在連線上啟用原則式流量選取器。
$vnet1gw = Get-AzVirtualNetworkGateway -Name $GWName1 -ResourceGroupName $RG1 $lng6 = Get-AzLocalNetworkGateway -Name $LNGName6 -ResourceGroupName $RG1 New-AzVirtualNetworkGatewayConnection -Name $Connection16 -ResourceGroupName $RG1 -VirtualNetworkGateway1 $vnet1gw -LocalNetworkGateway2 $lng6 -Location $Location1 -ConnectionType IPsec -UsePolicyBasedTrafficSelectors $True -IpsecPolicies $ipsecpolicy6 -SharedKey 'AzureA1b2C3'
完成步驟後,S2S VPN 連線將會使用所定義的 IPsec/IKE 原則,並在連線上啟用以原則為基礎的流量選取器。 您可以重複相同的步驟,以從相同的 Azure VPN 閘道將更多的連線新增至其他內部部署以原則為基礎的 VPN 裝置。
若要更新原則式流量選取器
本節將示範如何更新現有 S2S VPN 連線的以原則為基礎的流量選取器選項。
取得連線資源。
$RG1 = "TestPolicyRG1" $Connection16 = "VNet1toSite6" $connection6 = Get-AzVirtualNetworkGatewayConnection -Name $Connection16 -ResourceGroupName $RG1
檢視原則式流量選取器選項 下行將說明是否將以原則為基礎的流量選取器用於連線:
$connection6.UsePolicyBasedTrafficSelectors
如果該行傳回 "True",則已在連線上設定以原則為基礎的流量選取器;否則,它會傳回 "False"。
取得連線資源之後,您可以啟用或停用連線上的原則式流量選取器。
若要啟用
下列範例會啟用以原則為基礎的流量選取器選項,但 IPsec/IKE 原則保留不變:
$RG1 = "TestPolicyRG1" $Connection16 = "VNet1toSite6" $connection6 = Get-AzVirtualNetworkGatewayConnection -Name $Connection16 -ResourceGroupName $RG1 Set-AzVirtualNetworkGatewayConnection -VirtualNetworkGatewayConnection $connection6 -UsePolicyBasedTrafficSelectors $True
若要停用
下列範例會停用以原則為基礎的流量選取器選項,但 IPsec/IKE 原則保留不變:
$RG1 = "TestPolicyRG1" $Connection16 = "VNet1toSite6" $connection6 = Get-AzVirtualNetworkGatewayConnection -Name $Connection16 -ResourceGroupName $RG1 Set-AzVirtualNetworkGatewayConnection -VirtualNetworkGatewayConnection $connection6 -UsePolicyBasedTrafficSelectors $False
下一步
一旦完成您的連接,就可以將虛擬機器加入您的虛擬網路。 請參閱 建立網站的虛擬機器 以取得相關步驟。
如需自訂 IPsec/IKE 原則的詳細資訊,也請檢閱設定 S2S VPN 或 VNet 對 VNet 連線的 IPsec/IKE 原則。