教程篇(6.0) 12. IPsec ❀ FortiGate 安全 ❀ Fortinet 网络安全专家 NSE 4

在这节课中,你将了解IPsec VPN的架构组件,以及如何设置拨号IPsec VPN。

在本次课程中,你将探讨以下主题:

  • IPsec的介绍
  • IKE阶段1和IKE阶段2
  • 拨号IPsec VPN
  • 最佳实践和VPN日志

在完成这节课程之后,你应该能够:

  • 描述IPsec VPN的好处
  • 熟悉IPsec协议
  • 了解IPsec是如何工作的

  通过展示IPsec基础知识的能力,你将能够理解IPsec的概念和好处。

IPsec是什么?你应该什么时候使用?

  IPsec是一组与供应商无关的标准协议集,用于连接两个物理上不同的局域网。局域网被连接起来,就好像它 们是一个单一的逻辑网络一样,尽管被互联网分隔开了。

  理论上,IPsec确实支持零加密——也就是说,您可以创建不加密流量的VPN。IPsec还支持零数据完整性。但 这是否比单纯的流量更有优势呢?不。没有人能相信可能有攻击者注入攻击的流量。人们很少想要一个不知名 的人发送的数据。大多数人还希望私人网络数据,比如信用卡交易和医疗记录,保持私有。

  所以,在现实中,不管供应商是什么,IPsec VPN几乎总是有三个重要的好处:

  • 身份验证——验证两端的标识
  • 数据完整性,或HMAC——来证明封装的数据没有被篡改,因为它跨越了一个潜在的敌对网络。
  • 机密性或加密——以确保只有预期的接收者能够读取消息。

 如果您正在通过防火墙传递您的VPN,那么它有助于了解允许哪些协议。

  IPsec是一套单独的协议。它包括:

  • Internet密钥交换(IKE):IKE用于对对等体进行身份验证,交换密钥,并协商将使用的加密和校验和;本质上,它是控制通道。
  • 身份验证头(AH):AH包含认证头——验证数据完整性的校验和。
  • 封装安全有效负载(ESP):ESP是封装的安全有效负载——加密有效负载,本质上是数据通道。

  因此,如果你需要通过防火墙传递IPsec流量,请记住:只允许一个协议或端口号通常是不够的。

  请注意,IPsec RFC提到了AH;然而,AH不提供加密,这是一个重要的好处。所以,AH没有被FortiGate使用。 因此,您不需要允许IP协议51。

  要创建VPN,必须在两端配置匹配设置——VPN是在两个FortiGate设备之间、一个FortiGate和FortiClient,还 是一个第三方设备和一个FortiGate。如果设置不匹配,隧道设置将会失败。

IPsec在IP(网络)层提供服务。在隧道的建立过程中,双方都在协商加密和认证算法的使用。

  在隧道被协商并升级之后,数据被加密并封装到ESP数据包中。

 封装是什么?这取决于模式。IPsec可以在两种模式下运行:传输模式和隧道模式。

  • 传输模式直接封装和保护第四层(transport)和上面。原始的IP报头不受保护,不添加额外的IP报头。
  • 隧道模式是一条真正的隧道。整个IP包被封装起来,在开始时添加一个新的IP报头。IPsec包到达远程LAN  后,未包装,原始数据包可以继续其旅程。

  注意,在删除了VPN相关的头文件之后,传输模式数据包不能再传输了;它里面没有第二个IP报头,所以它是不 可路由的。出于这个原因,这种模式通常只用于端到端(或客户端到客户端)VPN。

为了创建IPsec隧道,这两种设备都必须建立它们的安全联盟(SA)和密钥,这些密钥是由Internet密钥交换 (IKE)协议促成的。

  IPsec架构使用SA作为将安全功能构建到IPsec的基础。SA仅仅是用于加密和验证通过隧道传输的数据的算法 和参数的集合。在正常的双向通信中,这个交换是由一对SA来保护的,一个用于每个流量方向。从本质上说, 隧道的两边必须就安全规则达成一致。如果双方不能就发送数据和验证彼此身份的规则达成一致,那么隧道将 无法建立。

  IKE使用两个不同的阶段:阶段1和阶段2。

