教程篇(6.4) 07. 自动发现 ❀ SD-WAN ❀ Fortinet 网络安全架构师 NSE7

2023-10-24 08:10

本文主要是介绍教程篇(6.4) 07. 自动发现 ❀ SD-WAN ❀ Fortinet 网络安全架构师 NSE7,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

 在这节课中,你将学习自动发现VPN (ADVPN)。

  完成本课程后,你应该能够实现在这张幻灯片上显示的目标。

  通过演示ADVPN的能力,你将能够配置ADVPN,排除ADVPN故障,并理解SD-WAN对ADVPN的支持。

  为什么要使用ADVPN?为了找到答案,你将回顾最常见的VPN拓扑。

  一个点到多拓扑变化称为中心辐射。正如它的名字所描述的,所有的客户连接通过一个中心轮毂,类似辐条连接到轮毂上的方式。

  在本幻灯片所示的示例中,每个客户端辐条都是一个分支机构FortiGate。任何分支机构要到达另一个分支机构,其流量必须通过中心。

  使用这种拓扑的一个优点是,你可以轻松地管理VPN配置和防火墙策略。此外,对于作为分支机构的FortiGate设备,系统需求是最小的,因为每个FortiGate必须维护一个隧道或两个SA。在本例中,中心需要四个隧道或八个安全联盟(SA)。

  使用这种拓扑的一个缺点是,通过总部(HQ)进行分支机构之间的通信比使用直接连接要慢,特别是如果总部在物理上距离很远(对于全球公司来说可能是这样的)。例如,如果你的公司总部位于巴西,并且你的公司在日本和德国也有办事处,那么延迟可能会很严重。另一个缺点是缺乏冗余。例如,如果总部的FortiGate失败,VPN在公司范围内失效。此外,总部的FortiGate必须更强大,因为它同时处理四个隧道,或八个SA。

  这张幻灯片显示了一个部分网状拓扑的VPN。有两种类型的网格拓扑,部分网格和全网格。

  部分网格试图妥协,最小化所需的资源和延迟。如果每个位置之间不需要通信,部分网格可以是合适的。这张幻灯片显示了Spoke-1和Spoke-2,以及Spoke-3和Spoke-4之间的附加连接。然而,每个FortiGate的配置仍然比中心辐射更复杂。特别是路由,可能需要广泛的规划。

  全网格连接每个位置到每个其他位置。与前面的中心辐射示例一样,这张幻灯片上的示例只显示了5个位置。为了实现完全互连,每个FortiGate需要4条VPN隧道或8个SA与其他FortiGate设备连接。这就相当于每个辐射FortiGate增加了三个隧道。总共需要10条隧道。如果你的公司要扩张到6个地点,就需要15条隧道。七个地点需要21条隧道,以此类推。可以使用公式N site =N (N-1) / 2来计算隧道的数量。与中心辐射相比,这种拓扑造成的延迟更少,需要的总部带宽也更少。它的缺点?每一个辐射FortiGate必须更强大。此外,管理和故障排除都变得更加复杂。

  因此,一般来说,如果你的公司有很多位置,中心辐射拓扑比网状拓扑更便宜,但速度更慢。网状拓扑对中心位置的压力更小,可以更容错,但也更昂贵。

  ADVPN是FortiOS 5.4中引入的。它结合了中心轮辐和全网状拓扑的优点,因为所有的轮辐到轮辐隧道都是根据需要动态创建的。在两个轮辐之间建立一条捷径隧道,路由已经汇合后,轮辐对轮辐的流量不再需要通过中心。ADVPN提供直接连接。

  ADVPN支持单中心或多中心架构。

  按需隧道支持NAT转换

  ADVPN需要使用路由协议

    目前支持BGP、OSPF和RIPv2/RIPng协议

    它还支持PIM和多播

  支持IPv4和IPv6

 这张幻灯片展示了ADVPN如何工作的一个例子。

  管理员在多个FortiGate设备上配置IPsec VPN,形成VPN的星状拓扑。在这个例子中,有两个中心。中心1三个辐条。中心2有两个辐条。还有一个VPN连接两个中心。

  辐条之间的动态隧道是按需创建的。假设波士顿的用户向伦敦发送流量。最初,波士顿和伦敦之间的直达隧道没有谈判。因此,从波士顿到伦敦的第一个包通过中心1和中心2路由。当中心1收到这些数据包。因为自动发现发送者使能设置,它知道ADVPN在所有到伦敦的VPN中是启用的。因此,中心1向波士顿发送IKE消息,通知它可以尝试协商到伦敦的直接连接。收到此IKE消息后,波士顿创建一个特定于FortiOS的IKE信息消息,其中包含其公共IP地址、其本地子网、所需的目的地子网(伦敦的子网)和一个自动生成的PSK(或者,它也可以使用数字证书认证)。该IKE消息通过中心1和中心2发送到伦敦。当伦敦收到来自波士顿的IKE消息时,它存储PSK,并使用另一个包含伦敦的公网IP地址的IKE信息消息进行回应。当应答报文到达波士顿后,两个对等体就开始协商动态隧道。协商成功是因为伦敦期望从波士顿的公共IP地址进行连接尝试。在本课中,你将对此进行更详细的探索。

 现在,你将检查在协商按需隧道时交换的IKE消息:

  1. Spoke-1背后的客户端为Spoke-2网络中的设备产生流量。

  2. Spoke-1接收数据包,对其加密,并将其发送给Hub。

  3. Hub接收Spoke-1发来的报文,转发给Spoke-2。

  4. Spoke-2接收报文,解密后转发给目的设备。

  5. Hub知道从Spoke-1到Spoke-2可能有更直接的隧道选项。Hub会向Spoke-1发送一条快捷的报价信息。

  6. Spoke-1通过向Hub发送快捷查询来确认快捷方式的提供。

  7. Hub将快捷查询消息转发给Spoke-2。

  8. Spoke-2确认快捷查询,并向Hub发送快捷回复。

  9. Hub将快捷回复转发到Spoke-1。

  10. Spoke-1和Spoke-2发起隧道IKE协商。

  如前所述,ADVPN需要使用动态路由协议。在这节课中,你将学习如何使用IBGP配置ADVPN。

  作为示例,你将使用由一个hub和两个spoke组成的IBGP拓扑。所有设备都在AS 65100中。

  这张幻灯片显示了Hub中的以下ADVPN配置:

  ● 禁用set add-route,确保动态路由用于学习辐条的受保护子网。

  ● 设置tunnel-search为nexthop,以保证报文匹配的路由的下一跳地址决定报文应发送到哪个隧道。

  ● 禁用set net-device,确保FortiGate不创建动态接口。

  ● 如果需要ADVPN,必须启用set auto-discovery-sender。此设置表明,当IPsec流量通过Hub时,它应该向流量的发起者发送一个快捷方式,以表明它可能可以建立一个更直接的连接(快捷方式)。

  ● 为IPsec虚拟接口分配覆盖IP地址。这是在IPsec上拥有动态路由协议的必要条件。

  ● 所有星状参与者的覆盖IP都在同一个子网中。

  ● 对于remote-ip,可以使用覆盖子网中未使用的IP。你需要根据Hub和辐条的数量添加适当的子网。

  ● 对于阶段2配置,确保将快速模式设置为所有(0.0.0.0/0.0.0.0)

  ● 设置防火墙策略,允许从辐条到中心的流量,从中心到辐条的流量,以及在辐条之间通过中心的流量。

  这张幻灯片显示了以下在辐条中的ADVPN配置:

  ● 使用auto-discovery-receiver命令启用ADVPN。使用此命令表示此IPsec隧道希望参与一个自动发现VPN(即接收一个SHORTCUT-OFFER)。

  ● 为IPsec虚拟接口配置接口IP、远端IP和子网。

  这张幻灯片显示了Hub中的IBGP配置如下:

  ● 配置BGP邻居组。所有的辐条都是它的一部分。

  ● 创建包含所有辐条前缀的邻居范围。这样,你就不需要将每个会话单独定义为邻居。

  ● 如果在ADVPN中使用IBGP,则必须将hub配置为路由反射器。因此,从一个辐条学到的路由被转发到另一个辐条。

  ● 将本地网络添加到hub后面,通过BGP发布。

  这张幻灯片显示了IBGP在其中一个辐条上的如下配置:

  ● 配置hub为BGP邻居

  ● 定义通过BGP发布的内部网络 

  如果你使用VPN管理器在FortiManager上配置VPN,请记住以下事项:

  ● 设置受保护网络为all

  ● 在阶段1中使用脚本启用ADVPN

  ● 在Hub上禁用添加路由选项

  ● 使用脚本在辐条上启用net-device

  ● 配置IPsec虚拟接口的IP地址

  ● 配置动态路由。如果使用IBGP,请使用脚本在集线器上启用路由反射器。

  ● 重要的是要知道,当使用FortiManager VPN控制台创建阶段1时,阶段1名称是用下划线和零(phase1 name_0)创建的。

 保护子网的配置在ALL VPN Communities下。

  对于ADVPN,需要关闭hub的VPN网关配置下的添加路由开关。

  防止hub通过IKE协商方式添加路由。为此,ADVPN使用动态路由协议。

  在中心和辐条之间的隧道建立之后,你可以在辐条上运行本幻灯片所示的命令,以验证正在进行路由更新。

  这张幻灯片显示,Spoke-1通过BGP学习到了到hub和到Spoke-2网络的路由。Spoke-2目前可以通过hub访问。

  调试IKE时可以指定多个IP地址。这在调试ADVPN快捷方式和spoke-to-spoke ADVPN协商问题时非常有用。

  如果在ADVPN隧道协商过程中运行IKE实时调试,将会看到所有快捷方式的交换。这张幻灯片显示了实时调试的输出示例。你可以看到,由于从Spoke-1到Spoke-2的数据流量,Spoke-1收到了Hub的OFFER。

  Spoke-1向Spoke-2发送一个快捷查询,Hub接收这个快捷查询并将其转发给Spoke-2。

  在本幻灯片所示的示例中,Spoke-2接收快捷查询并向Spoke-1发送快捷回复。

  Hub接收快捷回复并将其转发给Spoke-1。

  最后,Spoke-1接收到应答消息,直接与Spoke-2发起快捷方式协商,创建动态隧道接口。

  get ipsec tunnel list命令用来查看哪些按需隧道已经up。一定要注意,按需隧道保持活动状态,直到其SA被手动刷新或超时。

  这张幻灯片显示了按需隧道建立后的路由表。

  可以通过按需隧道H2S_0_0确认Spoke-2的网络可直接访问。

  在FortiOS 6.2.1和更高版本中,SD-WAN现在支持ADVPN。在此特性之前,SD-WAN只能使用静态VPN作为成员,不支持快捷隧道。

  有了这个特性,SD-WAN可以使用SDVPN动态辐条到辐条的快捷隧道。此特性允许SD-WAN将辐条之间的动态捷径隧道和到hub的静态隧道结合起来。当SD-WAN规则中引用到hub的静态隧道时,规则会在捷径隧道建立时自动添加一条动态捷径隧道,辐条之间的流量将通过捷径隧道。

  如图所示,可以看到快捷隧道建立前后ADVPN的路由表和服务信息的对比。可以验证SD-WAN规则是否自动将快捷隧道添加为静态隧道的子接口。

  SD-WAN规则可以将BGP学到的路由作为动态目的地。你可以接受匹配团体的路由,并为路由设置标签。这些标签可以作为SD-WAN规则中的动态目的地。

  可以看到匹配团体 1:2的路由被标记为15。这些路由会自动添加到SD-WAN规则设置中,以匹配动态目的匹配路由标签15。

  这张幻灯片显示了你在本课中涉及的目标。

  通过掌握本课的目标,你学习了如何使用iBGP配置ADVPN。测试ADVPN,了解SD-WAN对ADVPN的支持。

