Portal技术介绍


Portal

Portal简介

Portal在英语中是入口的意思。Portal认证通常也称为Web认证,一般将Portal认证网站称为门户网站。

未认证用户上网时,设备强制用户登录到特定站点,用户可以免费访问其中的服务。当用户需要使用互联网中的其它信息时,必须在门户网站进行认证,只有认证通过后才可以使用互联网资源。

用户可以主动访问已知的Portal认证网站,输入用户名和密码进行认证,这种开始Portal认证的方式称作主动认证。反之,如果用户试图通过HTTP访问其他外网,将被强制访问Portal认证网站,从而开始Portal认证过程,这种方式称作强制认证。

Portal业务可以为运营商提供方便的管理功能,门户网站可以开展广告、社区服务、个性化的业务等,使宽带运营商、设备提供商和内容服务提供商形成一个产业生态系统。

Portal扩展功能

Portal的扩展功能主要是指通过强制接入终端实施补丁和防病毒策略,加强网络终端对病毒攻击的主动防御能力。具体扩展功能如下:

l              Portal身份认证的基础上增加了安全认证机制,可以检测接入终端上是否安装了防病毒软件、是否更新了病毒库、是否安装了非法软件、是否更新了操作系统补丁等;

l              用户通过身份认证后仅仅获得访问部分互联网资源(受限资源)的权限,如病毒服务器、操作系统补丁更新服务器等;当用户通过安全认证后便可以访问更多的互联网资源(非受限资源)。

Portal的系统组成

Portal的典型组网方式如1所示,它由五个基本要素组成:认证客户端、接入设备、Portal服务器、认证/计费服务器和安全策略服务器。

由于Portal服务器可以是接入设备之外的独立实体,也可以是存在于接入设备之内的内嵌实体,本文称之为“本地Portal服务器”,因此下文中除对本地支持的Portal服务器做特殊说明之外,其它所有Portal服务器均指独立的Portal服务器,请勿混淆。

 

图1 Portal系统组成示意图

 

1. 认证客户端

安装于用户终端的客户端系统,为运行HTTP/HTTPS协议的浏览器或运行Portal客户端软件的主机。对接入终端的安全性检测是通过Portal客户端和安全策略服务器之间的信息交流完成的。

2. 接入设备

交换机、路由器等宽带接入设备的统称,主要有三方面的作用:

l              在认证之前,将用户的所有HTTP请求都重定向到Portal服务器。

l              在认证过程中,与Portal服务器、安全策略服务器、认证/计费服务器交互,完成身份认证/安全认证/计费的功能。

l              在认证通过后,允许用户访问被管理员授权的互联网资源。

3. Portal服务器

接收Portal客户端认证请求的服务器端系统,提供免费门户服务和基于Web认证的界面,与接入设备交互认证客户端的认证信息。

4. 认证/计费服务器

与接入设备进行交互,完成对用户的认证和计费。

5. 安全策略服务器

Portal客户端、接入设备进行交互,完成对用户的安全认证,并对用户进行授权操作。

以上五个基本要素的交互过程为:

(1)        未认证用户访问网络时,在Web浏览器地址栏中输入一个互联网的地址,那么此HTTP请求在经过接入设备时会被重定向到Portal服务器的Web认证主页上;若需要使用Portal的扩展认证功能,则用户必须使用Portal客户端。

(2)        用户在认证主页/认证对话框中输入认证信息后提交,Portal服务器会将用户的认证信息传递给接入设备;

(3)        然后接入设备再与认证/计费服务器通信进行认证和计费;

(4)        认证通过后,如果未对用户采用安全策略,则接入设备会打开用户与互联网的通路,允许用户访问互联网;如果对用户采用了安全策略,则客户端、接入设备与安全策略服务器交互,对用户的安全检测通过之后,安全策略服务器根据用户的安全性授权用户访问非受限资源。

l      无论是Web客户端还是H3C iNode客户端发起的Portal认证,均能支持Portal认证穿越NAT,即Portal客户端位于私网、Portal服务器位于公网,接入设备上启用NAT功能的组网环境下,NAT地址转换不会对Portal认证造成影响。

l      目前支持Portal认证的远端认证/计费服务器为RADIUSRemote Authentication Dial-In User Service,远程认证拨号用户服务)服务器。

l      目前通过访问Web页面进行的Portal认证不能对用户实施安全策略检查,安全检查功能的实现需要与H3C iNode客户端配合。

 