小测验。

你现在已经了解了IPsec的介绍了。接下来,你将了解到IKE阶段1和阶段2。

在完成这一节之后,您将能够识别并理解IKEv1的阶段。通过展示识别IKE不同组件的能力,您将能够成功地确定用于VPN部署的适当组件选择。

IKE使用端口UDP 500。(如果NAT-T在NAT场景中启用,IKE使用UDP端口4500)。

  IKE建立了一个IPsec VPN隧道。FortiGate使用IKE与同伴协商并确定安全联盟(SA)。SA定义了用于加密和 解密对等数据包的身份验证、密钥和设置。它基于互联网安全联盟和关键管理协议(ISAKMP)。

  IKE定义了两个阶段。在阶段2中,每一个IPsec SA都是特定的方向。因此,在双向通信中,每个阶段2有两个 SA。
对于阶段1,有两种可能的协商模式:主模式和野蛮模式

  阶段2只有一种模式:快速模式。

 阶段1是在隧道的每个端点——发起者和响应者——连接并开始建立VPN时发生的。

  当端点第一次连接时,通道是不安全的。中间的攻击者可以拦截未加密的密钥。这两个端点都不能保证对方的 身份,那么他们如何交换敏感的私钥呢?他们不能。首先,两个端点都必须创建一个安全的隧道。他们将使用 这个安全通道来保护强大的身份验证,并在以后协商隧道的真正钥匙。

 现在您将研究阶段1是如何工作的。

  在阶段1,对等体说hello并创建一个SA来定义一个安全通道。SA被称为IKE SA,是双向的。

  在IKEv1中,有两种可能的模式可以进行SA协商。

  • 主模式
  • 野蛮模式

  设置必须一致;否则,阶段1将会失败。(每一方都无法解密或验证来自另一方的流量)。

  在阶段1结束时,协商的IKE SA被用来协商在阶段2中使用的“Diffie-Hellman”(DH)密钥。

这张幻灯片显示了主模式的操作,其中交换了6个数据包。

  首先,客户端提出,隧道将使用一个或多个安全策略。响应者选择它同意使用的安全策略,并回答。然后,发 起者发送它的钥匙。响应者用自己的钥匙回答。最后,发起者发送对等体ID和散列有效负载,响应者以同样的 方式应答。

  在主模式下,响应者不能通过它的对等ID来识别发起者,这是因为第一个包不包含对等ID,所以源IP地址被用 作识别对等体的标准之一。这种方法适用于站到站的VPN(点对点VPN),因为响应者知道每个对等体的IP地 址。因此,响应者知道为每个案例提出的安全策略。

  这种模式对于只有一个拨号VPN的响应者来说也很有效。在这种情况下,响应者不需要识别对等体。对于所有 的安全策略,只有一套安全策略。

  然而,对于具有多个拨号VPN的响应者来说,这种方法可能无法很好地工作。在这种情况下,响应者可能需要 用除源IP地址以外的其他东西来标识发起者,因为对等IP地址是未知的,并且可以更改。如果没有这些信息, 响应者可能不知道每个发起者属于哪个拨号VPN,也不知道哪些安全策略适用。

现在您将检查野蛮模式协商。在野蛮模式下,只交换三包。

  首先,客户端通过提出一个安全策略来发起,并提供它的密钥和对等ID。响应者以相同的信息应答,加上一个 散列。最后,发起者发送它的散列有效负载。

  第一个包包含发起者的对等ID。因此,响应者可以使用这个ID(不仅仅是源IP地址)来确定对等体是谁,以及 使用哪种安全策略。对于有多个拨号VPN的响应者来说,这是最好的解决方案。