这篇关于教程篇(6.4) 07. 自动发现 ❀ SD-WAN ❀ Fortinet 网络安全架构师 NSE7的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/273862

相关文章

浏览器插件cursor实现自动注册、续杯的详细过程

《浏览器插件cursor实现自动注册、续杯的详细过程》Cursor简易注册助手脚本通过自动化邮箱填写和验证码获取流程,大大简化了Cursor的注册过程,它不仅提高了注册效率,还通过友好的用户界面和详细... 目录前言功能概述使用方法安装脚本使用流程邮箱输入页面验证码页面实战演示技术实现核心功能实现1. 随机

深度解析Spring AOP @Aspect 原理、实战与最佳实践教程

《深度解析SpringAOP@Aspect原理、实战与最佳实践教程》文章系统讲解了SpringAOP核心概念、实现方式及原理,涵盖横切关注点分离、代理机制(JDK/CGLIB)、切入点类型、性能... 目录1. @ASPect 核心概念1.1 AOP 编程范式1.2 @Aspect 关键特性2. 完整代码实

Java Web实现类似Excel表格锁定功能实战教程

《JavaWeb实现类似Excel表格锁定功能实战教程》本文将详细介绍通过创建特定div元素并利用CSS布局和JavaScript事件监听来实现类似Excel的锁定行和列效果的方法,感兴趣的朋友跟随... 目录1. 模拟Excel表格锁定功能2. 创建3个div元素实现表格锁定2.1 div元素布局设计2.

