IPsec 的工作原理、组件和用途

Simon2022-01-01 11:30:40

什么是 IPsec?

IPsec 是一套用于保护 Internet 通信安全的协议——实际上,该名称本身就是Internet Protocol Security的缩写。 

IPsec 于 20 世纪 90 年代首次编纂,受到需要保护互联网流量的曙光的启发:早期互联网主要连接安全的政府和大学建筑,以及定义在线通信工作方式的互联网协议 (IP) 发送信息围绕不安全和未加密。

IPsec 旨在创建互联网安全的通用标准,并启用了一些第一个真正安全的互联网连接。IPsec 不是您今天将使用的最常见的 Internet 安全协议,但它在保护 Internet 通信方面仍然发挥着至关重要的作用。

IPsec 有什么用?

如果您今天使用 IPsec,它可能是在虚拟专用网络或VPN 的环境中。顾名思义,VPN 在公共 Internet 上的两台机器之间创建网络连接,与专用内部网络中的连接一样安全(或几乎一样安全):可能 VPN 最著名的用例是允许远程员工访问公司防火墙后面的安全文件,就像他们在办公室工作一样。

在安全套件的协议是技术,主要种的安全VPN一个所谓的IPsec的VPN 自然。在本文的大部分内容中,当我们说 VPN 时我们指的是 IPsec VPN,在接下来的几个部分中,我们将解释它们的工作原理。

关于IPsec 端口的注意事项:如果您希望设置防火墙以允许 IPsec VPN 连接,请确保打开 UDP 端口 500 以及 IP 端口 50 和 51。

IPsec层

在我们深入了解 IPsec VPN 的工作原理之前,我们需要了解是什么赋予了它们在网络世界中的特殊地位,为此我们需要讨论OSI 网络模型。OSI 模型定义了七层——基本上是不断增加的抽象——在这些上进行网络通信。堆栈的顶部是第 7 层,即应用程序层,即您的 Web 浏览器所在的层;底部是第 1 层,即物理层,电脉冲在此通过电线传输。

该模型的核心是传输层(第 4 层)和网络层(第 3 层)。为管理传输层而编写的代码在单独的计算机上运行,​​并负责协调终端系统和主机之间的数据传输:要发送多少数据、以什么速率发送以及去向何处。一旦这一切都设置好了,传输层就会将数据交给网络层,网络层主要由运行在路由器和构成网络的其他组件上的代码控制。这些路由器决定单个网络数据包到达目的地的路由,但通信链两端的传输层代码不需要知道这些细节。

位于 Internet 核心的 TCP/IP 协议套件跨越这两层——TCP(或传输控制协议)用于传输,而 IP 用于网络。就其本身而言,IP 没有任何内置安全性,正如我们所指出的,这就是开发 IPsec 的原因。但是 IPsec 紧随其后的是SSL/TLS——TLS代表传输层安全,它涉及在该层加密通信。

如今,TLS 已内置于几乎所有浏览器和其他互联网连接应用程序中,并且对于日常互联网使用来说已经绰绰有余。但这并不完美,如果攻击者能够破解或以其他方式绕过您的 TLS 加密,他们就可以访问您通过 Internet 发送的单个网络数据包中的数据。这就是 IPsec VPN 可以添加另一层保护的原因:它涉及保护数据包本身。

IPsec 的工作原理

IPsec VPN 连接始于在两台正在通信的计算机或主机之间建立安全关联(SA) 。通常,这涉及交换加密密钥,这将允许各方对其通信进行加密和解密。(有关密码学一般工作原理的更多信息,请查看CSO 的密码学解释器。)所使用的确切加密类型是在两台主机之间自动协商的,并将取决于它们在CIA 三元组中的安全目标;例如,您可以加密消息以确保消息完整性(即,确保数据未被更改)而不是机密性。但在大多数情况下,您也会尝试对数据保密。