使用本地Portal服务器的Portal认证系统

本特性的支持情况与设备的型号有关,请以设备的实际情况为准。

 

系统组成

本地Portal服务器功能是指,Portal认证系统中不采用外部独立的Portal服务器,而由接入设备实现Portal服务器功能。这种情况下,Portal认证系统仅包括三个基本要素:认证客户端、接入设备和认证/计费服务器,如2所示。由于设备支持Web用户直接认证,因此就不需要部署额外的Portal服务器,增强了Portal认证的通用性。

图2 使用本地Portal服务器的Portal系统组成示意图

 

l      使用本地Portal服务器的Portal认证系统不支持Portal扩展功能,因此不需要部署安全策略服务器。

l      内嵌本地Portal服务器的接入设备实现了简单的Portal服务器功能,仅能给用户提供通过Web方式登录、下线的基本功能,并不能完全替代独立的Portal服务器。

 

认证客户端和本地Portal服务器之间的交互协议

认证客户端和内嵌本地Portal服务器的接入设备之间可以采用HTTPHTTPS协议通信。若客户端和接入设备之间交互HTTP协议,则报文以明文形式传输,安全性无法保证;若客户端和接入设备之间交互HTTPS协议,则报文基于SSL提供的安全机制以密文的形式传输,数据的安全性有保障。

本地Portal服务器支持用户自定义认证页面

本地Portal服务器支持由用户自定义认证页面的内容,即允许用户编辑一套认证页面的HTML文件,并在压缩之后保存至设备的存储设备中。该套自定义页面中包括六个认证页面:登录页面、登录成功页面、在线页面、下线成功页面、登录失败页面和系统忙页面。本地Portal服务器根据不同的认证阶段向客户端推出对应的认证页面,若不自定义,则分别推出系统提供的缺省认证页面。

Portal的认证方式

不同的组网方式下,可采用的Portal认证方式不同。按照网络中实施Portal认证的网络层次来分,Portal的认证方式分为两种:二层认证方式和三层认证方式。

二层认证方式的支持情况与设备的型号有关,请以设备的实际情况为准。

 

二层认证方式

这种方式支持在接入设备连接用户的二层端口上开启Portal认证功能,只允许源MAC地址通过认证的用户才能访问外部网络资源。目前,该认证方式仅支持本地Portal认证,即接入设备作为本地Portal服务器向用户提供Web认证服务。

另外,该方式还支持服务器下发授权VLAN和将认证失败用户加入认证失败VLAN功能(三层认证方式不支持)。

三层认证方式

这种方式支持在接入设备连接用户的三层接口上开启Portal认证功能。三层接口Portal认证又可分为三种不同的认证方式:直接认证方式、二次地址分配认证方式和可跨三层认证方式。直接认证方式和二次地址分配认证方式下,认证客户端和接入设备之间没有三层转发;可跨三层认证方式下,认证客户端和接入设备之间可以跨接三层转发设备。

1. 直接认证方式

用户在认证前通过手工配置或DHCP直接获取一个IP地址,只能访问Portal服务器,以及设定的免费访问地址;认证通过后即可访问网络资源。认证流程相对二次地址较为简单。

2. 二次地址分配认证方式

用户在认证前通过DHCP获取一个私网IP地址,只能访问Portal服务器,以及设定的免费访问地址;认证通过后,用户会申请到一个公网IP地址,即可访问网络资源。该认证方式解决了IP地址规划和分配问题,对未认证通过的用户不分配公网IP地址。例如运营商对于小区宽带用户只在访问小区外部资源时才分配公网IP

使用本地Portal服务器的Portal认证不支持二次地址分配认证方式。

 

3. 可跨三层认证方式

和直接认证方式基本相同,但是这种认证方式允许认证用户和接入设备之间跨越三层转发设备。

对于以上三种认证方式,IP地址都是用户的唯一标识。接入设备基于用户的IP地址下发ACL对接口上通过认证的用户报文转发进行控制。由于直接认证和二次地址分配认证下的接入设备与用户之间未跨越三层转发设备,因此接口可以学习到用户的MAC地址,接入设备可以利用学习到MAC地址增强对用户报文转发的控制粒度。

Portal支持EAP认证

在对接入用户身份可靠性要求较高的网络应用中,传统的基于用户名和口令的用户身份验证方式存在一定的安全问题,基于数字证书的用户身份验证方式通常被用来建立更为安全和可靠的网络接入认证机制。

