
| 网络协议 |
| 5. 应用层 |
|
DHCP · DNS · FTP · Gopher · HTTP · IMAP4 · IRC · NNTP · XMPP · POP3 · SIP · SMTP · SNMP · SSH · TELNET · RPC · RTCP · RTSP · TLS · SDP · SOAP · GTP · STUN · NTP · 更多 |
| 4. 传输层 |
| TCP · UDP · DCCP · SCTP · RTP · RSVP · PPTP · 更多 |
| 3. 网络层 |
| IP (IPv4 · IPv6) · ARP · RARP · ICMP · ICMPv6 · IGMP · RIP · OSPF · BGP · IS-IS · IPsec · 更多 |
| 2. 数据链路层 |
| 802.11 · 802.16 · Wi-Fi · WiMAX · ATM · DTM · 令牌环 · 以太网 · FDDI · 帧中继 · GPRS · EVDO · HSPA · HDLC · PPP · L2TP · ISDN · 更多 |
| 1. 物理层 |
| 以太网物理层 · 调制解调器 · PLC · SONET/SDH · G.709 · 光导纤维 · 同轴电缆 · 双绞线 · 更多 |
|
本模板: 查看 • 讨论 • 编辑 • 历史
|
IPsec(缩写IP Security)是保护IP协议安全通信的标准,它主要对IP协议分组进行加密和认证。
IPsec作为一个协议族(即一系列相互关联的协议)由以下部分组成:(1)保护分组流的协议;(2)用来建立这些安全分组流的密钥交换协议。前者又分成两个部分:加密分组流的封装安全载荷(ESP)及较少使用的认证头(AH),认证头提供了对分组流的认证并保证其消息完整性,但不提供保密性。目前为止,IKE协议是唯一已经制定的密钥交换协议。
目录 |
IPv6是IETF为IP协议分组通信制定的新的因特网标准,IPsec是其中必选的内容,但在IPv4中的使用则是可选的。这样做的目的,是为了随着IPv6的进一步流行,IPsec可以得到更为广泛的使用。IPsec协议在RFCs 2401-2409中定义,根据工作进展,至2004年会有新版的替换文档发布。
IPsec被设计用来提供(1)入口对入口通信安全,在此机制下,分组通信的安全性由单个节点提供给多台机器(甚至可以是整个局域网);(2)端到端分组通信安全,由作为端点的计算机完成安全操作。上述的任意一种模式都可以用来构建虚拟专用网 (VPN),而这也是IPsec最主要的用途之一。应该注意的是,上述两种操作模式在安全的实现方面有着很大差别。
因特网范围内端到端通信安全的发展比预料的要缓慢。其中部分原因,是因为其不够普遍或者说不被普遍信任。公钥基础设施能够得以形成(DNSSEC最初就是为此产生的),一部分是因为许多用户不能充分地认清他们的需求及可用的选项,导致其作为内含物强加到卖主的产品中(这也必将得到广泛采用);另一部分可能归因于网络响应的退化(或说预期退化),就像兜售信息的充斥而带来的带宽损失一样。
IPsec协议工作在OSI 模型的第三层,使其在单独使用时适于保护基于TCP和UDP的协议。这就意味着,与传输层或更高层的协议相比(如 SSL就不能保护UDP层的通信流),IPsec协议必须处理可靠性和分片的问题,这同时也增加了它的复杂性和处理开销。相对而言,SSL/TLS依靠更高层的TCP(OSI的第四层)来管理可靠性和分片。
认证头(AH)被用来保证被传输分组的完整性和可靠性。此外,它还保护不受重发攻击。认证头试图保护IP数据报的所有字段,那些在传输IP分组的过程中要发生变化的字段就只能被排除在外。
认证头分组图示:
| 0 | 1 | 2 | 3 |
| 0 1 2 3 4 5 6 7 | 0 1 2 3 4 5 6 7 | 0 1 2 3 4 5 6 7 | 0 1 2 3 4 5 6 7 |
| 下一个头 | 载荷长度 | 保留 | |
| 安全参数索引(SPI) | |||
| 序列号 | |||
|
认证数据 (可变长度) |
|||
字段含义:
封装安全载荷(ESP)协议对分组提供了源可靠性、完整性和保密性的支持。与AH头不同的是,IP分组头部不被包括在内。
ESP分组图示:
| 0 | 1 | 2 | 3 | ||||||||||||||||||||||||||||
| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 安全参数序列(SPI) | |||||||||||||||||||||||||||||||
| 序列号 | |||||||||||||||||||||||||||||||
|
载荷 * (可变长度) |
|||||||||||||||||||||||||||||||
| 填充 (0-255 字节) | |||||||||||||||||||||||||||||||
| 填充长度 | 下一个头 | ||||||||||||||||||||||||||||||
|
Authentication Data (variable) 认证数据(可变长度) |
|||||||||||||||||||||||||||||||
字段含义:
FreeS/WAN项目已经开发了一个开源的GNU/Linux环境下的IPsec实现。且一个基于KAME项目的IPsec实现已经包含在NetBSD、FreeBSD以及2.6 Linux内核中。从某种程度上说,也是因为这个原因,Free S/WAN项目的开发在2004年3月时被中止。Openswan和strongSwan是Free S/WAN延续。
至今已有许多IPsec协议和ISAKMP/IKE协议的实现。它们包括:
Why are we here?
All text is available under the terms of the GNU Free Documentation License
This page is cache of Wikipedia. History