关于 SA 的信息被传递到在每个通信主机上运行的 IPsec 模块,每个主机的 IPsec 模块使用该信息来修改发送到另一台主机的每个 IP 数据包,并处理收到的类似修改后的数据包。这些修改会影响数据包的标头——数据包开头的元数据,解释数据包的去向、来源、长度和其他信息——以及它的有效载荷,即正在发送的实际数据。

IPsec 组件

三种主要的 IPsec 协议决定 IPsec 如何修改 IP 数据包:

  • Internet 密钥交换 (IKE)在通信主机之间建立 SA,协商将在会话过程中使用的加密密钥和算法。
  • 身份验证标头 (AH)向正在发送的数据包添加一个标头字段,其中包含数据包内容的加密散列。接收数据包的主机可以使用此散列来确保有效负载在传输过程中未被修改。
  • 封装安全负载 (ESP)对负载进行加密。它还在数据包头中添加一个序列号,以便接收主机可以确保它不会收到重复的数据包。

请注意,可以同时使用 AH 和 ESP,尽管较新版本的 ESP 协议包含了 AH 的大部分功能。无论如何,这两种协议都内置于 IP 实现中。

IPsec加密

IKE 和 ESP 建立的加密完成了我们期望从 IPsec VPN 中完成的大部分工作。您会注意到,我们对这里的加密工作方式有些含糊;这是因为 IKE 和 IPsec 允许使用广泛的加密套件和技术,这就是 IPsec 在该领域取得超过 20 年进步的原因。IPsec VPN 将公钥基础设施(PKI) 用于加密目的是相当普遍的,但这绝不是必需的,还有其他选项可用。

IPsec 模式:IPsec 隧道与 IPsec 传输

IPsec 有两种不同的运行方式,称为模式:隧道模式和传输模式。两者之间的区别与 IPsec 如何处理数据包头有关。在传输模式下,IPsec 仅加密(或验证,如果仅使用 AH)数据包的有效载荷,但或多或​​少地保留现有数据包头数据。在隧道模式下,IPsec 创建一个带有新标头的全新数据包,加密(或验证)包括其标头在内的整个原始数据包,并使用修改后的原始数据包作为新数据包的有效载荷。

你什么时候会使用不同的模式?如果网络数据包已从专用网络上的主机发送或发往专用网络上的主机,则该数据包的标头包含有关这些网络的路由数据——黑客可以分析该信息并将其用于恶意目的。保护该信息的隧道模式通常用于位于企业专用网络外边缘的网关之间的连接。一个数据包在离开一个网络时被加密,并放入一个新的数据包中,该数据包的目的地是目标网络的网关。一旦它到达网关,它就会被解密并从封装数据包中删除,并沿其发送到内部网络上的目标主机。因此,当数据包穿越公共互联网时,有关专用网络拓扑的标头数据永远不会公开。

另一方面,传输模式通常用于工作站到网关和主机到主机的直接连接。例如,使用 Windows 远程桌面帮助诊断用户计算机上的问题的服务技术将使用传输模式连接。

IPsec VPN 与 SSL VPN

如上所述,IPsec VPN 并不是城里唯一的游戏。还有SSL VPN,顾名思义它受 TLS 协议而非 IPsec 保护。SSL VPN 通过网络浏览器运行,通常用于访问有防火墙的内联网网站。因为它们内置于每个人都熟悉的浏览器软件中,所以 SSL VPN 使用起来要简单得多;IPsec VPN 通常需要安装和配置专门的软件。SSL VPN 还可以提供对专用网络的更细粒度的限制访问。

另一方面,由于它使用 TLS,因此 SSL VPN 在传输层而非网络层受到保护,因此这可能会影响您对它在多大程度上增强连接安全性的看法。

IPsec教程

