本文介绍如何在同一环境中的两个虚拟网络之间创建连接。 在设置连接过程中,读者可以了解 Azure Stack Hub 中 VPN 网关的工作方式。 使用 Fortinet FortiGate 在同一 Azure Stack Hub 环境中连接两个 VNET。 此过程在资源组中部署两个具有 FortiGate NVA 的 VNET,每个 VNET 位于单独的资源组中,并且都有一个网络虚拟设备。 此外,其中详细说明了在这两个 VNET 之间设置 IPSec VPN 所要做出的更改。 请对每个 VNET 部署重复本文中的步骤。
先决条件
有权访问可提供足够容量用于部署此解决方案所需的计算、网络和资源的系统。
已下载网络虚拟设备 (NVA) 解决方案并将其发布到 Azure Stack Hub 市场。 NVA 控制从外围网络到其他网络或子网的网络流量。 此过程使用 Fortinet FortiGate 下一代防火墙单一 VM 解决方案。
至少需要两个 FortiGate 许可证文件来激活 FortiGate NVA。 有关如何获取这些许可证的信息,请参阅 Fortinet 文档库文章注册和下载许可证。
此过程使用单一 FortiGate-VM 部署。 其中提供了在本地网络中将 FortiGate NVA 连接到 Azure Stack Hub VNET 的步骤。
有关如何在主动-被动 (HA) 设置中部署 FortiGate 解决方案的详细信息,请参阅 Fortinet 文档库文章 Azure 上的 FortiGate-VM 的 HA 中的详细信息。
部署参数
下表汇总了在这些部署中使用的参数供用户参考:
部署 1:Forti1
| FortiGate 实例名称 | Forti1 |
|---|---|
| BYOL 许可证/版本 | 6.0.3 |
| FortiGate 管理用户名 | fortiadmin |
| 资源组名称 | forti1-rg1 |
| 虚拟网络名称 | forti1vnet1 |
| VNET 地址空间 | 172.16.0.0/16* |
| 公共 VNET 子网名称 | forti1-PublicFacingSubnet |
| 公共 VNET 地址前缀 | 172.16.0.0/24* |
| 内部 VNET 子网名称 | forti1-InsideSubnet |
| 内部 VNET 子网前缀 | 172.16.1.0/24* |
| FortiGate NVA 的 VM 大小 | 标准 F2s_v2 |
| 公共 IP 地址名称 | forti1-publicip1 |
| 公共 IP 地址类型 | 静态的 |
部署 2:Forti2
| FortiGate 实例名称 | Forti2 |
|---|---|
| BYOL 许可证/版本 | 6.0.3 |
| FortiGate 管理用户名 | fortiadmin |
| 资源组名称 | forti2-rg1 |
| 虚拟网络名称 | forti2vnet1 |
| VNET 地址空间 | 172.17.0.0/16* |
| 公共 VNET 子网名称 | forti2-PublicFacingSubnet |
| 公共 VNET 地址前缀 | 172.17.0.0/24* |
| 内部 VNET 子网名称 | Forti2-InsideSubnet |
| 内部 VNET 子网前缀 | 172.17.1.0/24* |
| FortiGate NVA 的 VM 大小 | 标准 F2s_v2 |
| 公共 IP 地址名称 | Forti2-publicip1 |
| 公共 IP 地址类型 | 静态的 |
注释
* 如果上述值以任何方式与本地网络环境重叠,请选择一组不同的地址空间和子网前缀,包括任一Azure Stack Hub的 VIP 池。 此外,请确保地址范围不会彼此重叠。
部署 FortiGate NGFW
打开 Azure Stack Hub 用户门户。
选择“创建资源”,然后搜索 。
首先选择FortiGate NGFW,然后选择创建。
-
选择“确定”。
使用 部署参数 表提供虚拟网络、子网和 VM 大小详细信息。
警告
如果本地网络与 IP 范围
172.16.0.0/16重叠,则必须选择并设置不同的网络范围和子网。 若要使用与 部署参数 表中的名称和范围不同的名称和范围,请使用 不 与本地网络冲突的参数。 在 VNET 中设置 VNET IP 范围和子网范围时,请多加留意。 你不希望该范围与本地网络中存在的 IP 范围重叠。选择“确定”。
为 FortiGate NVA 配置公共 IP:
选择“确定”。 然后,选择“确定”。
选择 创建。
部署大约需要 10 分钟。
配置每个 VNET 的路由 (UDR)
对 forti1-rg1 和 forti2-rg1 这两个部署执行以下步骤。
打开 Azure Stack Hub 用户门户。
选择 资源组。 在筛选器中键入
forti1-rg1,然后双击“forti1-rg1”资源组。
选择“forti1-forti1-InsideSubnet-routes-xxxx”资源。
在“设置”下选择“路由”。
删除 到 Internet 路由。
选择 “是”。
选择“添加”以添加新路由。
将路由命名为
to-onprem。输入 IP 网络范围,用于定义 VPN 连接到的本地网络的网络范围。
对于“下一跃点类型”,请选择“虚拟设备”;选择 。
172.16.1.4如果您使用的是其他 IP 范围,请改用您自己的 IP 范围。
选择“保存”。
需要 Fortinet 的有效许可证文件才能激活每个 FortiGate NVA。 只有在逐个激活每个 NVA 后,这些 NVA 才能工作。 有关如何获取许可证文件和激活 NVA 的步骤的详细信息,请参阅 Fortinet 文档库文章 :注册和下载许可证。
您需要获取两个许可证文件——每个 NVA 对应一个。
在两个 NVA 之间创建 IPSec VPN
激活 NVA 后,在两个 NVA 之间创建 IPSec VPN。
对 forti1 NVA 和 forti2 NVA 均执行以下步骤:
转到 fortiX VM 概述页以获取分配的公共 IP 地址:
复制分配的 IP 地址,打开浏览器,然后将该地址粘贴到地址栏中。 浏览器可能会警告你安全证书不受信任。 请继续操作。
输入在部署期间提供的 FortiGate 管理用户名和密码。
选择系统>固件。
选择显示最新固件版本的框,例如
FortiOS v6.2.0 build0866。
选择“备份配置并升级”“继续”。
NVA 会将其固件更新到最新内部版本,然后重新启动。 此过程大约需要五分钟时间。 再次登录到 FortiGate Web 控制台。
选择 VPN>IPSec 向导。
输入 VPN 的名称,例如
conn1在 VPN 创建向导中。选择“此站点位于 NAT 后”。
选择“下一步”。
输入要连接到的本地 VPN 设备的远程 IP 地址。
选择“port1”作为“传出接口”。
选择“预共享密钥”,输入(并记下)一个预共享密钥。
注释
需要此密钥才能在本地 VPN 设备上设置连接。 键必须 完全匹配。
选择“下一步”。
对于“本地接口”,请选择“port2”。
输入本地子网范围:
- forti1:172.16.0.0/16
- forti2:172.17.0.0/16
如果您使用的是其他 IP 范围,请使用您自己的 IP 范围。
输入代表通过本地 VPN 设备连接的本地部署网络的相应远程子网。
- forti1:172.16.0.0/16
- forti2:172.17.0.0/16
如果你使用的是其他 IP 范围,请使用你自己的 IP 范围。
选择 创建
选择网络>接口。
双击“port2”。
在“角色”列表中选择“LAN”,选择“DHCP”作为寻址模式。
选择“确定”。
对另一个 NVA 重复上述步骤。
启用所有第 2 阶段选择器
完成 上述两 个 NVA 的步骤后:
在 forti2 FortiGate Web 控制台中,选择监视>IPsec 监视。
高亮显示
conn1并选择“调出>所有第 2 阶段选择器”。
测试并验证连接
现在,您可以通过 FortiGate NVA 在各个 VNET 之间进行路由。 若要验证连接,请在每个 VNET 的 InsideSubnet 中创建一个 Azure Stack Hub VM。 可以使用门户、Azure CLI或 PowerShell 创建Azure Stack Hub VM。 创建 VM 时:
将Azure Stack Hub VM 放置在每个 VNET 的 InsideSubnet 上。
创建时不要将任何 NSG 应用到 VM。 如果通过门户创建虚拟机,请删除系统默认添加的 NSG。
确保 VM 防火墙规则允许测试连接所需的通信。 出于测试目的,建议尽可能在 OS 中完全禁用防火墙。
后续步骤
Azure Stack Hub 网络的差异和注意事项
使用 Fortinet FortiGate 在 Azure Stack Hub 中提供网络解决方案