portal认证系统服务器原理及应用_第1页
portal认证系统服务器原理及应用_第2页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 3/3portal认证系统服务器原理及应用 Portal认证方式具有:不需要安装认证客户端,减少客户端的维护工作量、;便于运营,可以在Portal页面上开展业务拓展、技术成熟等优点而被广泛应用于运营商、学校等网络。 目前在公共场合也有很多的WIFI热点.WIFI本身不加密,但是当用户访问网络的时候,会要求用户输入用户名和密码.认证成功后就可以上网了.WEB认证的特点显而易见,就是不需要特殊的客户端,有浏览器就可以了.所以,手机也可以方面的使用. 下图是WEB认证的原理图(CHAP认证): 本文所要描述的就是PortalServer的原理与算法. PortalServer 和BAS 之间的通讯

2、遵循华为的PORTAL v1.0协议.以下是协议格式: 以下是部分源代码和说明. typedef struct portal_header u_int8_t ver; /版本,在本例中为1 u_int8_t type; /报文类型 u_int8_t auth_type; /认证类型,CHAP或者PHP,本文为CHAP协议 u_int8_t rsv; /保留字段,恒为零 u_int16_t sn; /序列号,用于关联报文用,在一定时间是不能重复的 u_int16_t reqid; /应答ID u_int32_t userip; /用户的IP u_int16_t userport; /用户端口,恒

3、为零 u_int8_t errcode; /错误码,非常有用的字段 u_int8_t attrnum; /属性个数 portal_header_t; 定义了PORTAL协议的协议头.如果属性个数不为零,那么后面将跟attrnum个属性.以下是构造挑战报文的代码: sn=(u_int16_t)(1+(int)(9098.0*rand()/(RAND_MAX+1.0); /随机码 req_chap-ver=ver; req_chap-type=REQ_CHALLENGE; req_chap-auth_type=CHAP; req_chap-rsv=0 x00; req_chap-sn=sn; re

4、q_chap-reqid=0 x00; req_chap-userip = in-s_addr; /客户的IP req_chap-userport=0 x0; req_chap-errcode=0 x0; req_chap-attrnum=0 x0; 当收到了type为0 x02的报文,并且errcode=0 x00时,说明挑战成功.接下来就可以发送认证请求报文了,以下是构造请求报文的代码: (ra-header).ver = 0 x01; (ra-header).type=REQ_AUTH; (ra-header).auth_type=CHAP; (ra-header).rsv=0 x00;

5、 (ra-header).sn= /新的随机码 (ra-header).reqid = req_chap-reqid; (ra-header).userip = req_chap-userip; (ra-header).userport=0 x0; (ra-header).errcode=0 x0; (ra-header).attrnum=0 x2; 这个请求报文带两个属性.关键的CHAP密码构造代码如下: MD5_Init( MD5_Update( MD5_Update( MD5_Update( MD5_Final(d3, 如果收到CHAP应答报文,错误代码为零的话,就说明认证成功了. 本程

6、序的使用命令如下: cr ver protocol basip username password client_ip ver 协议版本,本文只实现了V1 protocol CHAP 或者PAP ,本文只实现了CHAP,PAP实现起来更简单. basip BAS的ip ,就是报文发送到的设备IP username 从WEB过来的用户名 password 从WEB PORTAL 过来的密码 client_ip 客户的IP地址 蓝海卓越Web Portal的组网方式通常如下: 蓝海卓越Web Portal的基本认证过程为: (1)用户连接到网络后,终端通过DHCP由BAS做DHCP-Relay,向

7、DHCP Server要IP地址(私网或公网);(也可能由BAS直接做DHCP Server)。 (2)用户获取到地址后,可以通过IE访问网页,BAS为该用户构造对应表项信息(基于端口号、IP),添加用户ACL服务策略(让用户只能访问portal server和一些内部服务器,个别外部服务器如DNS),并将用户访问其他地址的请求强制重定向到强制Web认证服务器进行访问。表现的结果就是用户连接上但不认证的情况下,只能访问指定的页面,浏览指定页面上的广告、新闻等免费信息。 (3)Portal server向用户提供认证页面,在该页面中,用户输入帐号和口令,并单击log in按钮,也可不输入由帐号和

8、口令,直接单击Log in按钮; (4)该按钮启动portal server上的Java程序,该程序将用户信息(IP地址,帐号和口令)送给网络中心设备BAS; (5)BAS利用IP地址得到用户的二层地址、物理端口号(如Vlan ID, ADSL PVC ID,PPP session ID),利用这些信息,对用户的合法性进行检查,如果用户输入了帐号,使用用户输入的帐号和口令 到Radius server对用户进行认证,如果用户未输入帐号,则认为用户是固定用户,网络设备利用Vlan ID(或PVC ID)查用户表得到用户的帐号和口令,将帐号送到Radius server进行认证; (6)Radiu

9、s Server返回认证结果给BAS; (7)认证通过后,BAS修改该用户的ACL,用户可以访问外部因特网或特定的网络服务;BAS 开始计费。 (8)用户离开网络前,连接到portal server上,单击断开网络按钮,系统停止计费,删除用户的ACL和转发信息,限制用户不能访问外部网络; BRAS需要的配置: (1) 配置Web Portal认证服务器(包括webportal的IP,端口号,密钥) (2)配置认证前域(由于Web认证用户在未认证前属于非法用户,无法获取IP地址,也没有权限访问Web认证服务器,因而也无法进行认证。因此需要在认证前域配置DHCP Server,让未认证的用户先获得IP) (3)配置认证域(通过认证之后的区域,配置Radius服务器信息) (4)配置BAS接口(配置接入的用户类型为二层用户,要看具体情况,如果中间有三隔离的话,要配置为三层用户) (5)配置ACL(为了控制未认证用户只能访问Web认证服务器,需要根据未认证用户的认证前域的user-group,制定相应的ACL,使其只有访问Web认证服务器的权限,而没有其他任何权限。并将ACL应用到BAS接口上) Note:二次地址分配问题: 二次地址分配是指在802.1X或Web Portal接入方式中,初始DHCP时为用户预分配IP地址(通常为私网地址),在用户通过认证后,重新为

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论