Internet Engineering Task Force (IETF) P. Eronen Request for Comments: 5998 Independent Updates: 5996 H. Tschofenig Category: Standards Track Nokia Siemens Networks ISSN: 2070-1721 Y. Sheffer Independent September 2010
Internet Engineering Task Force (IETF) P. Eronen Request for Comments: 5998 Independent Updates: 5996 H. Tschofenig Category: Standards Track Nokia Siemens Networks ISSN: 2070-1721 Y. Sheffer Independent September 2010
An Extension for EAP-Only Authentication in IKEv2
IKEv2中仅EAP身份验证的扩展
Abstract
摘要
IKEv2 specifies that Extensible Authentication Protocol (EAP) authentication must be used together with responder authentication based on public key signatures. This is necessary with old EAP methods that provide only unilateral authentication using, e.g., one-time passwords or token cards.
IKEv2指定可扩展身份验证协议(EAP)身份验证必须与基于公钥签名的响应者身份验证一起使用。这对于仅使用一次性密码或令牌卡提供单向身份验证的旧EAP方法是必要的。
This document specifies how EAP methods that provide mutual authentication and key agreement can be used to provide extensible responder authentication for IKEv2 based on methods other than public key signatures.
本文档规定了如何使用提供相互身份验证和密钥协商的EAP方法为IKEv2提供基于公钥签名以外的方法的可扩展响应者身份验证。
Status of This Memo
关于下段备忘
This is an Internet Standards Track document.
这是一份互联网标准跟踪文件。
This document is a product of the Internet Engineering Task Force (IETF). It represents the consensus of the IETF community. It has received public review and has been approved for publication by the Internet Engineering Steering Group (IESG). Further information on Internet Standards is available in Section 2 of RFC 5741.
本文件是互联网工程任务组(IETF)的产品。它代表了IETF社区的共识。它已经接受了公众审查,并已被互联网工程指导小组(IESG)批准出版。有关互联网标准的更多信息,请参见RFC 5741第2节。
Information about the current status of this document, any errata, and how to provide feedback on it may be obtained at http://www.rfc-editor.org/info/rfc5998.
有关本文件当前状态、任何勘误表以及如何提供反馈的信息,请访问http://www.rfc-editor.org/info/rfc5998.
Copyright Notice
版权公告
Copyright (c) 2010 IETF Trust and the persons identified as the document authors. All rights reserved.
版权所有(c)2010 IETF信托基金和确定为文件作者的人员。版权所有。
This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License.
本文件受BCP 78和IETF信托有关IETF文件的法律规定的约束(http://trustee.ietf.org/license-info)自本文件出版之日起生效。请仔细阅读这些文件,因为它们描述了您对本文件的权利和限制。从本文件中提取的代码组件必须包括信托法律条款第4.e节中所述的简化BSD许可证文本,并提供简化BSD许可证中所述的无担保。
This document may contain material from IETF Documents or IETF Contributions published or made publicly available before November 10, 2008. The person(s) controlling the copyright in some of this material may not have granted the IETF Trust the right to allow modifications of such material outside the IETF Standards Process. Without obtaining an adequate license from the person(s) controlling the copyright in such materials, this document may not be modified outside the IETF Standards Process, and derivative works of it may not be created outside the IETF Standards Process, except to format it for publication as an RFC or to translate it into languages other than English.
本文件可能包含2008年11月10日之前发布或公开的IETF文件或IETF贡献中的材料。控制某些材料版权的人员可能未授予IETF信托允许在IETF标准流程之外修改此类材料的权利。在未从控制此类材料版权的人员处获得充分许可的情况下,不得在IETF标准流程之外修改本文件,也不得在IETF标准流程之外创建其衍生作品,除了将其格式化以RFC形式发布或将其翻译成英语以外的其他语言。
The Extensible Authentication Protocol (EAP), defined in [RFC3748], is an authentication framework that supports multiple authentication mechanisms. Today, EAP has been implemented at end hosts and routers that connect via switched circuits or dial-up lines using PPP [RFC1661], IEEE 802 wired switches [IEEE8021X], and IEEE 802.11 wireless access points [IEEE80211i].
[RFC3748]中定义的可扩展身份验证协议(EAP)是一个支持多种身份验证机制的身份验证框架。如今,EAP已经在终端主机和路由器上实现,这些终端主机和路由器使用PPP[RFC1661]、IEEE 802有线交换机[IEEE8021X]和IEEE 802.11无线接入点[IEEE801I]通过交换电路或拨号线路进行连接。
One of the advantages of the EAP architecture is its flexibility. EAP is used to select a specific authentication mechanism, typically after the authenticator requests more information in order to determine the specific authentication method to be used. Rather than requiring the authenticator (e.g., wireless LAN access point) to be updated to support each new authentication method, EAP permits the use of a backend authentication server that may implement some or all authentication methods.
EAP体系结构的优点之一是它的灵活性。EAP用于选择特定的认证机制,通常在认证者请求更多信息以确定要使用的特定认证方法之后。EAP不需要更新认证器(例如,无线LAN接入点)以支持每个新的认证方法,而是允许使用可实现部分或全部认证方法的后端认证服务器。
IKEv2 ([RFC4306] and [RFC5996]) is a component of IPsec used for performing mutual authentication and establishing and maintaining Security Associations (SAs) for IPsec ESP and Authentication Header (AH). In addition to supporting authentication using public key signatures and shared secrets, IKEv2 also supports EAP authentication.
IKEv2([RFC4306]和[RFC5996])是IPsec的一个组件,用于执行相互身份验证以及为IPsec ESP和身份验证头(AH)建立和维护安全关联(SA)。除了支持使用公钥签名和共享秘密的身份验证外,IKEv2还支持EAP身份验证。
IKEv2 provides EAP authentication since it was recognized that public key signatures and shared secrets are not flexible enough to meet the requirements of many deployment scenarios. By using EAP, IKEv2 can leverage existing authentication infrastructure and credential databases, since EAP allows users to choose a method suitable for existing credentials, and also makes separation of the IKEv2 responder (VPN gateway) from the EAP authentication endpoint (backend Authentication, Authorization, and Accounting (AAA) server) easier.
IKEv2提供EAP身份验证,因为人们认识到公钥签名和共享机密不够灵活,无法满足许多部署场景的要求。通过使用EAP,IKEv2可以利用现有的身份验证基础设施和凭据数据库,因为EAP允许用户选择适合现有凭据的方法,并且还将IKEv2响应程序(VPN网关)与EAP身份验证端点(后端身份验证、授权和记帐(AAA)服务器)分离更容易的。
Some older EAP methods are designed for unilateral authentication only (that is, EAP peer to EAP server). These methods are used in conjunction with IKEv2 public-key-based authentication of the responder to the initiator. It is expected that this approach is especially useful for "road warrior" VPN gateways that use, for instance, one-time passwords or token cards to authenticate the clients.
一些旧的EAP方法仅设计用于单边身份验证(即EAP对等EAP服务器)。这些方法与响应者对启动器的基于IKEv2公钥的身份验证结合使用。预计这种方法对于使用一次性密码或令牌卡对客户端进行身份验证的“road warrior”VPN网关特别有用。
However, most newer EAP methods, such as those typically used with IEEE 802.11i wireless LANs, provide mutual authentication and key agreement. Currently, IKEv2 specifies that these EAP methods must also be used together with responder authentication based on public key signatures.
然而,大多数较新的EAP方法,例如通常与IEEE 802.11i无线LAN一起使用的方法,提供相互认证和密钥协商。目前,IKEv2规定这些EAP方法还必须与基于公钥签名的响应者身份验证一起使用。
In order for the public key signature authentication of the gateway to be effective, a deployment of Public Key Infrastructure (PKI) is required, which has to include management of trust anchors on all supplicants. In many environments, this is not realistic, and the security of the gateway public key is the same as the security of a self-signed certificate. Mutually authenticating EAP methods alone can provide a sufficient level of security in many circumstances, and in fact, in some deployments, IEEE 802.11i uses EAP without any PKI for authenticating the Wireless Local Area Network (WLAN) access points.
为了使网关的公钥签名认证有效,需要部署公钥基础设施(PKI),其中必须包括对所有请求方的信任锚的管理。在许多环境中,这是不现实的,网关公钥的安全性与自签名证书的安全性相同。在许多情况下,仅相互认证EAP方法就可以提供足够的安全级别,事实上,在某些部署中,IEEE 802.11i使用不带任何PKI的EAP来认证无线局域网(WLAN)接入点。
This document specifies how EAP methods that offer mutual authentication and key agreement can be used to provide responder authentication in IKEv2 completely based on EAP.
本文档规定了如何使用提供相互认证和密钥协商的EAP方法在完全基于EAP的IKEv2中提供响应者认证。
All notation in this protocol extension is taken from [RFC4306].
本协议扩展中的所有符号取自[RFC4306]。
Numbered messages refer to the IKEv2 message sequence when using EAP.
使用EAP时,编号消息指的是IKEv2消息序列。
Thus:
因此:
o Message 1 is the request message of IKE_SA_INIT.
o 消息1是IKE_SA_INIT的请求消息。
o Message 2 is the response message of IKE_SA_INIT.
o 消息2是IKE_SA_INIT的响应消息。
o Message 3 is the first request of IKE_AUTH.
o 消息3是IKE_AUTH的第一个请求。
o Message 4 is the first response of IKE_AUTH.
o 消息4是IKE_AUTH的第一个响应。
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in [RFC2119].
本文件中的关键词“必须”、“不得”、“必需”、“应”、“不应”、“应”、“不应”、“建议”、“可”和“可选”应按照[RFC2119]中所述进行解释。
In this section, we describe two scenarios for extensible authentication within IKEv2. These scenarios are intended to be illustrative examples rather than specifying how things should be done.
在本节中,我们将描述IKEv2中可扩展身份验证的两个场景。这些场景旨在作为说明性示例,而不是指定应如何操作。
Figure 1 shows a configuration where the EAP and the IKEv2 endpoints are co-located. Authenticating the IKEv2 responder using both EAP and public key signatures is redundant. Offering EAP-based authentication has the advantage that multiple different authentication and key exchange protocols are available with EAP with different security properties (such as strong password-based protocols, protocols offering user identity confidentiality, and many more).
图1显示了EAP和IKEv2端点位于同一位置的配置。使用EAP和公钥签名对IKEv2响应程序进行身份验证是多余的。提供基于EAP的身份验证的优点是,EAP可以使用多种不同的身份验证和密钥交换协议,这些协议具有不同的安全属性(例如,基于强密码的协议、提供用户身份保密性的协议等)。
+------+-----+ +------------+ O | IKEv2 | | IKEv2 | /|\ | Initiator |<---////////////////////--->| Responder | / \ +------------+ IKEv2 +------------+ User | EAP Peer | Exchange | EAP Server | +------------+ +------------+
+------+-----+ +------------+ O | IKEv2 | | IKEv2 | /|\ | Initiator |<---////////////////////--->| Responder | / \ +------------+ IKEv2 +------------+ User | EAP Peer | Exchange | EAP Server | +------------+ +------------+
Figure 1: EAP and IKEv2 Endpoints Are Co-Located
图1:EAP和IKEv2端点位于同一位置
Figure 2 shows a typical corporate network access scenario. The initiator (client) interacts with the responder (VPN gateway) in the corporate network. The EAP exchange within IKE runs between the
图2显示了一个典型的公司网络访问场景。发起方(客户端)与企业网络中的响应方(VPN网关)进行交互。IKE中的EAP交换在
client and the home AAA server. As a result of a successful EAP authentication protocol run, session keys are established and sent from the AAA server to the VPN gateway, and then used to authenticate the IKEv2 SA with AUTH payloads.
客户端和家庭AAA服务器。作为EAP身份验证协议成功运行的结果,会话密钥被建立并从AAA服务器发送到VPN网关,然后用于使用身份验证有效负载对IKEv2 SA进行身份验证。
The protocol used between the VPN gateway and AAA server could be, for instance, Diameter [RFC4072] or RADIUS [RFC3579]. See Section 6 for related security considerations.
VPN网关和AAA服务器之间使用的协议可以是,例如,Diameter[RFC4072]或RADIUS[RFC3579]。有关安全注意事项,请参见第6节。
+-------------------------------+ | Corporate network | | | +-----------+ +--------+ | | IKEv2 | AAA | Home | | IKEv2 +////----->+ Responder +<---------->+ AAA | | Exchange / | (VPN GW) | (RADIUS/ | Server | | / +-----------+ Diameter) +--------+ | / | carrying EAP | | | | | +-------------------------------+ v +------+-----+ o | IKEv2 | /|\ | Initiator | / \ | VPN client | User +------------+
+-------------------------------+ | Corporate network | | | +-----------+ +--------+ | | IKEv2 | AAA | Home | | IKEv2 +////----->+ Responder +<---------->+ AAA | | Exchange / | (VPN GW) | (RADIUS/ | Server | | / +-----------+ Diameter) +--------+ | / | carrying EAP | | | | | +-------------------------------+ v +------+-----+ o | IKEv2 | /|\ | Initiator | / \ | VPN client | User +------------+
Figure 2: Corporate Network Access
图2:企业网络访问
IKEv2 specifies that when the EAP method establishes a shared secret key, that key is used by both the initiator and responder to generate an AUTH payload (thus authenticating the IKEv2 SA set up by messages 1 and 2).
IKEv2指定当EAP方法建立共享密钥时,该密钥由发起方和响应方用于生成身份验证有效负载(从而验证消息1和2设置的IKEv2 SA)。
When used together with public key responder authentication, the responder is, in effect, authenticated using two different methods: the public key signature AUTH payload in message 4, and the EAP-based AUTH payload later.
当与公钥响应者身份验证一起使用时,响应者实际上使用两种不同的方法进行身份验证:消息4中的公钥签名身份验证有效负载和稍后基于EAP的身份验证有效负载。
If the initiator does not wish to use public-key-based responder authentication, it includes an EAP_ONLY_AUTHENTICATION notification payload (16417) in message 3. The Protocol ID and Security Parameter Index (SPI) size fields are set to zero, and there is no additional data associated with this notification.
如果发起方不希望使用基于公钥的响应方身份验证,则在消息3中包括仅EAP__身份验证通知有效负载(16417)。协议ID和安全参数索引(SPI)大小字段设置为零,并且没有与此通知关联的其他数据。
If the responder supports this notification and chooses to use it, it omits the public-key-based AUTH payload and CERT payloads from message 4.
如果响应者支持此通知并选择使用它,则会从消息4中忽略基于公钥的身份验证有效负载和证书有效负载。
If the responder does not support the EAP_ONLY_AUTHENTICATION notification or does not wish to use it, it ignores the notification payload, and includes the AUTH payload in message 4. In this case, the initiator MUST verify that payload and any associated certificates, as per [RFC4306].
如果响应程序不支持EAP_ONLY_身份验证通知或不希望使用该通知,则会忽略通知有效负载,并在消息4中包含身份验证有效负载。在这种情况下,启动器必须按照[RFC4306]验证有效负载和任何相关证书。
When receiving message 4, the initiator MUST verify that the proposed EAP method is allowed by this specification, and MUST abort the protocol immediately otherwise.
当接收到消息4时,发起方必须验证提议的EAP方法是否为本规范所允许,否则必须立即中止协议。
Both the initiator and responder MUST verify that the EAP method actually used provided mutual authentication and established a shared secret key. The AUTH payloads sent after EAP Success MUST use the EAP-generated key, and MUST NOT use SK_pi or SK_pr (see Section 2.15 of [RFC5996]).
发起方和响应方都必须验证实际使用的EAP方法是否提供了相互身份验证并建立了共享密钥。EAP成功后发送的验证有效载荷必须使用EAP生成的密钥,不得使用SK_pi或SK_pr(见[RFC5996]第2.15节)。
An IKEv2 message exchange with this modification is shown below:
具有此修改的IKEv2消息交换如下所示:
Initiator Responder ----------- ----------- HDR, SAi1, KEi, Ni, [N(NAT_DETECTION_SOURCE_IP), N(NAT_DETECTION_DESTINATION_IP)] -->
Initiator Responder ----------- ----------- HDR, SAi1, KEi, Ni, [N(NAT_DETECTION_SOURCE_IP), N(NAT_DETECTION_DESTINATION_IP)] -->
<-- HDR, SAr1, KEr, Nr, [CERTREQ], [N(NAT_DETECTION_SOURCE_IP), N(NAT_DETECTION_DESTINATION_IP)]
<--HDR、SAr1、KEr、Nr、[CERTREQ]、[N(NAT\U检测\U源\U IP)、N(NAT\U检测\U目的地\U IP)]
HDR, SK { IDi, [IDr], SAi2, TSi, TSr, N(EAP_ONLY_AUTHENTICATION), [CP(CFG_REQUEST)] } -->
HDR, SK { IDi, [IDr], SAi2, TSi, TSr, N(EAP_ONLY_AUTHENTICATION), [CP(CFG_REQUEST)] } -->
<-- HDR, SK { IDr, EAP(Request) }
<-- HDR, SK { IDr, EAP(Request) }
HDR, SK { EAP(Response) } -->
HDR, SK { EAP(Response) } -->
<-- HDR, SK { EAP(Request) }
<-- HDR, SK { EAP(Request) }
HDR, SK { EAP(Response) } -->
HDR, SK { EAP(Response) } -->
<-- HDR, SK { EAP(Success) }
<-- HDR, SK { EAP(Success) }
HDR, SK { AUTH } -->
HDR, SK { AUTH } -->
<-- HDR, SK { AUTH, SAr2, TSi, TSr, [CP(CFG_REPLY] }
<-- HDR, SK { AUTH, SAr2, TSi, TSr, [CP(CFG_REPLY] }
Note: all notation in the above protocol sequence and elsewhere in this specification is as defined in [RFC4306], and see in particular Sec. 1.2 of [RFC4306] for payload types.
注:上述协议序列和本规范其他部分中的所有符号如[RFC4306]所定义,具体见第。有效载荷类型的[RFC4306]第1.2条。
The NAT detection and Configuration payloads are shown for informative purposes only; they do not change how EAP authentication works.
显示NAT检测和配置有效载荷仅供参考;它们不会改变EAP身份验证的工作方式。
An IKE SA that was set up with this extension can be resumed using the mechanism described in [RFC5723]. However, session resumption does not change the authentication method. Therefore, during the IKE_AUTH exchange of the resumed session, this extension MUST NOT be sent by the initiator.
使用此扩展设置的IKE SA可以使用[RFC5723]中描述的机制恢复。但是,会话恢复不会更改身份验证方法。因此,在恢复会话的IKE_身份验证交换期间,启动器不得发送此扩展。
EAP methods to be used with this extension MUST have the following properties:
要与此扩展一起使用的EAP方法必须具有以下属性:
1. The method provides mutual authentication of the peers.
1. 该方法提供对等方的相互认证。
2. The method is key-generating.
2. 该方法是密钥生成。
3. The method is resistant to dictionary attacks.
3. 该方法可以抵抗字典攻击。
The authors believe that the following EAP methods are secure when used with the current extension. The list is not inclusive, and there are likely other safe methods that have not been listed here.
作者认为,当与当前扩展一起使用时,以下EAP方法是安全的。该列表不包括在内,可能还有其他安全方法未在此处列出。
+-------------------------------+-------------------+---------------+ | Method Name | Allows Channel | Reference | | | Binding? | | +-------------------------------+-------------------+---------------+ | EAP-SIM | No | [RFC4186] | | EAP-AKA | Yes | [RFC4187] | | EAP-AKA' | Yes | [RFC5448] | | EAP-GPSK | Yes | [RFC5433] | | EAP-pwd | No | [RFC5931] | | EAP-EKE | Yes | [EMU-EAP-EKE] | | EAP-PAX | Yes | [RFC4746] | | EAP-SAKE | No | [RFC4763] | | EAP-SRP | No | [EAP-SRP] | | EAP-POTP (mutual | Yes | [RFC4793] | | authentication variant) | | | | EAP-TLS | No | [RFC5216] | | EAP-FAST | No | [RFC4851] | | EAP-TTLS | No | [RFC5281] | +-------------------------------+-------------------+---------------+
+-------------------------------+-------------------+---------------+ | Method Name | Allows Channel | Reference | | | Binding? | | +-------------------------------+-------------------+---------------+ | EAP-SIM | No | [RFC4186] | | EAP-AKA | Yes | [RFC4187] | | EAP-AKA' | Yes | [RFC5448] | | EAP-GPSK | Yes | [RFC5433] | | EAP-pwd | No | [RFC5931] | | EAP-EKE | Yes | [EMU-EAP-EKE] | | EAP-PAX | Yes | [RFC4746] | | EAP-SAKE | No | [RFC4763] | | EAP-SRP | No | [EAP-SRP] | | EAP-POTP (mutual | Yes | [RFC4793] | | authentication variant) | | | | EAP-TLS | No | [RFC5216] | | EAP-FAST | No | [RFC4851] | | EAP-TTLS | No | [RFC5281] | +-------------------------------+-------------------+---------------+
The "Allows channel binding?" column denotes protocols where protected identity information may be sent between the EAP endpoints. This third, optional property of the method provides protection against certain types of attacks (see Section 6.2 for an explanation), and therefore in some scenarios, methods that allow for channel binding are to be preferred. It is noted that at the time of writing, even when such capabilities are provided, they are not fully specified in an interoperable manner. In particular, no RFC specifies what identities should be sent under the protection of the channel binding mechanism, or what policy is to be used to correlate identities at the different layers.
“允许通道绑定?”列表示可在EAP端点之间发送受保护标识信息的协议。该方法的第三个可选属性针对某些类型的攻击提供保护(有关说明,请参见第6.2节),因此在某些情况下,首选允许通道绑定的方法。值得注意的是,在撰写本文时,即使提供了这些功能,它们也没有以可互操作的方式完全指定。特别是,没有RFC指定在通道绑定机制的保护下应该发送什么身份,或者使用什么策略来关联不同层的身份。
This document defines a new IKEv2 Notification Payload type, EAP_ONLY_AUTHENTICATION, described in Section 3. This payload has been assigned the type number 16417 from the "Status Types" range.
本文档定义了一种新的IKEv2通知有效负载类型,即第3节中描述的EAP_ONLY_认证。该有效载荷已从“状态类型”范围分配类型号16417。
Security considerations applicable to all EAP methods are discussed in [RFC3748]. The EAP Key Management Framework [RFC5247] deals with issues that arise when EAP is used as a part of a larger system.
[RFC3748]中讨论了适用于所有EAP方法的安全注意事项。EAP密钥管理框架[RFC5247]处理将EAP用作更大系统的一部分时出现的问题。
It is important to note that the IKEv2 SA is not authenticated by just running an EAP conversation: the crucial step is the AUTH payload based on the EAP-generated key. Thus, EAP methods that do not provide mutual authentication or establish a shared secret key MUST NOT be used with the modifications presented in this document.
需要注意的是,IKEv2 SA并不是通过运行EAP会话来进行身份验证的:关键步骤是基于EAP生成的密钥的身份验证有效负载。因此,不提供相互认证或不建立共享密钥的EAP方法不得在本文件所述修改的情况下使用。
As described in Section 2, the EAP conversation can terminate either at the IKEv2 responder or at a backend AAA server.
如第2节所述,EAP对话可以在IKEv2响应程序或后端AAA服务器处终止。
If the EAP method is terminated at the IKEv2 responder, then no key transport via the AAA infrastructure is required. Pre-shared secret and public-key-based authentication offered by IKEv2 is then replaced by a wider range of authentication and key exchange methods.
如果EAP方法在IKEv2响应程序处终止,则不需要通过AAA基础设施进行密钥传输。IKEv2提供的基于预共享秘密和公钥的身份验证随后被更广泛的身份验证和密钥交换方法所取代。
However, typically EAP will be used with a backend AAA server. See [RFC5247] for a more complete discussion of the related security issues; here we provide only a short summary.
但是,通常EAP将与后端AAA服务器一起使用。有关相关安全问题的更完整讨论,请参见[RFC5247];这里我们只提供一个简短的总结。
When a backend server is used, there are actually two authentication exchanges: the EAP method between the client and the AAA server, and another authentication between the AAA server and IKEv2 gateway. The AAA server authenticates the client using the selected EAP method, and they establish a session key. The AAA server then sends this key to the IKEv2 gateway over a connection authenticated using, e.g., IPsec or Transport Layer Security (TLS).
当使用后端服务器时,实际上有两种身份验证交换:客户端和AAA服务器之间的EAP方法,以及AAA服务器和IKEv2网关之间的另一种身份验证。AAA服务器使用选定的EAP方法对客户端进行身份验证,并建立会话密钥。AAA服务器然后通过使用IPsec或传输层安全性(TLS)等进行身份验证的连接将该密钥发送到IKEv2网关。
Some EAP methods do not have any concept of pass-through authenticator (e.g., Network Access Server (NAS) or IKEv2 gateway) identity, and these two authentications remain quite independent of each other. That is, after the client has verified the AUTH payload sent by the IKEv2 gateway, it knows that it is talking to SOME gateway trusted by the home AAA server, but not which one. The
一些EAP方法没有任何直通认证器(例如,网络访问服务器(NAS)或IKEv2网关)身份的概念,并且这两种认证仍然彼此非常独立。也就是说,在客户端验证了IKEv2网关发送的身份验证有效负载后,它知道它正在与家庭AAA服务器信任的某个网关通信,但不知道是哪个网关。这个
situation is somewhat similar if a single cryptographic hardware accelerator, containing a single private key, would be shared between multiple IKEv2 gateways (perhaps in some kind of cluster configuration). In particular, if one of the gateways is compromised, it can impersonate any of the other gateways towards the user (until the compromise is discovered and access rights revoked).
如果包含单个私钥的单个加密硬件加速器将在多个IKEv2网关之间共享(可能在某种集群配置中),则情况会有些类似。特别是,如果其中一个网关被破坏,它可以向用户模拟任何其他网关(直到发现破坏并撤销访问权限)。
In some environments it is not desirable to trust the IKEv2 gateways this much (also known as the "Lying NAS Problem"). EAP methods that provide what is called "connection binding" or "channel binding" transport some identity or identities of the gateway (or WLAN access point / NAS) inside the EAP method. Then the AAA server can check that it is indeed sending the key to the gateway expected by the client. A potential solution is described in [EAP-SERVICE], see also [EMU-AAAPAY].
在某些环境中,不希望如此信任IKEv2网关(也称为“说谎NAS问题”)。提供所谓“连接绑定”或“通道绑定”的EAP方法在EAP方法内传输网关(或WLAN接入点/NAS)的一些标识。然后AAA服务器可以检查它是否确实正在将密钥发送到客户端期望的网关。[EAP-SERVICE]中描述了一种可能的解决方案,另请参见[EMU-AAAPAY]。
In some deployment configurations, AAA proxies may be present between the IKEv2 gateway and the backend AAA server. These AAA proxies MUST be trusted for secure operation, and therefore SHOULD be avoided when possible; see Section 2.3.4 of [RFC4072] and Section 4.3.7 of [RFC3579] for more discussion.
在某些部署配置中,IKEv2网关和后端AAA服务器之间可能存在AAA代理。必须信任这些AAA代理以确保安全操作,因此应尽可能避免使用这些代理;更多讨论请参见[RFC4072]第2.3.4节和[RFC3579]第4.3.7节。
Although the EAP payloads are encrypted and integrity protected with SK_e/SK_a, this does not provide any protection against active attackers. Until the AUTH payload has been received and verified, a man-in-the-middle can change the KEi/KEr payloads and eavesdrop or modify the EAP payloads.
尽管EAP有效载荷通过SK_e/SK_a进行加密和完整性保护,但这并不提供任何针对主动攻击者的保护。在收到并验证认证有效载荷之前,中间人可以更改KEi/KEr有效载荷并窃听或修改EAP有效载荷。
In IEEE 802.11i wireless LANs, the EAP payloads are neither encrypted nor integrity protected (by the link layer), so EAP methods are typically designed to take that into account.
在IEEE 802.11i无线局域网中,EAP有效载荷既不加密也不受完整性保护(通过链路层),因此EAP方法通常被设计为考虑到这一点。
In particular, EAP methods that are vulnerable to dictionary attacks when used in WLANs are still vulnerable (to active attackers) when run inside IKEv2.
特别是,在WLAN中使用时易受字典攻击的EAP方法在IKEv2中运行时仍然易受攻击(主动攻击者)。
The rules in Section 4 are designed to avoid this potential vulnerability.
第4节中的规则旨在避免此潜在漏洞。
When using this protocol, each of the peers sends two identity values:
使用此协议时,每个对等方发送两个标识值:
1. An identity contained in the IKE ID payload.
1. IKE ID有效负载中包含的标识。
2. An identity transferred within the specific EAP method's messages.
2. 在特定EAP方法的消息中传输的标识。
(IKEv2 omits the EAP Identity request/response pair, see Section 3.16 of [RFC5996].) The first identity value can be used by the recipient to route AAA messages and/or to select authentication and EAP types. But it is only the second identity that is directly authenticated by the EAP method. The reader is referred to Section 2.16 of [RFC5996] regarding the need to base IPsec policy decisions on the authenticated identity. In the context of the extension described here, this guidance on IPsec policy applies both to the authentication of the client by the gateway and vice versa.
(IKEv2省略了EAP标识请求/响应对,请参见[RFC5996]第3.16节)。收件人可以使用第一个标识值来路由AAA消息和/或选择认证和EAP类型。但只有第二个身份由EAP方法直接验证。读者可参考[RFC5996]第2.16节,了解基于身份验证的IPsec策略决策的需要。在这里描述的扩展上下文中,此IPsec策略指导既适用于网关对客户端的身份验证,也适用于网关对客户端的身份验证。
IKEv2 provides confidentiality for the initiator identity against passive eavesdroppers, but not against active attackers. The initiator announces its identity first (in message 3), before the responder has been authenticated. The usage of EAP in IKEv2 does not change this situation, since the ID payload in message 3 is used instead of the EAP Identity Request/Response exchange. This is somewhat unfortunate since when EAP is used with public key authentication of the responder, it would be possible to provide active user identity confidentiality for the initiator.
IKEv2针对被动窃听者而不是主动攻击者为启动器身份提供保密性。在响应者经过身份验证之前,发起者首先宣布其身份(在消息3中)。在IKEv2中使用EAP不会改变这种情况,因为使用消息3中的ID有效负载而不是EAP身份请求/响应交换。这有点不幸,因为当EAP与响应者的公钥身份验证一起使用时,可能会为启动器提供活动用户身份保密性。
IKEv2 protects the responder's identity even against active attacks. This property cannot be provided when using EAP. If public key responder authentication is used in addition to EAP, the responder reveals its identity before authenticating the initiator. If only EAP is used (as proposed in this document), the situation depends on the EAP method used (in some EAP methods, the server reveals its identity first).
IKEv2保护响应者的身份,即使是在主动攻击下。使用EAP时无法提供此属性。如果除了EAP之外还使用公钥响应者身份验证,则响应者会在验证启动器之前显示其身份。如果仅使用EAP(如本文档中所建议的),则情况取决于所使用的EAP方法(在某些EAP方法中,服务器首先显示其身份)。
Hence, if active user identity confidentiality for the responder is required then EAP methods that offer this functionality have to be used (see [RFC3748], Section 7.3).
因此,如果要求响应者主动用户身份保密,则必须使用提供此功能的EAP方法(见[RFC3748],第7.3节)。
This document borrows some text from [RFC3748], [RFC4306], and [RFC4072]. We would also like to thank Hugo Krawczyk for interesting discussions about this topic, Dan Harkins, and David Harrington for their comments.
本文档借用了[RFC3748]、[RFC4306]和[RFC4072]中的一些文本。我们还要感谢雨果·克劳奇克对这个话题的有趣讨论,丹·哈金斯和大卫·哈林顿的评论。
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997.
[RFC2119]Bradner,S.,“RFC中用于表示需求水平的关键词”,BCP 14,RFC 2119,1997年3月。
[RFC3748] Aboba, B., Blunk, L., Vollbrecht, J., Carlson, J., and H. Levkowetz, "Extensible Authentication Protocol (EAP)", RFC 3748, June 2004.
[RFC3748]Aboba,B.,Blunk,L.,Vollbrecht,J.,Carlson,J.,和H.Levkowetz,“可扩展身份验证协议(EAP)”,RFC 3748,2004年6月。
[RFC4306] Kaufman, C., "Internet Key Exchange (IKEv2) Protocol", RFC 4306, December 2005.
[RFC4306]Kaufman,C.,“互联网密钥交换(IKEv2)协议”,RFC43062005年12月。
[RFC5723] Sheffer, Y. and H. Tschofenig, "Internet Key Exchange Protocol Version 2 (IKEv2) Session Resumption", RFC 5723, January 2010.
[RFC5723]Sheffer,Y.和H.Tschofenig,“互联网密钥交换协议第2版(IKEv2)会话恢复”,RFC 57232010年1月。
[RFC5996] Kaufman, C., Hoffman, P., Nir, Y., and P. Eronen, "Internet Key Exchange Protocol Version 2 (IKEv2)", RFC 5996, September 2010.
[RFC5996]Kaufman,C.,Hoffman,P.,Nir,Y.,和P.Eronen,“互联网密钥交换协议版本2(IKEv2)”,RFC 59962010年9月。
[EAP-SERVICE] Arkko, J. and P. Eronen, "Authenticated Service Information for the Extensible Authentication Protocol (EAP)", Work in Progress, October 2005.
[EAP-SERVICE]Arkko,J.和P.Erenen,“可扩展认证协议(EAP)的认证服务信息”,正在进行的工作,2005年10月。
[EAP-SRP] Carlson, J., Aboba, B., and H. Haverinen, "EAP SRP-SHA1 Authentication Protocol", Work in Progress, July 2001.
[EAP-SRP]Carlson,J.,Aboba,B.,和H.Haverinen,“EAP-SRP-SHA1认证协议”,正在进行的工作,2001年7月。
[EMU-AAAPAY] Clancy, C., Lior, A., Zorn, G., and K. Hoeper, "EAP Method Support for Transporting AAA Payloads", Work in Progress, May 2010.
[EMU-AAAPAY]克兰西,C.,莱奥,A.,佐恩,G.,和K.霍珀,“EAP方法支持AAA有效载荷的运输”,正在进行的工作,2010年5月。
[EMU-EAP-EKE] Sheffer, Y., Zorn, G., Tschofenig, H., and S. Fluhrer, "An EAP Authentication Method Based on the EKE Protocol", Work in Progress, August 2010.
[EMU-EAP-EKE]Sheffer,Y.,Zorn,G.,Tschofenig,H.,和S.Fluhrer,“基于EKE协议的EAP认证方法”,正在进行的工作,2010年8月。
[IEEE80211i] Institute of Electrical and Electronics Engineers, "IEEE Standard for Information technology - Telecommunications and information exchange between systems - Local and metropolitan area networks - Specific requirements - Part 11: Wireless Medium Access Control (MAC) and Physical Layer (PHY) specifications: Amendment 6: Medium Access Control (MAC) Security Enhancements", IEEE Standard 802.11i-2004, July 2004.
[IEEE80211i]电气和电子工程师协会,“IEEE信息技术标准-系统间电信和信息交换-局域网和城域网-特殊要求-第11部分:无线媒体访问控制(MAC)和物理层(PHY)规范:修改件6:介质访问控制(MAC)安全增强”,IEEE标准802.11i-2004,2004年7月。
[IEEE8021X] Institute of Electrical and Electronics Engineers, "Local and Metropolitan Area Networks: Port-Based Network Access Control", IEEE Standard 802.1X-2001, 2001.
[IEEE8021X]电气和电子工程师协会,“局域网和城域网:基于端口的网络访问控制”,IEEE标准802.1X-2001,2001年。
[RFC1661] Simpson, W., "The Point-to-Point Protocol (PPP)", STD 51, RFC 1661, July 1994.
[RFC1661]辛普森,W.“点对点协议(PPP)”,标准51,RFC1661,1994年7月。
[RFC3579] Aboba, B. and P. Calhoun, "RADIUS (Remote Authentication Dial In User Service) Support For Extensible Authentication Protocol (EAP)", RFC 3579, September 2003.
[RFC3579]Aboba,B.和P.Calhoun,“RADIUS(远程认证拨入用户服务)对可扩展认证协议(EAP)的支持”,RFC 3579,2003年9月。
[RFC4072] Eronen, P., Hiller, T., and G. Zorn, "Diameter Extensible Authentication Protocol (EAP) Application", RFC 4072, August 2005.
[RFC4072]Eronen,P.,Hiller,T.,和G.Zorn,“直径可扩展认证协议(EAP)应用”,RFC 4072,2005年8月。
[RFC4186] Haverinen, H. and J. Salowey, "Extensible Authentication Protocol Method for Global System for Mobile Communications (GSM) Subscriber Identity Modules (EAP-SIM)", RFC 4186, January 2006.
[RFC4186]Haverinen,H.和J.Salowey,“全球移动通信系统(GSM)用户身份模块(EAP-SIM)的可扩展认证协议方法”,RFC 4186,2006年1月。
[RFC4187] Arkko, J. and H. Haverinen, "Extensible Authentication Protocol Method for 3rd Generation Authentication and Key Agreement (EAP-AKA)", RFC 4187, January 2006.
[RFC4187]Arkko,J.和H.Haverinen,“第三代认证和密钥协议(EAP-AKA)的可扩展认证协议方法”,RFC 4187,2006年1月。
[RFC4746] Clancy, T. and W. Arbaugh, "Extensible Authentication Protocol (EAP) Password Authenticated Exchange", RFC 4746, November 2006.
[RFC4746]Clancy,T.和W.Arbaugh,“可扩展认证协议(EAP)密码认证交换”,RFC 47462006年11月。
[RFC4763] Vanderveen, M. and H. Soliman, "Extensible Authentication Protocol Method for Shared-secret Authentication and Key Establishment (EAP-SAKE)", RFC 4763, November 2006.
[RFC4763]Vanderveen,M.和H.Soliman,“用于共享秘密身份验证和密钥建立的可扩展身份验证协议方法(EAP-SAKE)”,RFC 4763,2006年11月。
[RFC4793] Nystroem, M., "The EAP Protected One-Time Password Protocol (EAP-POTP)", RFC 4793, February 2007.
[RFC4793]Nystroem,M.“EAP保护一次性密码协议(EAP-POTP)”,RFC 4793,2007年2月。
[RFC4851] Cam-Winget, N., McGrew, D., Salowey, J., and H. Zhou, "The Flexible Authentication via Secure Tunneling Extensible Authentication Protocol Method (EAP-FAST)", RFC 4851, May 2007.
[RFC4851]Cam Winget,N.,McGrew,D.,Salowey,J.,和H.Zhou,“通过安全隧道可扩展认证协议方法(EAP-FAST)的灵活认证”,RFC 4851,2007年5月。
[RFC5216] Simon, D., Aboba, B., and R. Hurst, "The EAP-TLS Authentication Protocol", RFC 5216, March 2008.
[RFC5216]Simon,D.,Aboba,B.和R.Hurst,“EAP-TLS认证协议”,RFC 5216,2008年3月。
[RFC5247] Aboba, B., Simon, D., and P. Eronen, "Extensible Authentication Protocol (EAP) Key Management Framework", RFC 5247, August 2008.
[RFC5247]Aboba,B.,Simon,D.,和P.Eronen,“可扩展认证协议(EAP)密钥管理框架”,RFC 5247,2008年8月。
[RFC5281] Funk, P. and S. Blake-Wilson, "Extensible Authentication Protocol Tunneled Transport Layer Security Authenticated Protocol Version 0 (EAP-TTLSv0)", RFC 5281, August 2008.
[RFC5281]Funk,P.和S.Blake Wilson,“可扩展认证协议隧道传输层安全认证协议版本0(EAP-TTLSv0)”,RFC 52812008年8月。
[RFC5433] Clancy, T. and H. Tschofenig, "Extensible Authentication Protocol - Generalized Pre-Shared Key (EAP-GPSK) Method", RFC 5433, February 2009.
[RFC5433]Clancy,T.和H.Tschofenig,“可扩展认证协议-通用预共享密钥(EAP-GPSK)方法”,RFC 5433,2009年2月。
[RFC5448] Arkko, J., Lehtovirta, V., and P. Eronen, "Improved Extensible Authentication Protocol Method for 3rd Generation Authentication and Key Agreement (EAP-AKA')", RFC 5448, May 2009.
[RFC5448]Arkko,J.,Lehtovirta,V.,和P.Erenen,“第三代认证和密钥协议(EAP-AKA')的改进可扩展认证协议方法”,RFC 5448,2009年5月。
[RFC5931] Harkins, D. and G. Zorn, "Extensible Authentication Protocol (EAP) Authentication Using Only A Password", RFC 5931, August 2010.
[RFC5931]Harkins,D.和G.Zorn,“仅使用密码的可扩展身份验证协议(EAP)身份验证”,RFC 59312010年8月。
In this section, we list alternatives that have been considered during the work on this document. We concluded that the solution presented in Section 3 seems to fit better into IKEv2.
在本节中,我们列出了本文件编写过程中考虑的备选方案。我们得出结论,第3节中给出的解决方案似乎更适合IKEv2。
With this approach, the initiator simply ignores the AUTH payload in message 4 (but obviously must check the second AUTH payload later!). The main advantage of this approach is that no protocol modifications are required and no signature verification is required. A significant disadvantage is that the EAP method to be used cannot be selected to take this behavior into account.
使用这种方法,启动器只需忽略消息4中的身份验证有效负载(但显然以后必须检查第二个身份验证有效负载!)。这种方法的主要优点是不需要修改协议,也不需要签名验证。一个显著的缺点是,无法选择要使用的EAP方法来考虑这种行为。
The initiator could signal to the responder (using a notification payload) that it did not verify the first AUTH payload.
发起者可以(使用通知负载)向响应者发出信号,表示它没有验证第一个身份验证负载。
Another solution approach suggests the use of unauthenticated public keys in the public key signature AUTH payload (for message 4).
另一种解决方案方法建议在公钥签名验证有效负载(对于消息4)中使用未经验证的公钥。
That is, the initiator verifies the signature in the AUTH payload, but does not verify that the public key indeed belongs to the intended party (using certificates) -- since it doesn't have a PKI that would allow this. This could be used with X.509 certificates (the initiator ignores all other fields of the certificate except the public key), or "Raw RSA Key" CERT payloads.
也就是说,发起方验证身份验证有效负载中的签名,但不验证公钥是否确实属于目标方(使用证书)——因为它没有允许这样做的PKI。这可以用于X.509证书(启动器忽略证书中除公钥以外的所有其他字段)或“原始RSA密钥”证书有效载荷。
This approach has the advantage that initiators that wish to perform certificate-based responder authentication (in addition to EAP) may do so, without requiring the responder to handle these cases separately. A disadvantage here, again, is that the EAP method selection cannot take into account the incomplete validation of the responder's certificate.
这种方法的优点是,希望执行基于证书的响应者身份验证(除了EAP)的启动器可以这样做,而不需要响应者单独处理这些情况。这里的一个缺点是,EAP方法选择不能考虑响应者证书的不完整验证。
If using RSA, the overhead of signature verification is quite small, compared to the g^xy calculation required by the Diffie-Hellman exchange.
如果使用RSA,与Diffie-Hellman交换所需的g^xy计算相比,签名验证的开销非常小。
It has been proposed that when using an EAP method that provides mutual authentication and key agreement, the IKEv2 Diffie-Hellman exchange could also be omitted. This would mean that the session keys for IPsec SAs established later would rely only on EAP-provided keys.
有人提出,当使用提供相互认证和密钥协商的EAP方法时,也可以省略IKEv2 Diffie-Hellman交换。这意味着稍后建立的IPsec SA的会话密钥将仅依赖于EAP提供的密钥。
It seems the only benefit of this approach is saving some computation time (g^xy calculation). This approach requires designing a completely new protocol (which would not resemble IKEv2 anymore); we do not believe that it should be considered. Nevertheless, we include it for completeness.
这种方法的唯一好处似乎是节省了一些计算时间(g^xy计算)。这种方法需要设计一个全新的协议(不再像IKEv2);我们认为不应考虑这一点。然而,为了完整性,我们将其包括在内。
Authors' Addresses
作者地址
Pasi Eronen Independent
非依赖性Pasi
EMail: pe@iki.fi
EMail: pe@iki.fi
Hannes Tschofenig Nokia Siemens Networks Linnoitustie 6 Espoo 02600 Finland
Hannes Tschofenig诺基亚西门子网络公司芬兰Linnoitustie 6 Espoo 02600
Phone: +358 (50) 4871445 EMail: Hannes.Tschofenig@gmx.net URI: http://www.tschofenig.priv.at
Phone: +358 (50) 4871445 EMail: Hannes.Tschofenig@gmx.net URI: http://www.tschofenig.priv.at
Yaron Sheffer Independent
亚龙谢弗独立报
EMail: yaronf.ietf@gmail.com
EMail: yaronf.ietf@gmail.com