IPSec
简介
Internet Protocol Security (IPsec)是一个安全网络协议套件,它可以完成认证加密数据包,从而为IP层网络设备提供安全加密通信。IPSec还被用到了VPN中。
IPsec包括了用于在客户端之间开始会话前建立相互认证和会话所用秘钥分发的协议簇。IPsec可以保护数据流在端到端,网络到网络,端到网络之间。IPsec使用密码安全服务来保护IP网络中的通信。它支持网络层对等身份认证,数据源认证,数据加密和重放保护。
IPsec
的应用
- 加密应用层数据
- 在公共互联网上为路由器发送数据提供安全保障
- 在不加密的情况下进行身份认证,比如验证来自一个已知发送者的数据报
- 通过使用
IPsec
隧道设置电路来保护网络数据,在这些电路中,所有数据在两个端点之间发送时都被加密,就像使用虚拟专用网络(VPN)连接一样
IPsec
优势
- 在路由器和防火墙中使用
IPsec
,对通过其边界的所有通信流提供强安全性,内部通信无安全开销 - 位于传输层之下,对所有应用透明
- 可以对终端用户透明,不需要对用户进行安全机制培训
安全架构
IPsec
是一个开放的组件,是IPv4套件的一部分。IPsec
使用了下面的这些协议实现各种各样的功能。
- Authentication Headers (AH)提供无连接数据完整性及为IP数据报提供数据源认证,同时为重放攻击提供保护(这里防止重放是用序列号,其他情况下可能使用时间戳的形式)。
- Encapsulating Security Payloads (ESP) (封装安全有效负载)提供加密,无连接数据完整性,数据源认证,抗重放共计,和有限的流量保密性。
- Security Associations (SA) 提供算法和数据包,这些算法和数据包提供AH和ESP所需的参数。互联网安全协会和秘钥管理协议
(ISAKMP)
提供了用于身份验证和秘钥交换的框架,带有通过手动配置的预共享密钥,Internet密钥交换(IKE和IKEv2),Kerberized Internet密钥协商(KINK)或IPSECKEY DNS记录提供的实际经过身份验证的密钥材料。
IPsec
在IP
层提供的服务
- 访问控制
- 无连接的完整新
- 数据来源验证
- 防重放攻击
- 加密和数据流分类加密
IPsec
的两种模式
- 传送模式
- 当协议在一台主机上实现时使用,
IPsec
头部被插在IP
头后面。主要为上层协议提供保护,加密和可选择的认证,用于在两个主机之间进行端到端通信。
- 当协议在一台主机上实现时使用,
- 隧道模式
- 整个包被封装加密,形成新的
IP
头部。沿途路由器不检查内部的IP
报头。 - 适用于隧道结束在某个非目的地(安全网关,防火墙)该目的地结束
IPsec
隧道,还原成原来数据包在本地网(局域网)传输(局域网不用理解IPsec
) - 隧道模式的另一个好处是可以将聚集
TCP
连接当成一个流加密。可以抵抗traffic analysis - 加密发生在外部主机与安全网关之间或者发生在两个安全网关之间。
- 整个包被封装加密,形成新的