组织:中国互动出版网(www.china-pub/)
RFC文档中文翻译计划(www.china-pub/compters/emook/aboutemook.htm)
E-mail:ouyang@china-pub
译者:尹欣 袁磊 陈代兵(theredfox xyin@ccnu.edu)
译文发布时间:2001-4-3
版权:本中文翻译文档版权归中国互动出版网所有。可以用于非商业用途自由转载,但必须保留本文档的翻译及版权信息。
Network Working Group S. Kent
Request for Comments: 2401 BBN Corp
Obsoletes: 1825 R. Atkinson
Category: Standards Track @Home Network
November 1998
RFC2401 IP层协议安全结构
(RFC2401 Security Architecture for the Internet Protocol)
本备忘录状态:
This document specifies an Internet standards track protocol for the
Internet community, and requests discussion and suggestions for
improvements. Please refer to the current edition of the "Internet
Official Protocol Standards" (STD 1) for the standardization state
and status of this protocol. Distribution of this memo is unlimited.
版权声明
Copyright (C) The Internet Society (1998). All Rights Reserved.
目录:
1.介绍 4
1.1文档内容摘要 4
1.2阅读对象 4
1.3 相关文档 5
2设计目标 5
2.1目的/目标/需求/问题描述 5
2.2警告和假设 5
3.系统概况 6
3.1IPsec能做什么 6
3.2IPsec怎样工作 6
3.3IPsec实现方式 7
4.安全连接(SECURITY ASSOCIATION) 7
4.1定义和范围 7
4.2安全连接的功能性 8
4.3安全连接的组合 9
4.4安全连接数据库 10
4.4.1安全策略数据库(SPD) 10
4.4.2选择符 12
4.4.3安全连接数据库(SAD) 14
4.5 安全连接的基本组合 16
4.6 SA和密钥管理 18
4.6.1 手动技术 18
4.6.2 自动SA和密钥管理 18
4.6.3 定位一个安全网关 19
4.7 安全连接和多播 19
5.IP传输处理 20
5.1输出IP传输处理 20
5.1.1选择使用一个SA或者SA束 20
5.1.2隧道模式的头结构 20
5.2 输入IP传输处理 22
5.2.1 选择使用一个SA或者SA束 22
5.2.2 AH和ESP隧道的处理 23
6.ICMP处理(IPSEC相关内容) 23
6.1 PMTU/DF的处理 23
6.1.1 DF 位 23
6.1.2 Path MTU发现 (PMTU) 23
7.审查 25
8.在支持信息流安全的系统中的运用 25
8.1 安全连接与灵敏性数据的关系 26
8.2 灵敏度一致校验 26
8.3 SPD的附加MLS属性 26
9.性能问题 27
10.遵守的要求 27
11.安全考虑 27
12.与RFC1825的不同 28
附录A--词汇表 28
附录B PMTU/DF/分段问题的分析与讨论 29
B.1 DF 位 29
B.2 分段 30
B.3 Path MTU 发现 32
B.3.1 标识原始(originating)主机 33
B.3.2 PMTU的计
算 34
B.3.3 维护PMTU数据的粒度(granularity) 35
B.3.4 PMTU的每个套接口维护 36
B.3.5 通向传输层的PMTU数据的传输 36
B.3.6 PMTU数据的生命期 36
附录C 序列空间窗口代码(SEQUENCE SPACE WINDOW CODE)例子 36
APPENDIX D -- CATEGORIZATION OF ICMP MESSAGES 38
REFERENCES 38
DISCLAIMER 40
AUTHOR INFORMATION 40
版权说明 41
1.介绍
1.1文档内容摘要
本备忘录定义了IPsec适应系统的基本结构。这一结构的目的是为IP层传输提供多种安全服务。它包括IP
v4和IPv6两种环境。本文档描述了这种系统的目的,它们的构成和它们如何彼此结合以及如何嵌入IP环境。本文档还描述了IPsec协议提供的安全服务以及如何在IP环境中使用这些服务。本文档不涉及IPsec结构的所有方面。后续文档将涉及额外的具有更多高级特性的的结构细节。例如,在NAT环境下IPsec的使用,对IP多播更完善的支持等等。本文将根据潜在的必须的功能讨论IPsec安全结构的基本构成。额外的RFCs(参看1.3节指向的文档)定义了下面四个方面的协议:
a.安全协议――头部认证(AH)和封装安全负载(ESP)
b.安全连接――它们是什么,如何工作,怎样管理,怎样联合
c.密钥管理――手动的,自动的(The Internet Key Exchange(IKE))
d.认证和加密算法
本文档不是因特网安全结构的综述。仅涉及IP层的安全,这种安全是通过加密和协议安全机制的组合来实现的。
1.2阅读对象
本文档的阅读对象包括IP安全技术的实现者和其他对获得这一系统背景知识感兴趣的读者,特别是这一
技术的预期用户(最终用户或系统管理员)。附录提供了术语表以帮助阅读对象弥补背景/词汇中的不足。本文档假设读者熟悉IP层协议,相关网络技术,一般安全术语和概念。
1.3 相关文档
如上面所提及的,其他文档提供了一些IPsec组件以及他们相互关系的细节定义。它们包括在下面列出的RFCs中:
a."IP Security Document Roadmap"[TDG97]――该文档为本系统中使用到的加密和认证算法的描述提供了指南
b.安全协议――RFCs描述了头部认证(AH)[KA98a]和封装安全负载协议(ESP)[KA98b]
c.认证和加密算法――每一个算法都有一个独立的RFC
d.自动密钥管理――"The Internet Key Exchange (IKE)"[HC98],"Internet Security Association and Key Mangement Protocol (ISAKMP)"[MSST97],"The OAKLEY Key Determination Protocol"[Orm97],"The Internet IP Security Domain of Interpretation for ISAKMP"[Pip98]
2设计目标
2.1目的/目标/需求/问题描述
IPsec被设计成为能够为IPv4和IPv6提供可交互操作的高质量的基于加密的安全。安全服务集提供包括访问控制、无连接的完整性、数据源认证、抗重播(replay)保护(序列完整性(sequence integrity)的
一个组成部分)、保密性和有限传输流保密性在内的服务。这些服务是基于IP层的,提供对IP及其上层协议的保护。
这些目标是通过两大传输协议:头部认证(AH)、封装安全负载(ESP)和通过密钥管理过程和协议的使用来完成的。使用于任何环境中的IPsec协议集及其使用的方式是由用户、应用程序、和/或站点、组织对安全和系统的需求来决定。
当正确的实现、使用这些机制时,它们不应该对不使用这些安全机制保护传输的用户、主机和其他英特网部件产生负面的影响。这些机制也被设计成算法独立的。这一模块性允许选择不同的算法集而不影响其他部分的实现。例如:如果需要,不同的用户通讯可以采用不同的算法集。
定义一个缺省的标准集使全球英特网更容易交互。这些算法辅以IPsec传输保护和密钥管理协议的使用为系统和应用开发者采用基于IP层的高质量的加密的安全技术提供了途径。
2.2警告和假设
IPsec协议及相关缺省算法为英特网传输提供高质量的安全。但是,采用这些协议所提供的安全最终依赖于它们实现的质量,其外在表现为标准集的范围。此外,一个计算机系统或网络的安全是由许多因素决定的,它包括人、物、流程、有危险的散发(compromising emanations)以及计算机安全经验(practice)。因此IPsec仅仅只是综合性系统安全结构的一个组成部分。
最终,使用IPsec提供的安全很大程度上依赖于IPsec实现执行时操作所处操作环境中的诸多因素。例如,操作系统安全缺陷,较差质量的随机数源、不良的系统管理协议和经验等等都能降低使用IPsec所提供的安全。以上这些环境因素均不在这一或其他IPsec标准的讨论范围内。
3.系统概况
本节提供IPsec工作原理、系统构成以及如何组合提供上述安全服务的进一步说明。这一描述的目的是使读者对整个流程、系统有一个全貌,了解它是怎样适应IP环境的,为本文档的后续章节提供一个简述。在后续章节中将对每一个部分作更详细的描述。
IPsec实现工作于一个主机或一个安全网关的环境中,对IP传输提供保护。所提供的保护是基于:由用户或系统管理员建立和维护的安全策略数据库(SPD)所定义的需求;由用户或系统的管理员建立的具有约束性应用操作所定义的需求。通常,通过基于同数据库(SPD)入口相匹配的IP层和传输层头部信息的三种处理模式之一来选择包。 每一个包或被给予IPsec安全服务或被丢弃或被允许通过IPsec,这都基于选
择符定义的相应数据库策略。
3.1IPsec能做什么
IPsec为IP层提供安全服务,它使系统能按需选择安全协议,决定服务所使用的算法及放置服务所需密钥到相应位
置。IPsec用来保护一条或多条主机与主机间、安全网关与安全网关间、安全网关与主机间的路径。(在IPsec 文档中,“安全网关”指的是执行IPsec协议的中间系统(intermediate system)。例如,路由器或实现了IPsec的防火墙,我们称之为“安全网关”)
IPsec能提供的安全服务包括访问控制、无连接的完整性、数据源认证、抗重播(replay)保护、保密性和有限传输流保密性在内的服务。因为这些服务均在IP层提供,所以任何高层协议均能使用它们。例如,TCP,UDP,ICMP,BGP等等。
IPsec DOI也支持IP压缩协商[SMPT98]。当在IPsec中使用加密而阻碍低层压缩的有效性时,IP压缩协商被激活。
3.2IPsec怎样工作
IPsec使用两个协议来提供传输安全――头部认证(AH)、封装安全负载(ESP)。这两个协议都在各自的RFCs[KA98a,KA98b]中有详细的描述。
* IP头部认证(AH) [KA98a]提供无连接的完整性验证、数据源认证、选择性抗重播服务。
* 封装安全负载(ESP) [KA98b]提供加密、有限传输流加密。它也提供无连接的完整性验证、数据源认证、抗重播服务。(无论ESP什么时间被调用,这些安全服务的某一集合必须被应用)
* AH和ESP均是基于密钥的分布和与这些安全协议相关的传输流管理,AH和ESP均可作为访问控制的媒介物
这些协议或者独立使用或者组合使用以提供IPv4和IPv6环境下所需的安全服务集。每一个协议支持两种使用模式:传输模式,隧道模式。在传输模式下,协议为高层提供基本的保护;在隧道模式下,协议使IP包通过隧道传输。两种模式的区别将在第4章节讨论。
IPsec允许用户(系统管理员)控制安全服务的粒度(granularity)。例如,用户可以在两个安全网关间创建单一加密隧道传输所有信息,也可以为每一通过这些网关通讯的主机对的每一个TCP连接创建一个独立的加密隧道。IPsec管理必须体现下列特性:
* 使用哪些安全服务及在哪种组合中被使用
怎样给文档加密* 指定安全保护应该使用的粒度
* 对基于加密的安全产生影响的算法
因为这些安全服务使用共享的安全值(密钥),IPsec依赖一组独立的机制来存放这些密钥。(这些密钥用作认证、完整性验证及加密服务。)本文档需要支持手动、自动两种分配方式。它为自动密钥管理定义了一个特殊的基于公共密钥的方法(IKE-[MSST97,Orm97,HC98]),但其他自动密钥分配技术也可以(MAY)使用。
3.3IPsec实现方式
在主机上或路由器、防火墙(创建安全网关)的连接处,IPsec可以有几种实现方式。下面提供几个几个通常的例子:
a. IPsec完全嵌入原有的IP层实现。这需要涉及IP源码和这对主机和网关要都是适用的。
b. “Bump-in-the-stack"(BITS)实现。IPsec实
现于原有IP协议栈的下部,处于原有的IP和网络设备驱动之间。在这种情况下并不需要涉及IP协议栈的源码,所以该实现方法适于遗留系统。这种方法多在主机上采用。
c. 采用外接加密处理设备是军方、金融系统常用的网络安全系统设计方案。它有时被称为“Bump-in-the-wire”(BITW)实现。这种设计方案设计来服务于主机或网关(或两者兼有)。通常这种BITW设备是可设定IP地址的。(be IP addressable)当只支持一个单独的主机时,它和BITS方案就十分相似。但作为支持一个路由器或防火墙时,它必须象个网关一样操作。
4.安全连接(Security Association)
这节定义了基于IPv4和IPv6环境下实现AH、ESP对安全连接管理的需求。安全连接的概念是IPsec的基础。AH和ESP都使用了SAs,IKE的主要功能是建立和维护安全连接。所有AH和ESP的实现都必须支持下面描述的安全连接的概念。本节余下部分描述了安全连接管理的各个方面,定义了SA策略管理、传输处理、SA管理技术所需的特性。
4.1定义和范围
安全连接(SA)是一个单向“连接”,它为通过它的传输提供安全服务。SA通过AH或ESP但不是两者同时使用而提供安全服务。如果AH和ESP同时用于传输流的保护,那么应该创建两个或多个SA为传输流提供保护。通常为了安全,两台主机间或两个安全网关间或两个安全连接间(每个方向一个)都需要双向通讯。
安全连接由三个部分内容唯一标识――安全参数索引(SPI),IP目的地址,安全协议(AH和ESP)标识符。原则上,目的地址可以是一个点播地址,IP广播地址,或多播组地址。然而,当前IPsec SA管理机制只为点播SAs作了定义。因此,在接下来的讨论中,SAs将只描述点到点通讯的内容,即使这一概念也可以适用点到多的情况。
如上所述我们定义了两种类型的SAs:传输模式,隧道模式。传输模式SA是两台主机间的安全连接。在IPv4环境中,传输模式安全协议头紧接在IP头和任何选项之后,在任何更高层协议之前(例如TCP或UDP)。在IPv6环境中,安全协议头出现在基本IP头和扩展之后,但也许出现在目的选项的前或后,并在更高层协议之前。在采用ESP时,传输模式SA仅为更高层协议安全服务提供,而不为IP头或任何ESP头以前的扩展头提供服务。在采用AH时,这种保护也被扩展到IP头的可选部分、扩展头的可选部分和可选项(包括IPv4头,IPv6 Hop-by-Hop扩展头,或IPv6目的扩展头)。为了解更多关于AH给予的有效区域,请参看AH规范[KA98a]。
隧道模式SA必然是运用于IP隧道的SA。只要安全连接的任意一端是安全网关,SA就必须是隧道模式。因此两个安全网关之间总是隧道模式,同样主机和安全网关
间也必然是隧道模式。注意在传输是指向安全网关的情况下,例如SNMP命令,安全网关是作为主机提供服务的,因而传输模式是被允许的。但在这种情况下,安全网关不再扮演网关的角,例如它不再转
发传输流。两个主机间也可以建立隧道模式SA。由于为了避免IPsec包分段、重组时出现的潜在问题以及这一环境中安全网关后同一目的地存在多重到达路径(例如通过不同的安全网关),对于任意(转发传输流)SA包括安全网关都应该可以支持隧道模式。
对于隧道模式SA,有外部(outer)IP头,内部(inner)IP头。外部IP头定义了IPsec处理的目的地,内部IP头定义了包最终地址。安全协议头出现在外部IP头后内部IP头前。如果在隧道模式中使用AH,外部IP头的部分将受到保护。同样所有隧道化(tunneled)IP包也受到保护(即所有内部IP头、更高层协议受到保护)。如果使用ESP,则仅对隧道化的包给予保护而不保护外部头。
总而言之:
1. 主机必须支持传输模式和隧道模式;
2. 安全网关仅需要支持隧道模式即可。如果它支持传输模式,仅当安全网关作为主机时使用,例如作为网络管理。
4.2安全连接的功能性
由SA提供的安全服务集依赖于安全协议的选择,SA模式,SA端点以及在协议范围内可选服务的选择。例如,AH提供数据源认证和IP数据报无连接的完整性验证(以后均称为认证)。准确的讲,认证服务是
使用AH的安全连接粒度的功能。这将在4.4.2节讨论――选择符。
对于分离的接收者,AH提供抗重播(部分序列完整性)服务以防范拒绝服务的攻击。当不需要保密(或不允许,例如政府限制加密的使用)时,使用AH协议是适合的。AH也为IP头可选部分提供认证。这在某些情况下是有必要的。例如,如果在收发双方间,IPv4选项或IPv6扩展头的完整性必须被保护到路由时,AH能提供这种服务(除了IP头不可预料的,易变的部分)。
ESP可有选择的为传输提供保密。(保密服务的长度部分的依赖于所使用的加密算法。)ESP也可以有选择的提供认证服务(正如上面所定义的)。如果一个ESP SA认证经过协商,接受方也可以选择具有和AH抗重播服务一样特性的增强抗重播服务。由ESP提供的认证范围比AH所提供的要窄。例如,ESP头外部的IP头就不受保护。如果仅上层协议需要被认证,那么ESP认证是个合适的选择并且它具有比使用AH封装ESP时更高的空间效率。要注意的是尽管保密和认证均是可选的,但是他们不能都被省略。它们中至少有一个必须被选择。
如果选择保密服务,则两个安全网关间的ESP(隧道模式) SA能提供局部传输流保密。隧道模式的使用允许内部IP头倍加密
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论