RFC2401-Internet 协议的安全体系结构
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
组织:中国互动出版网(/)
RFC文档中文翻译计划(/compters/emook/aboutemook.htm)
E-mail:ouyang@
译者:尹欣袁磊陈代兵(theredfox xyin@)
译文发布时间: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.
目录:
一.介绍 4
1.1文档内容摘要 4
1.2 阅读对象 4
1.3 相关文档 5
二.设计目标 5
2.1 目的/目标/需求/问题描述 5
2.2 警告和假设 5
三.系统概况 6
3.1 IPsec能做什么 6
3.2 IPsec怎样工作 6
3.3 IPsec实现方式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层传输提供多种安全服务。
它包括IPv4和IPv6两种环境。
本文档描述了这种系统的目的,它们的构成和它们如何彼此结合以及如何嵌入IP环境。
本文档还描述了IPsec协议提供的安全服务以及如何在IP环境中使用这些服务。
本文档不涉及IPsec结构的所有方面。
后续文档将涉及额外的具有更多高级特性的的结构细节。
例如,在NA T环境下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.1 IPsec能做什么
IPsec为IP层提供安全服务,它使系统能按需选择安全协议,决定服务所使用的算法及放置服务所需密钥到相应位置。
IPsec用来保护一条或多条主机与主机间、安全网关与安全网关间、安全网关与主机间的路径。
(在IPsec 文档中,“安全网关”指的是执行IPsec协议的中间系统(intermediate system)。
例如,路由器或实现了IPsec的防火墙,我们称之为“安全网关”)
IPsec能提供的安全服务包括访问控制、无连接的完整性、数据源认证、抗重播(replay)保护、保密性和有限传输流保密性在内的服务。
因为这些服务均在IP层提供,所以任何高层协议均能使用它们。
例如,TCP,UDP,ICMP,BGP等等。
IPsec DOI也支持IP压缩协商[SMPT98]。
当在IPsec中使用加密而阻碍低层压缩的有效性时,IP压缩协商被激活。
3.2 IPsec怎样工作
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方案就十分相似。
但作为支持一个路由器或防火墙时,它必须象个网关一样操作。
四.安全连接(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头倍加密,隐藏(最终的)传输源和目的的标识。
而且,也可能调用ESP负载填充(ESP payload padding)隐藏包的尺寸,甚至隐藏传输的外部特性。
在拨号环境下,当一个移动用户被指定一个动态IP地址并对一个联合防火墙(corporate firewall )建立一个(隧道模式)ESP SA时,也可以提供类似的传输流保密服务。
值得注意的是粒度(granularity)较精巧的SAs通常比那些来自很多用户传输流粒度较粗糙的SAs更容易受到传输分析。
4.3安全连接的组合
穿过独立SA的IP数据报通过严密的安全协议(AH或ESP)受到保护。
对于特殊的传输流,而仅采用单一的SA时不能实现的。
在这种情况下,使用多重SAs以实现安全策略是必要的。
术语“安全连接束”或“SA束”定义为一个SAs序列(sequence),传输必须通过它来满足一个安全策略。
策略定义了序列的顺序。
(值得注意的是由束组成的SAs可能终止于不同的端点。
例如,一个SA可以在移动主机、网关和另一个网关之间延展,嵌套的SA可以延展到网关后的主机。
)
安全连接可以通过两种方式组合成束:传输邻接(transport adjacency)和隧道迭代(iterated tunneling )。
)-------------------------------
* 传输邻接指的是对同一个IP报文使用多于一个安全协议,而不采用隧道方式。
这种联合AH和ESP的方法只允许一级联合;更多的嵌套并不能增加效益(假设每一个协议中使用了足够强壮的算法),因为这一过程仅被执行于IPsec最终目的地的IP实例处。
主机1------------安全网关1-------------Internet-----------安全网关2------------主机 2
| | | |
| | | |
| --------------------------------安全连接1(ESP传输)------------------------------- | --------------------------------------安全连接2(AH 传输)-------------------------------------
* 隧道迭代指的是一种对安全协议的多层次应用,这一安全协议是通过IP隧道实现的。
这种方法允许多重叠代,这是因为每一个隧道可能沿着一路径在不同的IPsec站点(IPsec site)开始、结束。
除了那些能通过合适的SPD入口被定义的以外,在中间安全网关处对于ISAKMP 传输不希望采用特殊的处理。
(参看4.5节的例3)
有三种基本的隧道迭代情况――仅情况2,3需要支持:
1.对于SAs两个端点都是同样的――内部隧道和外部隧道采用AH或ESP,但主机1几乎是不可能把两个指定成一样的。
即AH的内部不可能是AH,ESP的内部不可能是ESP。
主机1------------安全网关1-------------Internet-----------安全网关2------------主机 2
| | | |
| | | |
| --------------------------------安全连接1(隧道)------------------------------------- |
--------------------------------------安全连接2(隧道)------------------------------------------
2.对于SAs一个端点是一样的――内部隧道和外部隧道采用AH或ESP。
主机1------------安全网关1-------------Internet-----------安全网关2------------主机 2
| | | |
| | | |
| ------------------------安全连接1(隧道)-------------------------- |
--------------------------------------安全连接2(隧道)------------------------------------------ 3.任意一个端点都不同――内部隧道和外部隧道采用AH或ESP。
主机1------------安全网关1-------------Internet-----------安全网关2------------主机 2
| | | |
| | | |
| ----------------安全连接1(隧道)---------------- | --------------------------------------安全连接2(隧道)------------------------------------------
这两种方式也可以被组合。
例如,一个SA束能由一个隧道模式SA和一个或两个传输模式SAs构成应用于序列。
(参看4.5节“安全连接的基本组合”。
)值得注意的是嵌套的隧道也能发生在任何隧道源或目的端点都不相同的地方。
在这种情况下,没有与嵌套隧道相关的带有束的主机或网关存在。
对于传输模式SAs,只有一个安全协议序是合适的。
AH应用于更高层协议和IP头。
因此在和ESP联合使用时,如果AH使用传输模式AH应该在IP后作为第一个头出现,并应在ESP出现之前。
在这种情况下,AH被使用于ESP的输出的密文。
相对应的,对于隧道模式的SAs,人们可以使用多个AH和ESP次序。
所需要的SA束类型集将在4.5节中描述,这些类型必须被一个适当的IPsec实现所支持。
4.4安全连接数据库
在一个IPsec实现中,和IP传输处理相关的大量细节是一个本地化的问题,它并不受标准的约束。
然而,一些处理的外部特性(external aspects)必须标准化以保证相互可操作性,以提供一个最基本的管理能力,这对于IPsec产品化使用时非常必要。
这一节描述了和安全连接相关的IP传输处理的通常模式,以达到相互可操作性和功能性的目标。
下面所描述的模式仅作参考,适合的实现并不需要在细节上和这一仅作示例的模式相一致,但这一实现的外部特性必须和这一模式外部的显著特征能构成一种映射。
这一模型中有两个数据库:安全策略数据库和安全连接数据库。
前者定义了一个决定从主机、安全网关、BITS或BITW IPsec实现输入、输出IP传输的部署。
后者包括和每一个安全连接相关的参数。
这一节也定义了选择符、IP集和高层协议域值的概念。
该值被策略数据库用来把传输映射到一个策略,即SA(或SA束)。
每一个被激活IPsec的接口需要内部和外部数据库(SAD和SPD)表面上的分离,这是因为大量作为选择使用的域具有有向性。
典型的,对于主机或安全网关(SG)就有一个这样的接口。
注意安全网关中有至少两个接口,但面对合作网(corporate net)的“内部”接口通常没有被激活的IPsec,因此它仅需要一对SADs和一对SPDs。
另一方面,如果一台主机有多个接口或一个安全网关有多个外部接口,那么每一个接口有独立的SAD和SPD对也许是有必要的。
4.4.1安全策略数据库(SPD)
根本上,安全连接是一个用来在IPsec环境中增加安全策略的管理结构。
因此SA处理必不可少的元素是一个下层的安全策略数据库,它定义哪些服务将被提供给IP数据报,用什么方式把哪些服务提供给IP数据报。
数据库和其接口的形式超出了这一规范的讨论范围。
然而,这一节定义了一个必须被提供的最小管理功能,它允许用户或系统管理员控制IPsec 如何应用于主机或一个安全网关收发传输。
在所有传输(输入和输出)包括非IPsec传输的处理过程中,SPD必须被考虑。
为了支持这,对于输入、输出传输SPD需要不同的入口。
我们可以把这看成彼此独立的SPDs(输入和输出)。
另外,对于每一个被激活IPsec接口,必须提供一个表面上独立的SPD。
SPD必须区分受IPsec保护的传输和允许通过IPsec的传输。
这运用于由发送者使用的IPsec保护和必须有接收者参与的IPsec保护。
对于任何输出或输入的数据报有三种可能的
选择:丢弃、穿过IPsec或使用IPsec。
第一种选择是指根本不允许退出主机、穿过安全网关,或最终传递到某一应用程序。
第二种选择指的是允许通过而不用额外IPsec保护的传输。
第三种选择指的是需要IPsec保护的传输并且对于这样的传输SPD必须规定提供的安全服务,所使用的协议、算法等等。
对于每一个IPsec实现,必须由一个可供管理的接口。
它允许用户或系统管理员管理SPD。
特别的,每一个输入或输出包受制于IPsec的处理,SPD必须定义在每一种情况下什么行为将被接受。
因此可供管理的接口必须允许用户(或系统管理者)定义安全处理,这一安全处理被运用于任何进出系统的包,基于包基的包。
(在一个利用套接口的主机中IPsec 实现里,SPD也许不必要在每一个包基(packet basis)上考虑,但效果是同样的。
)对SPD的管理接口必须允许创建和4.4.2节定义的选择符相一致的入口,并且必须支持这些入口的顺序(ordering)匹配。
通过各种选择符中通配符的使用,又由于一个基于单一UDP或TCP连接的所有包趋于匹配一个单一的SPD入口,可以减少对SPD规范过分细节化的需求。
选择符和在无状态防火墙或过滤路由器中能发现的以及用当前方式可管理的相类似。
在主机系统中,应用程序可以为其产生和使用传输选择安全处理方法。
(对于IPsec实现,提出(signalling)需求的方法超出了本标准的范围)然而,系统管理员必须能够规定用户或应用程序是否可以覆盖(缺省)系统策略。
值得注意的是应用程序定义的策略可以满足系统需求以至于系统不必作额外的超出系统需要的IPsec处理,但要满足应用程序需要。
本文档不定义管理接口的形式。
对于主机与安全网关管理接口形式可以不同,对于主机接口也有基于socket的也有BITS实现的。
但本文档定义了一个所有IPsec实现必须支持的SPD元素集标准。
SPD包括策略入口的有序列表。
每一个策略入口由一个或多个选择符标识,这些选择符定义了被这一策略入口包含的IP传输。
(所需选择符类型在4.4.2节定义)这些选择符定义了策略或IPsec处理的粒度。
每一个入口包括一个标识,它标识匹配这一策略的传输是允许通过,丢弃,还是进行IPsec处理。
如果运用IPsec处理,入口应包括SA(或SA束)的规范。
该规范列举了IPsec协议、模式和使用的算法,包括了任何嵌套需求。
例如,入口需要对所匹配的传输进行保护,在传输模式时,ESP使用3DES-CBC(3DES-CBC with an explicit IV),在隧道模式时,AH内嵌套的ESP使用HMAC/SHA-1。
对于每一个选择符,策略入口规定怎样为新的安全连接数据库(SAD,参看4.4.3节)从SPD和包中得到相应的值(注意现在对于IP地址仅支持值域;对于所用选择符可以使用通配符表达):
a.使用包自有的值――这将限制SA使用到一些包。
这些包对此选择符有这个包的值,即使对于此策略入口选择符有一个允许值范围或有一个通配符。
b.使用和策略入口相关的值――如果仅是个单值,则(a)和(b)没什么区别。
但是,选择符取值允许是域值或统配符时,在是域值的情况下,(b)能使SA使用于在范围内任何带有选择符值的包,而不仅仅是用于带有可以触发SA创建选择符值的包。
在通配符的情况下,(b)允许SA使用于带有任何此选择符值的包。
例如,假设有一个SPD入口允许源地址是主机地址范围内的任意值(192.168.2.1到192.168.2.10)。
并假设待送包源地址为192.168.2.3。
根据此选择符策略入口描述的是选择符值的源,对于SA下列任何值可以使用。
Source for the value to be used in the SA example of new SAD selector value
------------------------------------------------- --------------------------------------------
a. packet 192.168.2.3 (one host)
b. SPD entery 192.168.2.1 to 192.168.2.10(range of hosts)
注意如果对于源地址SPD入口有一个允许的通配符值,SAD选择符值可能是通配符(任何主机)。
情况(a)能使用于禁止共享,甚至在和同一个SPD入口相匹配的包之间。