IP Sec 定义

IPSec全称是Internet Protocol Security ,因特网协议安全,由IETF官方定义。

RFC-1825 to RFC-1827。属于一种协议套件,通过认证和加密数据包来保证因特网安全通信。

  • 属于端到端的安全模式。

  • 保护跨IP网络的应用层通信。但应用层无需设计使用IPSec。

    • 可以使用SSL(安全套接字),TLS(传输层安全),安全壳(SSH)。
  • IPSec是ISO标准网络层安全协议的后继者。

  • IP协议的安全性:使用IPSec解决

  • IPSec提供网络层加密方案,在网络层对内容先加密再传输。

    • 数据加密方式有
      • 传输模式:对数据部分payload加密。
      • 隧道模式:对整个IP分组进行加密。

数据保护措施

  • 数据保密:使用各种加密手法。主要是对称加密技术。要保证公钥的合法性,我们需要确认发送证书的一方不是伪装的攻击者。X.509证书作为可信第三方为通信双方做身份验证。或者使用预共享的密钥,RSA密钥。
  • 数据完整性度量:保证数据完整。数据做摘要,完整接收后再进行摘要比对。
  • 来源认证:确认收发双方,以信息摘要的方式解决。信息摘要种包含了发送方的地址信息HMAC
  • 防止重放攻击:加上时间戳+随机数,保证消息唯一区分。

IPSec 的一些基本理念

AH认证头协议

AH比ESP相比具有更强的认证能力。能有效在数据传送过程中对数据进行完整性度量度量和来源认证,防止重放攻击。

工作原理:在IP数据报前加上一个身份验证报头,报头中有一个带密钥的Hash值。

可单独使用,也可以和ESP协议结合使用。

ESP封装安全载荷协议

能够对数据进行完整性度量,来源认证和加密,防止重放攻击。

  • ESP服务依据建立的SA,对可选项目有所限制

    • 完整性检查和验证一起进行
  • 加密服务是可选的。启用加密,那么也就启用了完整性检车和认证。

  • 一般情况下,ESP只加密数据报中有效载荷部分(传输模式),在端对端的隧道通信下,需要开启隧道模式。

  • ESP报头位置在IP报头之后,在TCP,UDP报头之前。

  • 可以与AH协议结合使用,也可以单独使用。

Tunnel隧道模式

加密原IP报文,作为数据内容,在这段数据内容之前,加上ESP或AH协议头,加上新的IP头,形成IPSec报文进行传输。

Transport Mode传输模式

仅保护IP报文中的有效载荷部分,在该过程中原报文结构被修改。然后在修改后有效载荷前加上新的ESP或AH协议头,装回原来的IP地址,形成IPSec报文。

SA

安全关联。可以认为是某一连接被IPSec保护的唯一标识。

SA是单向的,一次连接,通信双方都需要创建一个SA。

SAD

安全关联数据库。

SAD条目:

  1. 顺序号计数器
  2. 顺序号溢出计数器
  3. 防止回放窗口
  4. SA有效期
  5. AH协议中所使用的算法和密钥
  6. ESP协议 涉及加密认证的算法和密钥
  7. IPSec运行模式
  8. PMTU 两个通信设备间的MTU

除了SAD外还有 SPI,SPD,IKE

ESP协议

1. 主要了解隧道模式下IPSec数据报结构。

新IP头 + ESP头 + 加密原数据报 + 加密ESP尾 + ESP的MAC验证码

2. 传输模式下的IPSec数据报结构

原IP头+ESP头+加密的原IP数据报文+加密的ESP尾+ESP-MAC 

AH协议

不加密,供验证。消息高,不防窃听。

IKE 因特网密钥交换

几种IKE协议。

ISAKMP:用于建立SA,密钥。

Oakley:允许在非安全连接中安全交换密钥

SKEME:安全密钥交换机制。

Gateway 模式和Road Warrior模式

IPSec适用于:

  1. 两个私有网络通过因特网对接
  2. 因特网接入私有网络

需要保护好通信数据。

Gateway模式是网关之间的通信,只需要在网关上设置好IPSec模式。

Road Warrior模式一头是网关,另外一头是单个客户端。

注: 私有网络内部主机默认为安全,没有必要对私有网络中的每一个设备配置IPsec