Diffie-Hellman使用公钥(两端都知道)加上一个称为nonce的数学因素,以生成一个普通的私钥。

  这是至关重要的。有了Diffie-Hellman,即使攻击者可以监听包含公共密钥的信息,他们也无法确定密钥。

  新的私钥用于计算对称加密和身份验证的附加钥匙。

ESP协议通常在执行NAT的设备上遇到问题,其中一个原因是ESP没有像TCP和UDP那样的端口号来区分来自 一个隧道或另一个隧道的流量。

  为了解决这个问题,NAT穿越(NAT-T)被添加到IPsec规范中。当NAT-T在两端都启用时,对等体可以在路径 上检测任何NAT设备。如果发现了NAT,那么接下来会发生以下情况:

  • 阶段2和阶段1的包都更改为UDP端口4500。
  • 在UDP端口4500中,两端都封装了ESP。

  所以,如果你有两个在后面的FortiGate设备,例如,一个有NAT的ISP调制解调器,你可能需要启用这个设置。

  当NAT穿越设置被设置为强制时,总是使用UDP端口4500,即使在路径上没有NAT设备的情况下也是如此。

在阶段1建立了一个安全的通道和私钥之后,阶段2开始了。

  阶段2为两个IPsec SA协商安全参数——不要与IKE SA混淆。它们是阶段2SA——而不是阶段1SA——ESP用 于在LAN之间传输数据。

  当ESP开始时,IKE阶段2不会结束。阶段2定期重新协商密码以维护安全。另外,如果你设置了Perfect Forward Secrecy ,每个阶段2都将到期,FortiGate将会使用“Diffie-Hellman”来重新计算新的密钥。通过这 种方式,新钥匙不是从旧的钥匙中派生出来的,这使得攻击者更难破解隧道。

  每个阶段1可以有多个阶段2。这是什么时候发生的?

  例如,您可能想要为通过隧道每个子网的流量都使用不同的加密密钥。FortiGate如何选择阶段2的使用?通过 检查哪个快速模式选择器,流量匹配。

在阶段2中,您必须配置一对名为quick mode selectors的设置。他们识别并引导流量到适当的阶段2。换句话 说,它们允许粒度SA。

  选择器的行为类似于防火墙策略。VPN流量必须在阶段2的SA中匹配选择器。如果没有,流量就会被丢弃。

  在配置选择器时,指定将匹配每个阶段2的源和目标IP子网。您还可以为允许的流量指定协议号、源和目的端 口。在点对点的VPN中,比如将一个分支机构的FortiGate连接到一个总部的FortiGate,两边的配置必须相互映 射。

 小测验。

 你现在了解了IKE阶段1和阶段2。接下来,您将了解到拨号IPsec VPN。

 在完成本节之后,你应该能够:

  • 理解拨号的IPsec VPN拓扑
  • 在两个FortGate设备之间部署一个拨号VPN
  • 为FortiClient部署一个拨号VPN

  通过演示拨号IPsec VPN配置的能力,你将更好地理解在FortiGate和FortiClient之间部署一个拨号VPN。

当对等体的IP地址是动态的,并且没有动态DNS时,就会使用拨号VPN。这通常是分支机构和移动VPN客户端 的情况。因为一个带有拨号VPN的对等体不知道其他对等体的IP地址,所以它不能启动VPN连接请求。

  当您不知道远程对等体将在哪里连接时,就会使用拨号VPN,例如在笔记本上有FortiClient的旅行员工,或者 是一个用于远程办公室的FortiGate设备当做拨号客户端。

  在您的FortiGate设备上的一个拨号VPN配置可以用于许多远程办公室或用户的IPsec隧道。这是另一个名字, 来自点对多点。

  请记住,在拨号中,客户端的IP是动态的,所以FortiGate无法预测它的位置。这意味着FortiGate不能启动VPN, 只有远程对等体才能启动。

