• 作者简介:一名云计算网络运维人员、每天分享网络与运维的技术与干货。 
  •  座右铭:低头赶路,敬事如仪
  • 个人主页:网络豆的主页​​​​​​

目录

 前言

一.IPSec体系结构

1.IPSec体系结构

2. IPSec驱动程序

① IPSec驱动程序

② IPSec工作流程


 前言

本章将会讲解网络层的安全协议,了解IPSec体系结构,与工作原理。


一.IPSec体系结构

1.IPSec体系结构

IPSec(Internet协议安全)是一个工业标准网络安全协议,为IP网络通信提供透明的安全服务,保护TCP/IP通信免遭窃听和篡改,可以有效抵御网络攻击,同时保持易用性。

网络安全——网络层安全协议(2)

IPSec有两个基本目标:

①保护IP数据包安全。
②为抵御网络攻击提供防护措施。

IPSec基于一种端到端的安全模式。这种模式有一个基本前提假设,就是假定数据通信的传输媒介是不安全的,因此通信数据必须经过加密。


而掌握加解密方法的只有数据流的发送端和接收端,两者各自负责相应的数据加解密处理,而网络中其他只负责转发数据的路由器或主机无须支持IPSec。

该特性有助于企业用户在下列方案中成功地配置IPSec。

  • (1)局域网:C/S模式,对等模式。
  • (2)广域网:路由器到路由器模式,网关到网关模式。
  • (3)远程访问:拨号客户机,专网对Internet的访问。

网络安全——网络层安全协议(2)

 IPSec结合安全联盟、安全协议组和动态密钥管理三者来实现上述两个目标,如图所示,不仅能为企业局域网与拨号用户、域、网站、远程站点以及Extranet(外联网)之间的通信提供强有力且灵活的保护,而且还能用来筛选特定数据流。


IPSec(IP Security)协议是IETF安全工作组制定的一套可以用于IPv4和IPv6上的、具有互操作性的、基于密码学的安全协议。IPv4可选支持IPSec,IPv6必须支持IPSec。

网络安全——网络层安全协议(2)

 IPSec提供的安全服务包括访问控制、无连接的完整性、数据源头的认证、防重放功能、数据保密和一定的数据流保密等。IPSec协议产生的初衷是解决Internet上IP传输的安全性问题,它包括从RFC2401到RFC2412的一系列RFC,定义了一套默认的、强制实施的算法,以保证不同的实施方案可以互通。


IPSec标准包含了IP安全体系结构、IP认证AH头、IP封装安全载荷ESP和Internet密钥交换(IKE)4个核心的基本规范,组成了一个完整的安全体系结构,如图所示。

网络安全——网络层安全协议(2)

  •  (1)安全体系结构。包含一般的概念、安全需求和定义IPSec的技术机制。
  •  (2)ESP协议。加密IP数据包的默认值、头部格式以及与加密封装相关的其他条款。
  •  (3)AH协议。验证IP数据包的默认值、头部格式以及与认证相关的其他条款。
  •  (4)加密算法。描述各种加密算法如何用于ESP中。
  •  (5)验证算法。描述各种身份验证算法如何用于AH和ESP身份验证选项。
  •  (6)密钥管理。描述因特网IETF标准密钥管理方案。其中IKE是默认的密钥自动交换协议。
  • (7)解释域DOI。是因特网统一协议参数分配权威机构中数字分配机制的一部分,它描述的值是预知的。包括彼此相关各部分的标志符及运作参数。
  • (8)策略。决定两个实体之间能否通信,以及如何进行通信。策略的核心由三部分组成:SA、SAD、SPD。
  • SA(安全关联))表示了策略实施的具体细节,包括源/目的地址、应用协议、SPI(安全策略索引)等;SAD为进入和外出包处理维持一个活动的SA列表;SPD决定了整个VPN的安全需求。

网络安全——网络层安全协议(2)


2. IPSec驱动程序

① IPSec驱动程序

IPSec驱动程序负责监视、筛选和IP通信。它负责监视所有出入站的IP数据包,并将每个IP数据包与作为IP策略一部分的IP筛选器相匹配。一旦匹配成功,IPSec驱动程序通知IKE开始协商,图3-3为IPSec驱动程序服务示意图。

网络安全——网络层安全协议(2)

协商成功完成后,发送端IPSec驱动程序执行以下步骤。

  • (1)从IKE处获得SA和会话密钥。
  • (2)在IPSec驱动程序数据库中查找相匹配的出站SA,并将SA中的SPI插人IPSec包头。
  • (3)对数据包签名(完整性检查);如果要求机密,则另外加密数据包。
  • (4)将数据包随同SPI发送IP层,然后进一步转发至目的主机。

接收端IPSec驱动程序执行以下步骤。

  • (1)从IKE处获得会话密钥,SA和SPI。
  • (2)通过目的地址和SPI,在IPSec驱动程序数据库中查找相匹配的人站SA。
  • (3)检查签名,对数据包进行解密(如果是加密包的话)。
  • (4)将数据包递交给TCP/IP驱动程序,然后再交给接收应用程序。

② IPSec工作流程

网络安全——网络层安全协议(2)


IPSec的流程如下所述,为简单起见,本章假设这是一个Intranet例子,每台主机都有处于激活状态的IPSec策略。

  •   (1)用户甲(在主机A上)向用户乙(在主机B上)发送一消息。
  •   (2)主机A上的IPSec驱动程序检查IP筛选器,查看数据包是否需要以及需要受到何种保护。
  •   (3)驱动程序通知IKE开始协商。
  •   (4)主机B上的IKE收到请求协商通知。
  •   (5)两台主机建立第一阶段SA,各自生成共享“主密钥”。若两机在此前通信中已经建立起第一阶段SA,则可直接进行第二阶段SA协商。
  • (6)协商建立第二阶段SA对:入站SA和出站SA。SA包括密钥和SPI。
  •   (7) 主机A上的IPSec驱动程序使用出站SA,对数据包进行签名(完整性检查)与加密。
  •   (8) 驱动程序将数据包递交IP层,再由IP层将数据包转发至主机B。
  • (9)主机B网络适配器驱动程序收到数据包并提交给IPSec驱动程序。
  • (10)主机B上的IPSec驱动程序使用入站SA,检查签名完整性并对数据包进行解密。
  • (11)驱动程序将解密后的数据包提交上层TCP/IP驱动程序,再由TCP/IP驱动程序将数据包提交主机B的接收应用程序。

以上是IPSec的一个完整工作流程,虽然看起来很复杂,但所有操作对用户是完全透明的。


创作不易,求关注,点赞,收藏,谢谢~ 

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。