常用准入认证技术原理分析.docx
《常用准入认证技术原理分析.docx》由会员分享,可在线阅读,更多相关《常用准入认证技术原理分析.docx(14页珍藏版)》请在冰豆网上搜索。
常用准入认证技术原理分析
[常用准入认证技术原理分析]
1前言
在数据网络中,小型网络如企业网、家用网等,追求的是网络简单、开放,所有人可以自由接入和使用;而在中型及大型网络如城域网、政府网和电信数据网络中,用户关心的是网络的可运营和可管理,要管理每个用户的接入、业务使用、流量等等。
在可运营、可管理网络中,引入了针对用户管理的AAA技术,包括认证、授权和计费三个技术:
Ø认证(Authentication):
在用户开始使用网络时对其身份进行的确认动作
Ø授权(Authorization):
授权某用户以特定的方式与某网络系统通信
Ø计费(Accounting):
记录并提供关于经济活动的确切清单或数据
认证是识别用户身份的过程,而授权是根据认证识别后的用户情况授予对应的网络使用权限(QoS、带宽限制、访问权限、用户策略),而计费也是根据认证后的用户身份采用对应的计费策略并记录、提供计费信息(时长、流量、位置等等),三个技术紧密联系但又相互独立的。
认证技术是用户管理最基本的技术。
由于本次文档重点是普教行业的准入认证分析,不对计费系统进行赘述。
2为什么使用认证
2.1用户的困惑
在普教城域网中,服务提供商(教育局)关心的是网络可运营和可管理,要管理每个用户的接入、业务使用、流量等等。
而数据网络中大量使用的是以太网交换机、路由器等设备,遵循的是典型的数据网络理念,追求的是网络简单、开放,自由接入和使用。
怎么才能够在数据网络中针对用户进行运营、管理呢?
最基本的技术就是通过认证识别用户身份。
2.2成熟的认证技术
目前市面上最为普遍主流认证技术有三种:
PPPoE认证、WEB认证和802.1X认证,这三种认证从标准状态、商用情况看,技术上都已经成熟。
3认证方式简介
当前最为普遍主流认证技术有三种:
PPPoE认证、WEB认证和802.1X认证。
严格意义上讲,这三种认证技术并不是真正的认证方式,每种认证技术都支持两种以上的认证方式,具体认证技术和认证方式关系如下表所示:
认证技术
认证方式
PPPoE认证
PAP、CHAP、EAP
WEB认证
PAP、CHAP
802.1X认证
EAP
ØPAP认证:
密码认证协议,客户端直接发送包含用户名/口令的认证请求,服务器端处理并作回应。
ØCHAP认证:
挑战握手协议,先由服务器端给客户端发送一个随机码challenge,客户端根据challenge,对自己掌握的口令、challenge、会话ID进行单向散例,即md5(password1,challenge,ppp_id),然后把这个结果发送给服务器端。
服务器端从数据库中取出库存口令password2,进行同样的算法,即md5(password2,challenge,ppp_id),最后,比较加密的结果是否相同;如相同,则认证通过。
ØEAP认证:
可扩展的认证协议,EAP可以增加对许多身份验证方案的支持,其中包括令牌卡、一次性密码、使用智能卡的公钥身份验证、证书及其他身份验证。
最安全的认证方法就是和智能卡一起使用的“可扩展身份验证协议—传输层安全协议”,即EAP-TLS认证。
4认证技术原理分析
4.1WEB接入认证原理
4.1.1认证系统架构
接入服务器对来自STA的HTTP请求重定向到POTRAL服务器中,利用PORTAL页面对用户进行认证。
认证系统架构图如下:
基于WEB的认证系统架构
基于WEB的认证系统功能实现协议栈如下:
基于WEB的认证系统功能实体协议栈
4.1.2WEB接入认证流程
用户在WEB认证之前,必须先通过DHCP、静态配置等获得IP地址。
用户认真界面提交了用户名和密码之后,接入服务器与WEB认证服务器协调工作,对用户进行认证,其步骤如下:
VLAN用户接入流程(WEB认证)
1-4:
用户通过DHCP协议获取地址的过程(静态用户手工配置地址即可);
5:
用户访问WEB认证服务器的认证页面,并在其中输入用户名、密码,点击登陆按钮;
6:
WEB认证服务器将用户的信息通过内部协议,通知接入服务器;
7:
接入服务器到相应的AAA服务器对该用户进行认证;
8:
AAA服务器返回认证结果给接入服务器;
9:
入服务器将认证结果通知WEB认证服务器;
10:
WEB认证服务器通过HTTP页面将认证结果通知用户;
11:
如果认证成功用户即可正常访问互联网资源。
4.1.3三层用户的WEB认证
用户没有与接入服务器二层相连,中间存在路由器等三层设备,这样用户到接入服务器的报文中只有用户的IP地址没有MAC地址信息,这种类型的用户称为三层认证用户。
与二层认证用户不同的是三层认证用户的MAC地址接入服务器获取不到,因而不能进行MAC、IP的绑定检查安全性不高容易仿冒;ARP请求不能穿透路由器因而不能对用户进行ARP探测确定是否在线。
对此,接入服务器要求三层认证用户必须进行WEB认证,不能通过绑定认证等方式上线。
另外,接入服务器支持当网络发生问题用户原先的线路不同,但有另一条线路可以访问接入服务器的情况,此时接入服务器可以通过新的IP包找到到达用户的新路径更新相关的信息。
IP报文触发三层用户上线的流程如下图所示:
1:
用户的IP报文到达接入服务器,接入服务器为其分配资源建立预连接;2:
用户的HTTP请求被强制到WEB认证服务器的认证页面,并在其中输入用户名、密码,点击登陆按钮;
3:
WEB认证服务器将用户的信息通过内部协议,通知接入服务器;
4:
接入服务器到相应的AAA服务器对该用户进行认证;
5:
AAA服务器返回认证结果给接入服务器;
6:
入服务器将认证结果通知WEB认证服务器;
7:
WEB认证服务器通过HTTP页面将认证结果通知用户;
8:
如果认证成功用户即可正常访问互联网资源。
4.1.4WEB认证用户下线流程
WEB认证用户下线流程包括用户主动下线和异常下线两种情况。
用户主动下线流程如下图所示。
1:
当用户需要下线时,可以点击认证结果页面上的下线机制,向Portal服务器发起一个下线请求;
2:
Portal服务器向接入服务器发起下线请求;
3:
接入服务器返回下线结果给Portal服务器;
4:
Portal服务器根据下线结果,推送含有对应的信息的页面给用户;
(不含计费系统的WEB认证下线流程只有上面4步,下面是计费结束的介绍)
5:
当接入服务器收到下线请求时,向RADIUS服务器发计费结束报文;
6:
RADIUS服务器回应接入服务器的计费结束报文。
异常下线由包含以下两种情况:
①、接入服务器侦测到用户下线
1:
接入服务器检测到用户下线,向WEB服务器发出下线请求;
2:
WEB服务器回应下线成功;
3:
当接入服务器收到下线请求时,向AAA服务器发计费结束报文;
4:
AAA服务器回应接入服务器的计费结束报文。
②、WEB认证服务器侦测到用户下线
1:
WEB认证服务器检测到用户下线,向接入服务器发出下线请求;
2:
接入服务器回应下线成功;
3:
当接入服务器收到下线请求时,向AAA服务器发计费结束报文;
4:
AAA服务器回应接入服务器的计费结束报文。
4.2802.1X接入认证原理
4.2.1认证系统架构
基于802.1x的认证系统架构见下图。
在此种架构下,系统实现IEEE802.1x中定义的认证请求者、认证点和认证服务器的三元结构。
认证请求者对应客户终端,认证点可以对应接入服务器,认证服务器对应AAA服务器。
基于802.1x的认证系统架构
基于802.1x的认证系统利用EAP协议的扩展能力可以选用不同的认证算法。
基于802.1x的认证系统功能实体透传方式协议栈
4.2.1802.1X接入认证流程
基于802.1x的认证系统利用EAP协议的扩展能力可以选用不同的认证算法。
以EAP-MD5为例:
802.1X(EAP-MD5)认证方式交互图
1:
在用户和接入服务器之间建立好物理连接后,用户客户端向接入服务器发送一个EAPoL-Start报文(如果用户是动态分配地址的,可能是DHCP请求报文;如果用户是手工配置地址的,可能是ARP请求报文),开始802.1x接入的开始;
2:
接入服务器向客户端发送EAP-Request/Identity报文,要求客户端将用户名送上来;
3:
客户端回应一个EAP-Response/Identity给接入服务器的请求,其中包括用户名;
4:
接入服务器以EAPOverRADIUS的报文格式向RADIUS认证服务器发送Access-Request报文,里面含有客户端发给接入服务器的EAP-Response/Identity报文,将用户名提交RADIUS认证服务器;
5:
接入服务器产生一个128bit的Challenge;
6:
RADIUS认证服务器回应接入服务器一个Access-Challenge报文,里面含有EAP-Request/MD5-Challenge报文,送给接入服务器用户对应的Challenge;
7:
接入服务器通过EAP-Request/MD5-Challenge发送给认证客户端,送给用户Challenge;
8:
客户端收到EAP-Request/MD5-Challenge报文后,将密码和Challenge做MD5算法后的Challenge-Password,在EAP-Response/MD5-Challenge回应中把它发送给接入服务器;
9:
接入服务器将Challenge-Password通过Access-Request报文送到RADIUS用户认证服务器,由RADIUS用户认证服务器进行认证;
10:
RADIUS用户认证服务器根据用户信息判断用户是否合法,然后回应认证成功/失败报文到接入服务器。
如果成功,携带协商参数,以及用户的相关业务属性给用户授权;
11:
接入服务器根据认证结果,给用户回应EAP-Success/EAP-Failure,通知用户认证结果。
如果认证失败,则流程到此结束。
如果成功,可以进行后续的授权流程。
4.2.2用户下线流程
用户下线流程包括用户主动下线和异常下线两类情况。
①用户主动下线流程图
1:
客户端主动向认证点发送EAP-Logoff消息;
2:
认证点向认证服务器发送计费停止请求的报文;
3:
认证服务器向认证点回计费停止请求报文的回应。
②异常下线流程图
1:
认证点检测发现用户已经不在线;
2:
认证点向认证服务器发送计费停止请求的报文;
3:
认证服务器向认证点回计费停止请求报文的回应。
4.3二维码认证原理
4.3.1认证流程图
这里的二维码认证主要是介绍锐捷网络BYOD无线接入认证。
该种方式是指访客的Phone/Pad/PC连上SSID,访问网址,弹出二维码图案,已认证上线普员工(接待者)的手机使用二维码扫描工具,帮忙访客扫码上网。
1:
访客关联到二维码认证所在的SSID;
2:
访客的终端打开浏览器访问网络,AC拦截访问的URL,并自动重定向到二维码认证的portal页面,该步骤中存在以下几种情况:
Ø部分终端会3~5秒内自动打开浏览器显示二维码页面,进入第3)步。
如果不会自动弹出,则访客需要手动打开终端的浏览器访问任意一个外网地址(例如),将会自动跳转到二维码页面。
Ø如果您配置的二维码认证的SSID所在VLAN无法解析DNS,那么必须手动打开终端的浏览器访问一个IP地址或可访问的域名URL,将会跳转到二维码页面。
3:
访客将二维码图案给内部员工进行扫描;
4:
内部员工使用扫描软件对二维码图案进行扫描,获取到该二维码图案中所含的URL信息,取出UserIP、MAC地址、NASIP到SMP中去读取访客的流水号(目的是为了创建一个访客账号,会以流水号进行命名,例如扫描者_访客_1,扫描者_访客_2,扫描者_访客_3,以此类推;
5:
SMP向AC发起portal认证流程:
由于二维码认证不需要密码,但是对于AC的radius认证又需要密码,因此这里的密码后台固定了。
SMP使用获取到的访客流水号作为用户名,以及固定的密码(ruijie_qrcode_),把用户名和密码通过portal协议发给AC,AC以二代Web认证的方式把用户名和密码封装到Radius报文中进行认证,提交Radius报文给SMP;
6:
认证成功后,SMP分别向内部员工和访客反馈认证成功信息:
;
7:
打开访客上网通道,访客上线成功。
在上面的整个认证过程中,管理员无须为来访者创建用户名和密码,只需要接待访客的内部员工为来访者扫描二维码就会自动创建一个包含有接待者信息的用户名,可以追溯到该访客是由谁开户并接待的,从而在减轻管理员工作的情况下,安全性也有所保障。
目前SMP支持已经通过1x认证成功的用户、Web认证成功的用户、MAC地址认证成功的用户为访客扫描二维码,而访客是不允许给其他访客扫描二维码的,以确保网络的安全边界。
(注意:
接待者员工必须在SMP是在线的,且必须有在线IP地址,否则无法扫描。
)
4.3.2URL参数说明
Øwlanuserip:
当前终端获取的IP地址
Øwlanacname:
AC的名称
Øssid:
所在的SSID
Ønasip:
NAS(AC)的IP地址
Ømac:
终端的MAC地址
4.4二维码名片认证原理
4.4.1认证流程图
二维码认证的方式可以有效的解决方案用户上网权限问题,但是频繁的员工接待扫描操作在一定程度上造成了用户使用体验差的效果。
本节介绍SMP的另外一种二维码认证方式-二维码名片认证:
由管理员创建一个对公账户,在SMP的自助服务平台上生成接待二维码,将扫描的操作转移给访客,减小内部员工的接待压力。
二维码名片认证流程图
1:
访客关联到二维码认证所在的SSID;
2:
访客的终端打开浏览器访问网络,AC拦截访问的URL,并自动重定向到二维码名片认证的portal页面,该步骤中存在以下几种情况:
Ø部分终端会3~5秒内自动打开浏览器显示二维码页面,进入第3)步。
如果不会自动弹出,则访客需要手动打开终端的浏览器访问任意一个外网地址(例如),将会自动跳转到二维码页面。
Ø如果您配置的二维码认证的SSID所在VLAN无法解析DNS,那么必须手动打开终端的浏览器访问一个IP地址或可访问的域名URL,将会跳转到二维码页面。
3:
接待者将二维码名片图案给访客进行扫描;
4:
访客使用扫描软件对二维码图案进行扫描,获取到该二维码图案中所含的URL信息向SMP发起认证流程。
SMP取出URL里面的CommonUserID、uniqueCode到后台查看该UserID是否具备二维码接待访客的权限,以及uniqueCode是否一致。
随后生成访客用户名,比如“扫描者_访客_1,扫描者_访客_2”;
5:
SMP向AC发起portal认证流程:
由于二维码认证不需要密码,但是对于AC的radius认证又需要密码,因此这里的密码后台固定了。
SMP使用获取到的访客流水号作为用户名,以及固定的密码(ruijie_qrcode_),把用户名和密码通过portal协议发给AC,AC以二代Web认证的方式把用户名和密码封装到Radius报文中进行认证,提交Radius报文给SMP;
6:
认证成功后,SMP分别向内部员工和访客反馈认证成功信息;
7:
打开访客上网通道,访客上线成功。
二维码名片认证利用二维码信息里面嵌入http连接请求,请求携带了普通员工允许授权创建访客的信息。
通过二维码扫描工具读取http的url之后,向SMP服务器发送创建访客的请求。
SMP通过判断是否有权限后,创立访客信息,允许扫描二维码名片的终端上网。