现在您将配置点对多点(在GUI上称为拨号VPN)。

  您必须配置的设置如下:

  • 一个阶段1
  • 至少一个阶段2
  • 防火墙策略
  • 如果需要,静态路由或动态路由协议

 你将从配置拨号服务器的阶段1开始。

  Remote Gateway 必须设置为Dialup User。

  如果拨号服务器包含多个拨号VPN,则选择Aggressive。需要使用对等ID。

  接下来,您将看到拨号客户端的阶段1。

  首先,指定这个拨号客户机的拨号服务器是否使用Static IP或Dynamic DNS。

  如果拨号服务器有多个拨号VPN,则必须将Mode设置为Aggressive。然后,在Local ID中,您必须输入这个 拨号客户机将用来标识自己到拨号服务器的名称。这个ID必须与拨号服务器上配置的ID相匹配。

通常,拨号服务器中的本地(源)快速模式选择器被设置为拨号服务器的子网。拨号服务器中的远程(目标) 快速模式选择器通常设置为0.0.0.0/0,以匹配所有拨号客户端子网。

  客户端中快速模式选择器的情况下,本地地址必须是拨号客户端的子网。

  拨号客户机中的远程快速模式选择器通常是拨号服务器的子网。

  点对多点的快速模式选择器不需要相互镜像。

在每个FortiGate上通常有两个策略来允许和检查来自和进入IPsec虚拟接口的流量。

  拨号VPN服务器的两个防火墙策略

  拨号VPN客户端的两个防火墙策略

  接口不匹配WAN接口;它与虚拟接口相匹配,在本例中,它被命名为ToRemote。

拨号服务器将在VPN建立后立即向该子网添加一条静态路由。(这样,您就不需要手动配置FortiGate拨号服务 器,并为每个FortiGate拨号客户端提供了了所有的静态路由。)

  当隧道出现时,拨号服务器的子网的静态路由不会被动态添加到拨号服务器中。这条路由必须添加到配置中。

现在,您将配置IPsec拨号客户端到FortiGate。

  您必须配置的设置如下:

  • 阶段1
  • 阶段2的配置将与您之前配置的FortiGate拨号服务器相同。
  • 防火墙策略配置将与您先前配置的FortiGate拨号服务器相同。
  • 在VPN建立后,将为双方的FortiGate和FortiClient设备动态添加路由。(你将在实验中演示这一技术,用于拨号IPsec VPN。)。

您将从配置拨号服务器的阶段1开始。FortClient的拨号服务器配置或多或少与您早先对作为客户端的拨号服务 器的FortiGate类似,并添加了一些附加选项。

  Remote Gateway 必须设置为Dialup User。

  如果拨号服务器包含多个拨号VPN,则选择Aggressive。需要使用对等ID。

  为了加强认证,您可以启用XAuth。拨号服务器FortiGate将使用Enable as Server。(每一个FortiClient或拨号 客户端都将使用Enable as Client。)如果您在拨号服务器上启用XAuth,您还必须在拨号客户机上启用XAuth, 并配置用户名和密码。

  此外,如果您的拨号客户机是移动拨号用户,您应该启用NAT穿越(NAT Traversal ),因为它们通常在机场 终端、家庭路由器和酒店防火墙NAT后面。

果拨号客户机是移动用户,比如FortiClient用户,您可能会在拨号服务器的阶段1启用和配置Mode Config。 这是用于IPsec的扩展名为IKE模式配置。

  为什么?将静态IP分配给每个笔记本和移动电话通常是不现实的。IKE模式配置是另一种选择。

  与DHCP一样,Mode Config会自动配置客户端的网络设置。与DHCP一样,您为VPN虚拟IP和DNS设置定义 了一个范围。