EAPExtensible Authentication Protocol,可扩展认证协议)可支持多种基于数字证书的认证方式(例如EAP-TLS),它与Portal认证相配合,可共同为用户提供基于数字证书的接入认证服务。

图3 Portal支持EAP认证协议交互示意图

 

3所示,在Portal支持EAP认证的实现中,客户端与Portal服务器之间交互EAP认证报文,Portal服务器与接入设备之间交互携带EAP-Message属性的Portal协议报文,接入设备与RADIUS服务器之间交互携带EAP-Message属性的RADIUS协议报文,由具备EAP服务器功能的RADIUS服务器处理EAP-Message属性中封装的EAP报文,并给出EAP认证结果。整个EAP认证过程中,接入设备只是对Portal服务器与RADIUS服务器之间的EAP-Message属性进行透传,并不对其进行任何处理,因此接入设备上无需任何额外配置。

l      该功能仅能与H3C iMC服务器以及H3C iNode客户端配合使用。

l      目前,仅使用远程Portal服务器的三层Portal认证支持EAP认证。

 

二层Portal认证过程

二层Portal认证流程

目前,二层Portal认证只支持本地Portal认证,即由接入设备作为本地Portal服务器向用户提供Web认证服务,具体认证过程如下。

图4 二层Portal认证流程图

 

(1)        Portal用户通过HTTPHTTPS协议发起认证请求。HTTP报文经过配置了本地Portal服务器的接入设备的端口时会被重定向到本地Portal服务器的监听IP地址,本地Portal服务器提供Web页面供用户输入用户名和密码来进行认证。该本地Portal服务器的监听IP地址为接入设备上一个与用户之间路由可达的三层接口IP地址(通常为Loopback接口IP)。

(2)        接入设备与RADIUS服务器之间进行RADIUS协议报文的交互,对用户身份进行验证。

(3)        如果RADIUS认证成功,则接入设备上的本地Portal服务器向客户端发送登录成功页面,通知客户端认证(上线)成功。

支持下发授权VLAN

二层Portal认证支持服务器下发授权VLAN。当用户通过Portal认证后,如果授权服务器上配置了下发VLAN功能,那么服务器会将授权VLAN信息下发给接入设备,由接入设备将认证成功的用户加入对应的授权VLAN中,则端口上会生成该用户MAC对应的MAC VLAN表项,若该VLAN不存在,则接入设备首先创建VLAN,而后将用户加入授权VLAN中。

通过支持下发授权VLAN,可实现对已认证用户可访问网络资源的控制。

支持Auth-Fail VLAN

Auth-Fail VLAN功能允许用户在认证失败的情况下,可以访问某一特定VLAN中的资源,比如病毒补丁服务器,存储客户端软件或杀毒软件的服务器,进行升级客户端或执行其他一些用户升级程序。这个VLAN称之为Auth-Fail VLAN

二层Portal认证支持基于MACAuth-Fail VLAN,如果接入用户的端口上配置了Auth-Fail VLAN,则端口上会基于认证失败的MAC地址生成相应的MAC VLAN表项,认证失败的用户将会被加入Auth-Fail VLAN中。加入Auth-Fail VLAN中的用户可以访问该VLAN中的非HTTP资源,但用户的所有HTTP访问请求会被重定向到接入设备上进行认证,若用户仍然没有通过认证,则将继续处于Auth-Fail VLAN内;若认证成功,则回到加入Auth-Fail VLAN之前端口所在的VLAN。处于Auth-Fail VLAN中的用户,若在指定时间(默认90秒)内无流量通过接入端口,则将离开该VLAN,回到端口的初始VLAN

用户加入授权VLANAuth-Fail VLAN后,需要自动申请或者手动更新客户端IP地址,以保证可以与授权VLANAuth-Fail VLAN中的资源互通。

 

三层Portal认证过程

直接认证和可跨三层Portal认证流程相同。二次地址分配认证流程因为有两次地址分配过程,所以其认证流程和另外两种认证方式有所不同。

直接认证和可跨三层Portal认证的流程(CHAP/PAP认证方式)

图5 直接认证/可跨三层Portal认证流程图

 

直接认证/可跨三层Portal认证流程:

(1)        Portal用户通过HTTP协议发起认证请求。HTTP报文经过接入设备时,对于访问Portal服务器或设定的免费访问地址的HTTP报文,接入设备允许其通过;对于访问其它地址的HTTP报文,接入设备将其重定向到Portal服务器。Portal服务器提供Web页面供用户输入用户名和密码来进行认证。

