- 项目
- 2017/07/11
- 6分钟可浏览
介绍
在本文中,我们将向您展示如何使用 MikroTik 路由器在 Azure 和本地位置之间设置 IPSec 站点到站点 VPN。几年前发布了另一篇关于同一主题的博客文章使用 Windows Azure 和 MikroTik (RouterOS) 创建站点到站点 VPN。但是,我们在本文中有一些重大更新。首先,我们将使用 Azure 资源管理器门户(https://portal.azure.com )设置站点到站点 VPN),而原始文章使用经典 Azure 门户。其次,这篇博文中的 VPN 网关是基于路由的,它将利用 IKE 版本 2 (IKEv2),而第一篇文章中的基于策略的网关利用了 IKE 版本 1 (IKEv1)。如果您不熟悉 IPSec 参数的术语,尤其是 IKEv2,请查看以下文档About VPN devices and IPsec/IKE parameters for Site-to-Site VPN Gateway connections。
设想
下面我们有一个分步介绍的场景图。
配置站点到站点 VPN 所需的上图中的相关信息。
蔚蓝的一面:
- VNET 子网:10.4.0.0/16
- Azure VPN网关公网IP:13.85.83.XX
本地方面:
- 子网:192.168.88.0/24
- On-Prem 网关的公共 IP:47.187.118.YY
Azure:配置基于路由的 IPSec 站点到站点 VPN
本节我们将逐步介绍如何在 Azure 端配置 Site-to-Site VPN。此处演示的步骤与官方文档中的相同:在 Azure 门户中创建站点到站点连接。因此,我们不会一步一步地介绍如何到达屏幕的具体步骤,您可以参考官方文档。此外,如果您已经熟悉这些步骤,请随意跳到下面的会话中:MikroTik(本地)配置 IPSec (IKEv2) 站点到站点 VPN。
1.创建虚拟网络
2. 指定 DNS 服务器(可选,此演示不需要)
3. 创建网关子网:
一种。选择网关子网
湾。添加网关子网。在这种情况下,我将使用 10.4.0.0/16 内的最终 255 网络创建 32 个分配给 VPN 网关的地址,子网为:10.4.255.0.27
4. 创建虚拟网络网关。重要的是要强调我们将使用 VPN 类型:基于路由 此外,对于您的实验室目的,您可以使用 SKU Basic,对于生产工作负载,建议至少使用标准 SKU。有关 VPN 网关大小的更多信息,请参阅:网关 SKU。
a) 创建名为 VNET1GW 的虚拟网关
b) 创建虚拟网络网关后,您可以看到状态以及将要使用的公共 IP:
5. 创建本地网络网关,需要您指定 VPN 设备的公共 IP (47.187.117.YY) 以及本地子网 (192.168.88.0/24)。
6. 配置您的 VPN 设备 – 请参阅部分: MikroTik (On-Premises) 配置 IPSec (IKEv2) Site-to-Site VPN。
7. 创建 VPN 连接
8.验证VPN连接
MikroTik(本地)配置 IPSec (IKEv2) 站点到站点 VPN
MikroTik RouterOS 有多种型号,并且有非常实惠的设备型号,您还可以使用它们来玩和学习如何使用 Azure 配置 Site-to-Site VPN。
免责声明:虽然我们在本文中演示了 Mikrotik,但重要的是要提到 Microsoft 不直接支持设备配置。如果您有问题,请联系设备制造商以获取更多支持和配置说明。
需要强调的重要一点是 IKEv2 已在 6.38 版中引入。因此,请确保您有一个兼容版本,以便能够继续我们使用的本文中演示的配置:RouterBOARD 750 和软件版本:RouterOS 6.39。
在本教程中, Winbox管理实用程序已用于执行 MikroTik 配置,以下是正确配置 MikroTik 的必要步骤:
- 通过选择菜单IP和IPSec添加 IPSec 策略- 在策略选项卡上单击+(加号)以添加新策略。在常规选项卡上添加两个子网(来源:本地和目标:Azure),如图所示:
- 在同一屏幕上,但操作选项卡 - 选择隧道并指定本地源公共 IP 和目标 Azure 网关公共 IP,可以在创建虚拟网络网关后获取(请参阅:Azure S2S VPN 部分 - 步骤 4b)
- 在Peers选项卡上 – 单击 +(加号)并添加一个新的 IPSec Peer。在 IPSec 术语中,我们正在此配置选项卡上处理 IKE 阶段 1(主模式)。这里我们需要 Azure 网关公共 IP,指定可以在第一部分 - 步骤 7(创建 VPN 连接)中指定的预共享密钥。注意:如果您的 MikroTik 不显示 IKEv2,请确保您至少拥有 RouteOS 版本:6.38。在该版本之前,只有 IKEv1 可用。
- 在同一屏幕上,转到“高级”选项卡,根据 Azure 官方文档IPSec/IKE 参数- SA(安全关联),用于 IKE Phase 1(主模式),将 Lifetime 调整为 8h = 28,800 秒。
- 在Encryption选项卡上,您可以使用 Azure 支持的默认值,或者调整更强的哈希和加密(请参阅此处的详细信息:IPSec/IKE 参数)。本文选择了以下内容:
- 现在,让我们继续讨论在 MikroTik 中由Proposals 表示的 IKE 阶段 2(快速模式)。对于这个,您可以创建一个新的(+ 号)或更改默认值。如果您创建一个新的,请确保更改第 2 步(IP Sec 策略)和操作选项卡并选择适当的建议。对于本文,我们将根据 Azure 官方信息为IPSec/IKE 参数中的 IKE Phase 2 更改默认的 IPSec Proposal :
- 确保 VPN 将在 On-Prem 和 Azure 之间正确路由的最后一步是配置 NAT 规则。这是通过转到IP并选择防火墙- 选择NAT选项卡来完成的
- 将链添加为srcnat和两个子网(本地和 Azure 子网)。
- 在操作选项卡上选择接受
验证 IPSec 隧道
在每侧的两台计算机之间 Ping。在右侧本地计算机 (192.168.88.17) 中正确 ping Azure VM (10.4.0.4),反之亦然。
在两边,我们看到 TTL 为 126,这对应于两个跃点(两个网关)递减。Windows 机器的默认 TTL 为 128。
注意:默认情况下,ICMP 是禁用的。通过运行以下 PowerShell 命令确保允许 ICMP:
Set-NetfirewallRule -Name FPS-ICMP4-ERQ-In -Enable True
在 Azure 一侧
在 Azure 门户上,您可以验证如第 8 项所示创建的全新隧道。验证上面的 VPN 连接。这也可以通过 PowerShell 使用以下命令进行验证:Get-AzureRmVirtualNetworkGatewayConnection -Name From-Azure-to-Mikrotik -ResourceGroupName S2SVPNDemo
在 MikroTik 方面
有多种方法可以在 MikroTik 上验证与 Azure 的 IPSec VPN 连接。以下是一些方法:
1. IPSec –策略选项卡。它显示 IKE 阶段 2 是否正常工作。
2.远程对等选项卡。这显示 IKE 阶段 1(主模式)是否正常工作。
3.已安装的 SA选项卡显示当前的安全关联:
IPSec 故障排除
如果在您的配置过程中由于某种原因无法正常工作,您可以进行故障排除以确定发生了什么。MikroTik 为记录和排除 IPSec 故障提供了一个很好的界面,以防您想获得有关正在发生的事情的更多详细信息。事件可以在日志菜单中可视化,但为了确保您可以公开 IPSec 事件,您需要在日志配置(系统 - 日志)中进行简单更改并将 IPSec 添加为主题:
添加此新的日志记录规则后,您将看到以下详细的 IPSec 事件:
额外提示:请参阅读者分享的有关 TCP MSS Clamp 配置的评论。
结论
在本文中,我们演示了如何在 Azure 和 MikroTik RouterBoard 之间使用 IKEv2(基于路由)设置 IPSec 站点到站点 VPN。这些说明还可以帮助您设置与 Azure VPN 网关设置兼容的任何 IPSec 设备。我希望您喜欢这里分享的信息,如果您有其他问题,请在下面的评论中告诉我们。我要特别感谢 Azure 支持升级工程师 Daniel Pires,他与我共同撰写了这篇文章。谢谢!