哪里可以了解更多:

  • NetworkLessons 对IPsec 进行了深入的研究,引导您了解我们在此处浏览的技术细节。
  • IBM 还提供了一系列很好的快速指南,解释了如何配置各种 IPsec 连接的拓扑结构。
  • Netgate 将引导您完成一个站点到站点 IPsec VPN 连接的示例,该示例应该很有启发性


vpnipsec
本作品采用《CC 协议》,转载必须注明作者和本文链接
VPNIPSec VPN工作原理
2021-09-30 12:56:16
IPSec体系架构AH和ESP是IPSec的两种安全协议,用于实现IPSec在身份认证和数据加密方面的安全机制。具体来说,AH协议提供数据源认证、数据完整性校验和防报文重放功能。AH的工作原理是在原始数据包中添加一个身份认证报文头,为数据提供完整性保护。同时,作为可选项,在ESP认证数据部分,还可选择MD5、SHA-1、SM3算法保证报文的完整性和真实性。
IPSEC VPN 和SSL VPN是目前远程用户访问内网的两种主要vpn隧道加密技术。员工在家办公或者其他分支机构的员工访问总部的这些应用系统的时候,可以使用ssl vpn进行布置。因此对于两个机构之间形成一个局域网进行通信,只能用ipsec。但是随着站点的增加,运维压力和布置成本也会相应上升。这种情况用ssl vpn更好。
启动网络扩展功能以后,移动办公设备与虚拟网关之间会建立一条SSL VPN隧道,移动办公设备从虚拟网关地址池中获得一个私网IP地址,用于访问内网资源。虚拟网关解封装以后,再查找路由和安全策略,发送给服务器端。图 2 网络扩展业务交互流程因此,首先要允许移动办公用户通过HTTPS登录虚拟网关,建立SSL隧道。根据客户端配置,SSL隧道可能使用TCP 443端口或者UDP 443端口。
AH仅支持认证功能,不支持加密功能。在手工配置SA时,需要手工指定SPI的取值。IKEv1协商阶段1的目的是建立IKE SA。IKE SA建立后对等体间的所有ISAKMP消息都将通过加密和验证,这条安全通道可以保证IKEv1第二阶段的协商能够安全进行。IKEv1协商阶段2的目的就是建立用来安全传输数据的IPSec SA,并为数据传输衍生出密钥。
IPsec 是互联网最早的安全协议之一,它仍然为大多数 VPN 提供支持。
VPN隧道技术
2021-09-10 07:31:45
“隧道”可以看成是从源端到目的端(统称“隧道端点”)通过公共网络的线路上专门建立的一条虚拟、专用通道,但通道所采用的线路仍是公共网络中实际的线路。如图1所示的是在Internet上构建VPN隧道的示意图。
VPN身份认证技术
2021-09-12 09:43:06
对于一些使用PPP协议通信的二层VPN方案,如PPTP VPN和L2TP VPN,是直接采用数据链路层PPP协议支持的PAP(Password Authentication Protocol,密码认证协议)或CHAP(Challenge Handshake Authentication Protocol,质询握手认证协议)进行用户身份认证的。但必须确保PPP链路两端的接口上启用了相同的PPP认证方
日前,Zyxel发布了一份指南,旨在保护防火墙和VPN设备免受利用CVE-2023-28771、CVE-2023-33009和CVE-2023-33010漏洞的持续攻击。有威胁行为者正在尝试利用命令注入漏洞CVE-2023-28771以影响Zyxel防火墙。他们的目标是利用这个漏洞在受影响的系统上部署和安装恶意软件。
要满足特殊行业或企业的移动终端数据业务的高安全通信需求,必须在运营商通道上构建自主可控的移动 VPN 协议。针对小规模高安全接入应用场景,具体借鉴 L2TP/IPSec VPN 协议框架,对与协议封装、身份认证、策略交换、密钥协商相关的协商协议流程及交互内容等方面均提出了改进措施,可作为专用无线接入设备实现移动 VPN 软件功能的重要参考。
传输介质简介
Simon
暂无描述