另一个阶段1选项是XAuth。

  阶段1支持两种类型的认证:预共享密钥和数字证书。对IPsec的XAuth扩展迫使远程用户使用他们的凭证(用 户名和密码)进行身份验证。因此,如果启用的话,还会交换额外的认证包。

  有什么好处?更强的身份验证。

  有两种方法可以配置被授权连接到VPN的用户列表。一种方法是选择一个包含这些用户的特定用户组。当您使 用这种方法时,您需要配置多个拨号VPN,如果您想要应用不同的访问策略,这取决于用户组。这也意味着使 用野蛮模式和对等ID。

配置授权VPN用户列表的另一种方法是选择Inherit from policy。有了这个设置,就可以授权所有属于任何用 户组的用户,这些用户组被分配到任何允许VPN传输的防火墙策略中。在这个例子中,VPN流量有两个防火墙 策略。其中一个允许来自用户组Administrator的流量。另一个策略允许来自用户组training)的流量。在这种 情况下,所有属于管理员或培训的用户都可以连接到VPN。

  这种方法的优点是,您可以为不同的用户组提供不同的访问策略,并且在配置中只保留一个拨号VPN。

如果您的客户只是FortiClient,那么配置拨号服务器还有一个更简单的选择:使用VPN向导。它将使用基于路 由的VPN,并启用IKE Mode Config、XAuth和其他适当的设置。

 小测验。

 你现在了解了拨号IPsec VPN。接下来,您将学习一些最佳实践,并分析IPsec VPN日志。

在完成本节之后,你应该能够:

  • 使用最佳实践来部署拨号IPsec
  • 分析VPN日志和VPN监视器

  通过展示最佳实践和日志的能力,您将能够应用最佳实践,并使用基本技术来分析和监控VPN日志。

在存在多个远程拨号VPN隧道的情况下,每个隧道必须有一个对等的ID集。

  确保FortiClient版本与Fortigate OS版本兼容。

  如果你的FortiGate在NAT设备的后面,比如路由器,为UDP端口500和4500配置端口转发。

  确保开启硬件加速为IPsec提供最好的性能。

  检查IPsec VPN最大传输单元(MTU)大小。1500字节MTU将超过支持ESP头的开销,包括额外的IP头,等等。

  在1436的3DES / SHA1和1412的AES128 / SHA1的MTU中,该FortiGate设置了IPsec隧道最大传输单元 (MTU)1436。您可以使用CLI命令诊断VPN隧道列表来验证这一点。这表明,FortiGate将为AES128 / SHA1的 3DES / SHA1和88字节分配64字节的架空,如果您将MTU从一个典型的以太网MTU中减去1500字节,这就是区别。

  您可以配置FortiGate来记录VPN事件。对于IPsec VPN,阶段1和阶段2的认证和加密事件被记录。有关如何解 释日志消息的信息,请参阅https://docs.fortinet.com。

  要查看IPsec VPN事件日志,请单击 Log & Report > VPN Events.

  样本日志表示阶段2的协商失败。

​  这个示例日志是用于拨号的IPsec VPN用户。这个移动用户使用FortiClient连接。

  日志消息表明用户已成功地进行了身份验证,并建立了隧道。

​  这张幻灯片展示了另一个拨号IPsec VPN日志的例子,其中用户身份验证失败,因此隧道没有建立。用户输入了错误的密码。

​  你可以监控在IPsec Monitor中有哪些拨号IPsec VPN用户连接。这显示了所有拨号的IPsec VPN用户的名字,这些用户目前连接到FortiGate,以及他们的IP地址。

​  你已经完成了这一课。现在,您将回顾本课程所涵盖的目标。

​  这一课涵盖了以下目标:

  • 描述IPsec VPN的好处
  • 熟悉IPsec协议
  • 了解IPsec是如何工作的
  • 识别和理解IKEv1的阶段
  • 理解拨号的IPsec VPN拓扑
  • 在两个FortiGate之间部署一个拨号VPN
  • FortiClient部署一个拨号VP
  • 使用最佳实践来部署拨号IPsec
  • 分析VPN日志和VPN监视器

 


  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值