(2)        Portal服务器与接入设备之间进行CHAPChallenge Handshake Authentication Protocol,质询握手验证协议)认证交互。若采用PAPPassword Authentication Protocol,密码验证协议)认证则直接进入下一步骤。

(3)        Portal服务器将用户输入的用户名和密码组装成认证请求报文发往接入设备,同时开启定时器等待认证应答报文。

(4)        接入设备与RADIUS服务器之间进行RADIUS协议报文的交互。

(5)        接入设备向Portal服务器发送认证应答报文。

(6)        Portal服务器向客户端发送认证通过报文,通知客户端认证(上线)成功。

(7)        Portal服务器向接入设备发送认证应答确认。

(8)        客户端和安全策略服务器之间进行安全信息交互。安全策略服务器检测接入终端的安全性是否合格,包括是否安装防病毒软件、是否更新病毒库、是否安装了非法软件、是否更新操作系统补丁等。

(9)        安全策略服务器根据用户的安全性授权用户访问非受限资源,授权信息保存到接入设备中,接入设备将使用该信息控制用户的访问。

(10)    步骤(8)(9)Portal认证扩展功能的交互过程。

二次地址分配认证方式的流程(CHAP/PAP认证方式)

图6 二次地址分配认证方式流程图

 

二次地址分配认证流程:

(1)(6)同直接/可跨三层Portal认证中步骤(1)~(6)。

(7)        客户端收到认证通过报文后,通过DHCP获得新的公网IP地址,并通知Portal服务器用户已获得新IP地址。

(8)        Portal服务器通知接入设备客户端获得新公网IP地址。

(9)        接入设备通过检测ARP协议报文发现了用户IP变化,并通告Portal服务器已检测到用户IP变化。

(10)    Portal服务器通知客户端上线成功。

(11)    Portal服务器向接入设备发送IP变化确认报文。

(12)    客户端和安全策略服务器之间进行安全信息交互。安全策略服务器检测接入终端的安全性是否合格,包括是否安装防病毒软件、是否更新病毒库、是否安装了非法软件、是否更新操作系统补丁等。

(13)    安全策略服务器根据用户的安全性授权用户访问非受限资源,授权信息保存到接入设备中,接入设备将使用该信息控制用户的访问。

(14)    步骤(12)(13)Portal认证扩展功能的交互过程。

使用本地Portal服务器的认证流程

图7 使用本地Portal服务器的认证流程图

 

直接/可跨三层本地Portal认证流程:

(1)        Portal用户通过HTTPHTTPS协议发起认证请求。HTTP报文经过配置了本地Portal服务器的接入设备的接口时会被重定向到本地Portal服务器,本地Portal服务器提供Web页面供用户输入用户名和密码来进行认证。该本地Portal服务器的监听IP地址为接入设备上一个与用户之间路由可达的三层接口IP地址。

(2)        接入设备与RADIUS服务器之间进行RADIUS协议报文的交互。

(3)        接入设备中的本地Portal服务器向客户端发送登录成功页面,通知客户端认证(上线)成功。

Portal支持EAP认证流程

图8 Portal支持EAP认证流程图

 

支持EAP认证的Portal认证流程如下(各Portal认证方式对于EAP认证的处理流程相同,此处仅以直接认证为例):

(1)        Portal客户端发起EAP认证请求,向Portal服务器发送Identity类型的EAP请求报文。

(2)        Portal服务器向接入设备发送Portal认证请求报文,同时开启定时器等待Portal认证应答报文,该认证请求报文中包含若干个EAP-Message属性,这些属性用于封装Portal客户端发送的EAP报文,并可携带客户端的证书信息。

(3)        接入设备接收到Portal认证请求报文后,构造RADIUS认证请求报文与RADIUS服务器进行认证交互,该RADIUS认证请求报文的EAP-Message属性值由接入设备收到的Portal认证请求报文中的EAP-Message属性值填充。

(4)        接入设备根据RADIUS服务器的回应信息向Portal服务器发送证书请求报文,该报文中同样会包含若干个EAP-Message属性,可用于携带RADIUS服务器的证书信息,这些属性值由RADIUS认证回应报文中的EAP-Message属性值填充。

(5)        Portal服务器接收到证书请求报文后,向Portal客户端发送EAP认证回应报文,直接将RADIUS服务器响应报文中的EAP-Message属性值透传给Portal客户端。