SpringBoot连接Redis集群教程

《SpringBoot连接Redis集群教程》:本文主要介绍SpringBoot连接Redis集群教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1. 依赖2. 修改配置文件3. 创建RedisClusterConfig4. 测试总结1. 依赖 <de

HTML5实现的移动端购物车自动结算功能示例代码

《HTML5实现的移动端购物车自动结算功能示例代码》本文介绍HTML5实现移动端购物车自动结算,通过WebStorage、事件监听、DOM操作等技术,确保实时更新与数据同步,优化性能及无障碍性,提升用... 目录1. 移动端购物车自动结算概述2. 数据存储与状态保存机制2.1 浏览器端的数据存储方式2.1.

一文详解MySQL如何设置自动备份任务

《一文详解MySQL如何设置自动备份任务》设置自动备份任务可以确保你的数据库定期备份,防止数据丢失,下面我们就来详细介绍一下如何使用Bash脚本和Cron任务在Linux系统上设置MySQL数据库的自... 目录1. 编写备份脚本1.1 创建并编辑备份脚本1.2 给予脚本执行权限2. 设置 Cron 任务2

Nexus安装和启动的实现教程

《Nexus安装和启动的实现教程》:本文主要介绍Nexus安装和启动的实现教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、Nexus下载二、Nexus安装和启动三、关闭Nexus总结一、Nexus下载官方下载链接:DownloadWindows系统根

MyBatis Plus 中 update_time 字段自动填充失效的原因分析及解决方案(最新整理)

《MyBatisPlus中update_time字段自动填充失效的原因分析及解决方案(最新整理)》在使用MyBatisPlus时,通常我们会在数据库表中设置create_time和update... 目录前言一、问题现象二、原因分析三、总结:常见原因与解决方法对照表四、推荐写法前言在使用 MyBATis

Python使用smtplib库开发一个邮件自动发送工具

《Python使用smtplib库开发一个邮件自动发送工具》在现代软件开发中,自动化邮件发送是一个非常实用的功能,无论是系统通知、营销邮件、还是日常工作报告,Python的smtplib库都能帮助我们... 目录代码实现与知识点解析1. 导入必要的库2. 配置邮件服务器参数3. 创建邮件发送类4. 实现邮件

CnPlugin是PL/SQL Developer工具插件使用教程

《CnPlugin是PL/SQLDeveloper工具插件使用教程》:本文主要介绍CnPlugin是PL/SQLDeveloper工具插件使用教程,具有很好的参考价值,希望对大家有所帮助,如有错... 目录PL/SQL Developer工具插件使用安装拷贝文件配置总结PL/SQL Developer工具插