WLAN无感知认证技术方案

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

1WLAN无感知认证试点技术方案(PEAP认证)1背景PEAP是EAP认证方法的一种实现方式,网络侧通过用户名/密码对终端进行认证,终端侧通过服务器证书对网络侧进行认证。用户首次使用PEAP认证时,需输入用户名和密码,后续接入认证无需用户任何手工操作,由终端自动完成。2技术原理PEAP(ProtectedEAP)实现通过使用隧道在PEAP客户端和认证服务器之间进行安全认证。EAP客户端和认证服务器之间的认证过程有两个阶段。第一阶段:建立PEAP客户端和认证服务器之间的安全通道,客户端采用证书认证服务端完成TLS握手。服务端可选采用证书认证客户端。第二阶段:提供EAP客户端和认证服务器之间的EAP身份验证。整个EAP通信,包括EAP协商在内,都通过TLS通道进行。服务器对用户和客户端进行身份验证,具体方法由EAP类型决定,在PEAP内部选择使用(如:EAP-MS-CHAPv2)。访问点只会在客户端和RADIUS服务器之间转发消息,由于不是TLS终结点,访问点无法对这些消息进行解密。目前被WPA和WPA2批准的有两个PEAP子类型PEAPV0-MSCHAPV2,PEAPV1-GTC,使用广泛的是PEAPV0-MSCHAPV2。PEAP认证参考如下国际标准[1]IETFDraft,PEAPAuthentication,draft-josefsson-pppext-eap-tls-eap-10.txt,2004.[2]IETRRFC2759,MSCHAPv2[3]IETFRFC3748,ExtensibleAuthenticationProtocol(EAP).3关键技术问题3.1证书问题PEAP认证需要AAA服务器配置认证证书。需评估不同服务器证书与各类终端的兼容性。如果服务器证书与终端预置证书验证不匹配,PEAP认证可能失败。目前Portal认证使用的证书为IP地址绑定,如果试点阶段AAA服务器选择绑定域名的证书,现网AC可能需改造。iPhone如果证书验证失败,此时用户选择接受,PEAP认证可成功。Blackberry手机PEAP认证配置有“禁止服务器证书验证”选项,勾选后,终端不再进行证书验证。2WindowsMobile手机如果证书验证失败,PEAP认证无法通过。Symbian和Adroid/Ophone还未验证。3.2密码设置PEAP认证使用的用户名/密码与Portal认证的用户名/密码应保持一致。3.3PEAP认证方法试点使用PEAPv0版本,选用MSCHAPv2认证方法。3.4SSID设置需设置新的SSID(CMCC-AUTO),支持存量终端使用PEAP认证方式。PEAP认证与SIM认证使用相同SSID。3.5机卡分离问题由于PEAP认证的用户名/密码保存在手机中,如果手机和用户卡发生分离(用户换手机或换卡),手机仍能进行PEAP认证,但费用会记录在原有卡用户账户上。目前暂无较好技术手段进行解决机卡分离问题。3.6下线控制PEAP认证仍保留8小时下线机制可通过AC开关开启/关闭PEAP认证对应SSID的15分钟下线机制。(已确认,部分AC厂家已支持,部分AC厂商需升级支持)。3.7Keep-alive机制(可选)AC利用EAP信令周期性探测UE状态,如果UE在一定时间内无响应(异常关机、移出WiFi覆盖区域),则网络侧对此用户进行下线操作。具体实现机制如下图:WLANUEWLANANeap_request/identityeap_response/identityeap_success3AC在一定时间内无流量后,向终端发送EAP-Request/identity消息,终端如果在线则回复EAP-Response消息,如果AC收到终端响应后,回复EAP-Success,如果AC没有收到终端响应,则在一定时间内重发EAP-Request消息,在重传一定次数后,仍未收到响应,则从网络侧下线用户。此机制可能存在如下潜两个问题:1)上述流程不是标准流程,部分终端周期性收到心跳后,可能出于安全或其它因素考虑,不处理EAP-Request消息。2)终端在EAP-Response消息中可能不携带网络侧分配的伪随机名或快速认证名,而是携带IMSI,增加空口传输IMSI的概率。鉴于部分厂家已支持此功能,试点期间作为可选项,在提供此功能的厂家设备上验证其效果。AC如果支持Keep-alive机制,对AC性能有一定影响,可通过试点进行评估。44接入流程4.1PEAP用户接入流程2.EAP-Request/Identity6.EAP-Request/Start/Type=PEAP,V=0WLAN用户终端WLANANRadius1.EAPoL-Start4.Access-RequestEAP-Response/Identity8.Access-RequestEAP-Response/Type=PEAP,V=0(TLSclient_hello)9.Access-ChallengeEAP-Request/Challenge/Type=PEAP,V=0(TLSserver_hello,TLScertificate,[TLSserver_key_exchange,][TLScertificate_request,]TLSserver_hello_done)11.EAP-Response/Type=PEAP,V=0([TLScertificate,]TLSclient_key_exchange,[TLScertificate_verify,]TLSchange_cipher_spec,TLSfinished)12.Access-Request建立TLS通道认证初始化3EAP-Response/Identity(MyID)5.Access-ChallengeEAP-Request/Start/Type=PEAP,V=07.EAP-Response/Type=PEAP,V=0(TLSclient_hello)10.EAP-Request/Challenge/Type=PEAP,V=0(TLSserver_hello,TLScertificate,[TLSserver_key_exchange,][TLScertificate_request,]TLSserver_hello_done)13.Access-ChallengeEAP-Request/Type=PEAP,V=0(TLSchange_cipher_spec,TLSfinished)EAP-Response/Type=PEAP,V=0([TLScertificate,]TLSclient_key_exchange,[TLScertificate_verify,]TLSchange_cipher_spec,TLSfinished)14.EAP-Request/Type=PEAP,V=0(TLSchange_cipher_spec,TLSfinished)15.EAP-Response/Type=PEAP/TLSOK20.Access-Accept21.EAP-SuccessEAP-Message/Eap-Success认证过程计费开始23.Accounting-Request/Start24.Accoutting-Response/Start[username=PEAP@CMCC]地址分配22.DHCP地址获取17.Access-Challenge/eap-req/identity18.EAP-Request/identity/MSCHAPv219.TLS/MSCHAPv2认证16.Aceess-rsp/EAP-Response/Type=PEAP/TLSOK图1PEAP用户接入流程E1认证初始化51)WLANUE向WLANAN发送一个EAPoL-Start报文,开始802.1x接入的开始。2)WLANAN向WLANUE发送EAP-Request/Identity报文,要求WLANUE将用户信息送上来。3)WLANUE回应一个EAP-Response/Identity给WLANAN的请求,其中包括用户的网络标识。用户ID,对于PEAP-mschchapv2认证方式的用户ID是由用户在客户端手动输入或者配置的。此次用户名建议同用户的portal认证用户名密码。4)WLANAN以EAPOverRADIUS的报文格式将EAP-Response/Identity发送给Radius,并且带上相关的RADIUS的属性。5)Radius收到WLANAN发来的EAP-Response/Identity,根据配置确定使用EAP-PEAP认证,并向WLANAN发送RADIUS-Access-Challenge报文,里面含有Radius发送给WLANUE的EAP-Request/Peap/Start的报文,表示希望开始进行EAP-PEAP的认证。6)WLANAN将EAP-Request/PEAP/Start发送给WLANUE。E2建立TLS通道7)WLANUE收到EAP-Request/Peap/Start报文后,产生一个随机数、客户端支持的加密算法列表、TLS协议版本、会话ID、以及压缩方法(目前均为NULL),封装在EAP-Response/TLS/ClientHello报文中发送给WLANAN。8)WLANAN以EAPOverRADIUS的报文格式将EAP-Response/TLS/ClientHello发送给认证服务器Radius,并且带上相关的RADIUS的属性。9)Radius收到ClientHello报文后,会从Client的Hello报文的加密算法列表中选择自己支持的一组加密算法+Server产生的随机数+Server证书(包含服务器的名称和公钥)+证书请求+Server_Hello_Done属性形成一个ServerHello报文封装在EAP消息中,使用Access-Challenge报文发送给WLANAN。10)WLANAN把Radius报文中的EAP-request消息发送给WLANUE.11)WLANUE收到报文后,进行验证Server的证书是否合法(使用从CA证书颁发机构获取的根证书进行验证,主要验证证书时间是否合法,名称是否合法),即对网络进行认证,从而可以保证Server的合法。如果合法则提取Server证书中的公钥,同时产生一个随机密码串pre-master-secret,并使用服务器的公钥对其进行加密,最后将加密的信息ClientKeyExchange+客户端的证书(如果没有证书,可以把属性置为0)+TLSfinished属性封装成EAP-Rsponse/TLSClientKeyExchange报文发送给WLANAN.如果WLANUE没有安装证书,则不会对Server证书的合法性进行认证,即不能对网络进行认证。12)WLANAN以EAPOverRADIUS的报文格式将EAP-Response/TLSClientKeyExchange发送给认证服务器Radius,并且带上相关的RADIUS的属性13)Radius收到报文后,用自己的证书对应的私钥对ClientKeyExchange进行解密,从而获取到pre-master-secret,然后将pre-master-secret进行运算处理,加上WLANUE和Server产生的随机数,生成加密密钥、加密初始化向量和hmac的密钥,这时双方已经安全的协商出一套加密办法了。Radius将协商出的加密方法+TLSFinished消息封装在EAPoverRadius报文Access-Challenge中,发送给WLANAN。14)WLANAN吧Radius报文中的EAP-Request消息发送给UE。15)WLANUE回复EAPResponse/TLSOK消息。16)WLANAN将EAPResponse/TLSOK消息封装在Radius报文中,告知Radius建立隧道成功。至此WLANUE与Radius之间的TLS隧道建立成功。E3认证过程1

1 / 12
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功