(6)        Portal客户端继续发起的EAP认证请求,与RADIUS服务器进行后续的EAP认证交互,期间Portal认证请求报文可能会出现多次。后续认证过程与第一个EAP认证请求报文的交互过程类似,仅EAP报文类型会根据EAP认证阶段发展有所变化,此处不再详述。

(7)        EAP认证通过后,RADIUS服务器向接入设备发送认证通过响应报文,该报文的EAP-Message属性中封装了EAP认证成功报文(EAP-Success)。

(8)        接入设备向Portal服务器发送认证应答报文,该报文的EAP-Message属性中封装了EAP认证成功报文。

(9)        Portal服务器根据认证应答报文中的认证结果通知Portal客户端认证成功。

(10)    后续为Portal认证扩展功能的交互过程,可参考CHAP/PAP认证方式下的认证流程介绍,此处略。

Portal支持双机热备

本特性的支持情况与设备的型号有关,请以设备的实际情况为准。

 

1. 概述

在当前的组网应用中,用户对网络可靠性的要求越来越高,特别是在一些重点的业务入口或接入点上需要保证网络业务的不间断性。双机热备技术可以保证这些关键业务节点在单点故障的情况下,信息流仍然不中断。

所谓双机热备,其实是双机业务备份。可以分别指定两台设备上的任意一个支持备份接口功能的以太网接口为备份接口,两个备份接口通过备份链路相连。或者在两台设备上分别指定相同的备份VLAN,专用于传输双机热备相关的报文。在设备正常工作时,对业务信息进行主备同步;在设备故障后,利用VRRP或动态路由(例如OSPF)机制实现业务流量切换到备份设备,由备份设备继续处理业务,从而保证了当前的业务不被中断。关于双机热备的详细介绍请参见“可靠性配置指导”中的“双机热备”。

图9 双机热备组网图

 

9所示,在一个典型的Portal双机热备组网环境中,用户通过Portal认证接入网络,为避免接入设备单机故障的情况下造成的Portal业务中断,接入设备提供了Portal支持双机热备功能。该功能是指,接入设备Gateway AGateway B通过备份链路互相备份两台设备上的Portal在线用户信息,实现当其中一台设备发生故障时,另外一台设备可以对新的Portal用户进行接入认证,并能够保证所有已上线Portal用户的正常数据通信。

备份链路对于部分双机热备设备不是必须的,只要保证互为备份的设备上存在相同的VLAN专用于传输双机热备相关的报文。若组网中配置了专门的备份链路,则需要将两台设备上连接备份链路的物理接口加入备份VLAN中。

 

2. 基本概念

(1)        设备的工作状态

l              独立运行状态:设备未与其它设备建立备份连接时所处的一种稳定状态。

l              同步运行状态:设备与对端设备之间成功建立备份连接,可以进行数据备份时所处的一种稳定状态。

(2)        用户的工作模式

l              Stand-alone:表示用户数据只在一台设备上存在。当前设备处于独立运行状态,或者当前设备处于同步运行状态但用户数据还未同步。

l              Primary:表明用户是由本端设备上线,用户数据由本端设备生成。本端设备处于同步运行状态,可以处理并接收服务器发送的报文。

l              Secondary:表明用户是由对端设备上线,用户数据是由对端设备同步到本端设备上的。本端设备处于同步运行状态,只接收并处理同步消息,不处理服务器发送的报文。

Portal支持多实例

实际组网应用中,某企业的各分支机构属于不同的VPN,且各VPN之间的业务相互隔离。如果各分支机构的Portal用户要通过位于总部VPN中的服务器进行统一认证,则需要Portal支持多实例。

通过Portal支持多实例,可实现Portal认证报文通过MPLS VPN进行交互。如下图所示,连接客户端的PE设备作为NAS,通过MPLS VPN将私网客户端的Portal认证报文透传给网络另一端的私网服务器,并在AAA支持多实例的配合下,实现对私网VPN客户端的Portal接入认证,满足了私网VPN业务隔离情况下的客户端集中认证,且各私网的认证报文互不影响。

图10 Portal支持多实例典型组网图

 

l      MCE设备上进行的Portal接入认证也可支持多实例功能。关于MCE的相关介绍请见参见“MPLS配置指导”中的“MPLS L3VPN”。

l      关于AAA支持多实例的相关介绍请参见“安全配置指导”中的“AAA”。

l      本特性不支持多VPN间的地址重叠。

 

附件下载