- 目录
1 Azure Site to Site VPN配置前的准备 1
2 配置Azure site to site VPN网络 1
Azure Site to Site VPN配置前的准备
用户在构建自己云计算解决方案的时候,往往会选择私有云或者公有云来做部署,但在一些场景下,用户更加希望通过混合云的方案来满足自己的业务需求。Azure为混合云的部署提供多种不同的连接方案,最常见的是P2S VPN,S2S VPN, ExpressRoute(专线路由),本文来介绍一下S2S VPN的实际配置案例:
示意图:
设备兼容
在开始正式配置之前,你需要一些最基本的条件需要满足,才能配置你的Site to Site VPN连接:
确保你的VPN设备在微软的VPN设备兼容列表里面,设备兼容列表请参照:
如果你的设备不在上述兼容列表中,也并不代表就不能连接,比如一些客户使用的是华为,或者H3C的设备,经过测试也是可以连接的,原则上如果你的VPN设备能够满足网关的一些基本要求,应该都是可以理解的,具体的情况需要你联系你的网络管理员进行测试,VPN网关的基本要求如下:
网络要求和注意事项
- Azure的VPN Gateway需要和你的VPN设备建立连接,确保你的VPN设备在NAT前面,并且有一个面向互联网可连接的公网IP地址
- 提前规划好自己的IP地址分配,在进行VPN连接后你自己数据中心的IP地址段和Azure VPN端的IP地址段不能重叠
- 当然对于Azure用户来讲,你必须有Azure的账户和订阅
-
检查下路由的兼容性,如果设备并不支持动态路由,那么这就意味着:
你在配置网关的时候,只能配置静态路由网关
静态路由网关不支持多个站点的VPN连接
- 确定你的VPN加密域(VPN Encryption Domain),两边必须完全一致,否则无法连接
-
配置Azure site to site VPN网络
添加虚拟网络:
首先配置本地网络,什么是本地网络呢?如果你在Azure上配置,本地网络意思是你自己的数据中心需要和Azure进行连接的网络段,而不是Azure上的网络段,这一点一定要清楚,不能配错,
- 进入Azure管理界面,单击新建-》网络服务虚拟网络-》添加本地网络:
- 添加本地网络名称,VPN设备的IP地址请找你的网络管理员获得,如果暂时不知道也可以略过:
- 设置本地的网络地址空间:
- 本地设置的地址空间必须和你实际数据中心的完全一致
- 提前配置好地址段,Azure端地址和自己数据中心地址段不可以重叠
- 可以使用不同的地址段,例如公网地址,都可以支持
- 新建虚拟网络,选择"新建"-》"自定义创建"-》输入网络名称,下一步:
- 输入需要创建的虚拟网络的名称,选择虚拟网络所在地区,本测试选择中国东部,然后下一步:
- 在本配置页中,你可以看到有"站点到站点"的配置选项,勾选,并选择你在步1 中创建的本地网络:
- 配置Azure上虚拟网络的地址空间,需要注意的是,Azure上地址空间的配置需要同步 给用户数据中心的网络管理人员,注意事项:
- 地址空间不可重叠
- 注意添加网关子网
- 完成创建后,进入myvpn的仪表板界面,你会看到目前VPN没有连接,需要创建网关:
-
配置VPN网关
创建网关
创建网关的时候需要注意,看看你的设备是否支持动态网关,不过不支持就只能创建静态网关。
配置vpn网关
一旦VPN的网关建立,你就会看到如下界面,意味着Azure端的网关已经就绪,这个时候首先记录下网关的IP地址,如下:
VPN硬件设备配置
下载对应你的型号的交换机的配置脚本,便于你的数据中心的网络管理员进行配置:
(当然您也可以通过手动命令方式配置对端的硬件设备)
获取共享密钥
为了确保广域网中的数据通信安全AzureVPN也支持加密通讯:
首先您需要向网络管理员提供以下信息:
- Azure VPN网关地址
- Azure上下载的对用交换机配置脚本
- 本地VPN设备连接到Azure上的共享密钥
在某些情况下,由于不同公司网络管理的要求,并不会使用Azure提供的共享密钥,而是由用户提供共享密钥,只能使用Powershell来更新Azure上VPN的共享密钥:
PS C:\> Get-AzureVNetGateway -VNetName myvpn
PS C:\> Set-AzureVNetGatewayKey -VNetName myvpn -LocalNetworkSiteName myLocalNetwork -SharedKey YOURSHAREDKEY
-
硬件设备VPN配置
下载配置文件
根据能公司内部的网络VPN或者防火墙设备下载相对应的配置文件。
事先可以询问设备供应商搞清楚设备型号及ios版本
配置site to site vpn
以下是juniper 设备配置内容供参考Microsoft Corporation
# Windows Azure Virtual Network
# This configuration template applies to Juniper SSG Series Secure Services Gateway running ScreenOS 6.2.
# It configures an IPSec VPN tunnel connecting your on-premise VPN device with the Azure gateway.
# !!! 1. Policy-based VPN configuration is not supported.
# !!! 2. Only 1 subnet is allowed for both your on-premise network and your azure virtual network.
# !!! 3. To support multiple subnets, please consider using Dynamic Routing Gateway.
# ---------------------------------------------------------------------------------------------------------------------
# Virtual tunnel interface configuration
set interface tunnel.1 zone untrust
set interface tunnel.1 ip unnumbered interface "ethernet0/1"
set route 10.100.0.0/24 interface tunnel.1
# ---------------------------------------------------------------------------------------------------------------------
# Internet Key Exchange (IKE) configuration
#
# This section specifies the authentication, encryption, hashing, and lifetime parameters for the Phase 1 negotiation
# and the main mode security association. We also specify the IP address of the peer of your on-premise VPN device
# (which is the Azure Gateway) here.
set ike p1-proposal "azure-proposal" preshare group2 esp aes256 sha-1 seconds 28800
set ike gateway azure-gateway address 42.159.225.139 main outgoing-interface "ethernet0/1" preshare kYT5y8A3s3gHR5IO8UgOM1xyI2WKyVGi proposal azure-proposal
set ike gateway azure-gateway dpd-liveness interval 10
# ---------------------------------------------------------------------------------------------------------------------
# IPSec configuration
#
# This section specifies encryption, authentication, and lifetime properties for the Phase 2 negotiation and the quick
# mode security association. We also bind the IPSec policy to the virtual tunnel interface, through which cross-premise
# traffic will be transmitted.
set ike p2-proposal azure-ipsec-proposal no-pfs esp aes256 sha-1 seconds 3600
set vpn azure-ipsec-vpn gateway azure-gateway tunnel idletime 0 proposal azure-ipsec-proposal
set vpn azure-ipsec-vpn monitor optimized rekey
set vpn azure-ipsec-vpn proxy-id local-ip 192.168.0.0/19 remote-ip 10.100.0.0/24 "ANY"
set vpn azure-ipsec-vpn bind interface tunnel.1
# ---------------------------------------------------------------------------------------------------------------------
# ACL rules
#
# Proper ACL rules are needed for permitting cross-premise network traffic.
# You should also allow inbound UDP/ESP traffic for the interface which will be used for the IPSec tunnel.
set address trust onprem-networks 192.168.0.0/19
set address untrust azure-networks 10.100.0.0/24
set policy top from trust to untrust onprem-networks azure-networks any permit
set policy top from untrust to trust azure-networks onprem-networks any permit
# ---------------------------------------------------------------------------------------------------------------------
# TCPMSS clamping
#
# Adjust the TCPMSS value properly to avoid fragmentation
set flow vpn-tcp-mss 1350
save
在完成配置后Azure VPN 自动生效(大约5分钟内)
完成后的结果
内网服务器平Azure中的虚拟机