专利名称:一种Portal强制认证方法以及接入设备的制作方法
技术领域:
本发明涉及路由交换设备中的接入认证技术,尤其是基于web的Portal认证方 式。
背景技术:
在目前的接入认证系统中,Portal认证是基于业务类型的认证方式,因不需要专门的客户端支持,只需要浏览器就能完成,因而作为一种方便简捷的认证手段被广泛使用。 为了更方便用户进行Portal认证,即用户无需记住认证服务器IP或域名就能完成认证, 因此在Portal认证中引入强制认证技术,即在用户通过web浏览器访问外网时,如果用户 没有通过认证,强制推送网络中设定的web服务器界面。其具体的实现方式是,未经认证的 Portal用户发出HTTP报文,接入设备捕获未经认证的Portal用户的HTTP报文;接入设备 伪装成用户所访问的目标主机与未经认证用户的主机建立TCP连接;接入设备将HTTP报文 重定向到Portal服务器,Portal服务器提供HTML页面至Portal用户的web浏览器,供用 户输入用户名和密码来进行认证。即现有的接入设备Portal认证的强制认证方法在完成 重定向的同时,还须处理未认证Portal用户的TCP连接握手报文和终止握手报文。这样, 在同时有很多用户需要进行强制认证的情况下,会增加接入设备CPU的报文处理负担。
发明内容
本发明所要解决的技术问题是,提供一种减少接入设备CPU的报文处理负担的 Portal强制认证方法以及实现该方法的接入设备。本发明为解决上述技术问题所采用的技术方案是,一种Portal强制认证方法,其 特征在于,包括步骤在接入设备上启用Portal认证功能;当接入设备接收到已认证用户的报文,则直接转发;当接入设备接收到端口号为 HTTP协议端口号的TCP建连报文,则直接转发;当接入设备接收到未认证用户报文,且未认 证用户报文为HTTP请求报文,则将HTTP请求报文重定向到Portal服务器进行Portal认 证。本发明使未认证用户自己与外网TOB服务器建立和终止TCP连接。不需要接入设 备的在完成重定向功能的同时与未认证用户建立和终止TCP连接,减少接入设备的CPU负 担。具体的,HTTP协议端口号的TCP建连报文为带有SYN(同步)、ACK(确认)或 FIN(结束)标志的HTTP协议端口号的TCP建连报文。其中,SYN、ACK为建立TCP连接的标 志;FIN为结束TCP连接的标志。进一步的,当接入设备接收到源IP地址或目的IP地址为免费资源网段的报文,则 直接转发。免费资源网段为portal服务器、DNS (域名系统)服务器、DHCP (动态主机设置 协议)服务器等对应的网段,可由配置指定。
具体的,接入设备通过报文的源IP地址或目的IP地址判断用户是否已认证。
具体的,HTTP请求报文为GET类型的HTTP报文,GET是从服务器获取数据,这是最 常见的WEB请求类型。每次在浏览器中输入URL(统一资源定位符)打开页面时,就是向服 务器发送一个GET类型的请求。具体的,接入设备根据HTTP请求报文中的IP头和TCP头信息生成一个目的IP地 址为未认证用户IP地址的HTTP重定向报文,从接收HTTP请求报文的接口发送出去,重定 向地址为Portal服务器的URL。实现上述方法的接入设备,包括报文匹配模块、转发模块、Portal模块;报文匹配模块用于,将已认证用户的报文至转发模块进行处理;将端口号为HTTP 协议端口号的TCP建连报文送至转发模块进行处理;将未认证用户的HTTP请求报文送至 Portal模块进行处理;
转发模块用于,从报文匹配模块接收报文并直接转发;Portal模块用于,从报文匹配模块接收报文,并向用户发送HTTP重定向报文,使 用户重定向到portal服务器进行portal认证。进一步的,报文匹配模块还用于,将源IP地址或目的IP地址为免费资源网段的报 文送至转发模块进行处理。进一步的,报文匹配模块还用于,通过报文的IP地址判断用户是否已认证。进一步的,报文匹配模块还用于,丢弃端口号为HTTP协议端口号的TCP建连报文 与HTTP请求报文之外的未认证用户报文。本发明的有益效果是,通过分离出未认证用户访问外网时的建立连接和终止连接 的TCP握手报文,使握手过程由用户和外网的服务器完成,在实现未认证用户的Portal强 制认证同时,减少接入设备CPU的报文处理负担。
图1为接入设备系统框图。图2为实施例方法流程图。
具体实施例方式如图1所示,接入设备,包括报文匹配模块、转发模块、Portal模块;通过在报文匹 配模块中设置一套报文匹配规则对接收报文的转发进行控制,使待认证用户自己与需要访 问的外网服务器建立和终止TCP连接,接入设备仅通过转发模块转发建立和终止TCP连接 的报文,同时由接入设备的Portal模块对未认证用户的HTTP请求报文进行重定向处理,以 实现未认证用户的Portal强制认证。报文匹配模块中的报文匹配规则和顺序为规则a 源IP地址或目的IP地址为免费资源网段的报文交给转发模块;这里的免 费资源网段由用户配置,免费资源网段可以是Portal服务器、DNS服务器、DHCP服务器等;规则b 源IP地址或目的IP地址为已经通过认证的用户IP地址的报文交给转发 模块;规则c 所有带有SYN、ACK或FIN标志的端口为HTTP协议端口号的TCP建连报文交给转发模块;规则d 在使能Portal的三层接口上,将GET类型的HTTP请求报文交给Portal模 块处理;规则e 在使能Portal的三层接口上,丢弃带有SYN、ACK或FIN标志的端口为HTTP 协议端口号的TCP建连报文与GET类型的HTTP请求报文之外的所有报文。Portal模块对HTTP请求报文的处理方式为三层接口上来的HTTP的GET类型报 文,根据报文中的IP头和TCP头信息生成一个目的IP为未认证用户的HTTP的重定向报文, 从接收的接口发送出去。转发模块根据正常协议栈处理方式对接收到的报文进行转发。对于报文匹配规则的实施步骤步骤201 全局配置Portal功能,执行步骤202 ;步骤202 在报文匹配模块中写入规则a,即允许源IP地址或目的IP地址为免费 资源网段的报文直接转发;步骤203 接入设备接口上配置Portal功能,执行步骤204 ;步骤204 在规则a之后依次按顺序写入规则c、规则d和规则e。规则c为允许 转发模块直接对所有带有SYN、ACK或FIN标志的端口为HTTP协议端口号的TCP建连报文 进行转发,不交给Portal模块处理;规则d为该三层接口上,将GET类型的HTTP请求报文 交给Portal模块处理;规则e为将未认证用户的所有其它报文丢弃。步骤205 当未认证用户经过Portal协议交互通过认证后,执行步骤206 ;步骤206 在规则a和规则c之间,写入规则b,即源IP地址或目的IP地址为已经 通过认证用户IP地址的报文直接有转发模块转发,不交给Portal模块处理。在以上规则的作用下,本Portal强制认证的实施步骤如图2所示步骤301 接入设备的三层接口接收到报文后,进入步骤302 ;步骤302 判断接收该报文的三层接口是否使能Portal功能,是则进入步骤303 ; 否则进入步骤306 ;步骤303 报文匹配模块对报文进行判断处理一、判断用户的IP地址是否为免费资源网段IP地址;二、判断用户的IP地址是否为已经通过认证用户的IP地址;三、判断接收到的报文是否为带有SYN、ACK、FIN标志的端口为HTTP协议端口号的 TCP建连报文;如上述三任一项为是,则进入步骤306,否则进入步骤304 ;步骤304 报文匹配模块进一步判断报文是否为HTTP的GET类型报文,是则进入 步骤305,否则丢弃该报文;步骤305 :Portal模块根据报文中的IP头和TCP头,构造一个HTTP报文中的code 字段值为302的HTTP重定向响应报文,从接收端口发送出去,目的IP地址为该未认证用户 的IP地址,重定向地址为Portal服务器的URL。步骤306 转发模块按照正常协议栈处理,转发报文。
权利要求
一种portal强制认证方法,其特征在于,包括步骤在接入设备上启用portal认证功能;当接入设备接收到已认证用户的报文,则直接转发;当接入设备接收到端口号为HTTP协议端口号的TCP建连报文,则直接转发;当接入设备接收到未认证用户报文,且未认证用户报文为HTTP请求报文,则将HTTP请求报文重定向到portal服务器进行portal认证。
2.如权利要求1所述一种portal强制认证方法,其特征在于,所述HTTP协议端口号的 TCP建连报文包括带有SYN标志的TCP建连报文、带有ACK标志的TCP建连报文、带有FIN 标志的TCP建连报文。
3.如权利要求1所述一种portal强制认证方法,其特征在于,当接入设备接收到源IP 地址或目的IP地址为免费资源网段的报文,则直接转发。
4.如权利要求3所述一种portal强制认证方法,其特征在于,所述免费资源网段为 portal服务器、DNS服务器、DHCP服务器对应的网段。
5.如权利要求1所述一种portal强制认证方法,其特征在于,接入设备通过用户的IP 地址判断用户是否已认证。
6.如权利要求1所述一种portal强制认证方法,其特征在于,所述HTTP请求报文为 GET类型的HTTP报文。
7.接入设备,其特征在于,包括报文匹配模块、转发模块、portal模块;所述报文匹配模块用于,将已认证用户的报文至转发模块进行处理;将端口号为HTTP 协议端口号的TCP建连报文送至转发模块进行处理;将未认证用户的HTTP请求报文送至 portal模块进行处理;所述转发模块用于,从报文匹配模块接收报文并直接转发;所述portal模块用于,从报文匹配模块接收报文,并向用户发送HTTP重定向报文,使 用户重定向到portal服务器进行portal认证。
8.如权利要求7所述接入设备,其特征在于,所述报文匹配模块还用于,将源IP地址或 目的IP地址为免费资源网段的报文送至转发模块进行处理。
9.如权利要求7所述接入设备,其特征在于,所述报文匹配模块还用于,通过报文的IP 地址判断用户是否已认证。
10.如权利要求7所述接入设备,其特征在于,所述报文匹配模块还用于,丢弃除端口 号为HTTP协议端口号的TCP建连报文和HTTP请求报文之外的其它未认证用户报文。
全文摘要
本发明所提供一种减少接入设备CPU的报文处理负担的Portal强制认证方法以及实现该方法的接入设备。包括步骤在接入设备上启用Portal认证功能;当接入设备接收到已认证用户的报文,则直接转发;当接入设备接收到端口号为HTTP协议端口号的TCP建连报文,则直接转发;当接入设备接收到未认证用户报文,且未认证用户报文为HTTP请求报文,则将HTTP请求报文重定向到Portal服务器进行Portal认证。使未认证用户自己与外网WEB服务器建立和终止TCP连接。不需要接入设备的在完成重定向功能的同时与未认证用户建立和终止TCP连接,减少接入设备的CPU负担。
文档编号H04L29/06GK101873329SQ20101021230
公开日2010年10月27日 申请日期2010年6月29日 优先权日2010年6月29日
发明者罗向征, 陈涛 申请人:迈普通信技术股份有限公司