您的位置:首页 > 融合创新与教育变革征文

南昌大学基于eduroam的无线漫游实现方法

南昌大学网络中心 刘承启 付爱英

  摘要:eduroam全球免费漫游为众多学者提供便利,加入eduroam成为趋势。本文介绍了eduroam的相关知识和南昌大学无线网建设情况。然后,本文已南昌大学为例,展示了在已有无线网上部署eduroam并成功实现统一认证的案例。

  关键词:无线网,eduroam,802.1x,统一认证

  引言

  南昌大学无线网NCUWLAN经过两期建设,已实现全覆盖。无线产品多元化使得AC认证方式不可行,同时考虑到有线无线认证一体化,NCUWLAN采用Portal无感知认证。为给出访者和来访者提供便利的无线接入,我校积极加入eduroam联盟。eduroam的技术基础是802.1x标准和层次化的radius代理服务器,为保证NCUWLAN和eduroam同时共存,学校采用原有认证和802.1x认证并存的方式,本文将阐述如何根据学校的现状实现eduroam漫游的方法。

  1 eduroam无线漫游相关知识

  1.1 eduroam概述及相关协议

  eduroam,education roaming,是专为科研和教育机构开发的环球跨域安全的和免费的无线漫游认证服务。加入eduroam联盟的成员需要开启SSID为eduroam的无线信号,且采用802.1x、EAP的PEAP协议安全连接并由radius完成认证。eduroam能成功地服务于全球联盟成员,与它的安全可靠易实施等优点有关,下面介绍一下它的相关协议。

  1.802.1x

  802.1X协议是IEEE802 LAN/WAN委员会为解决无线局域网网络安全问题专门提出来的,是二层协议,对设备性能要求不高。同时,业务报文和认证报文分离的特点提高了它的认证效率[1]。因此,802.1x协议是eduroam的最优选择。

  2.radius

  我们知道,UDP协议通信快捷方便,而且UDP是无连接的。RADIUS与AC/NAS就是基于UDP通信,所以radius压力小更安全。radius的代理和漫游功能,可以让用户从任何地方到达他所属的radius服务器进行认证,这种层次化的代理功能,满足eduroam全球漫游的需要。

  3.PEAP

  PEAP是一种基于安全密码的认证协议。为增强 EAP 协议和网络安全性,PEAP对通过 TLS 通道在客户端和服务器之间进行的 EAP 方法协商的提供保护[2],这有助于防止攻击者在客户端和网络访问服务器 (NAS) 之间插入数据包,以防对安全性较低的 EAP 方法进行协商。

  1.2 eduroam工作流程

  首先eduroam服务中需要身份提供者IdP和服务提供者SP,前者负责生成、管理用户身份和运行认证服务器,后者提供接入服务,一般多数eduroam成员既是IdP也是SP。IdP须有自己的realm(realm 通常指的是dns 域,使用域名标识才能找到对应的FLR的认证路由)来表明自己的身份,它的用户分身标准格式为uid@realm。

  其次,eduroam利用radius层次化特点实现全球漫游,具体体现为eduroam部署三个层次的radius服务:

  1)顶级radius 服务器 Confederation top-level Radius Server (TLR)

  TLR设置在欧洲荷兰和丹麦eduroam中心,负责根据地域(如.nl,.dk,.au,.cn等)将不同的认证包转发到不同的 FLR。

  2)联盟级radius 服务器 Federation-Level Radius servers (FLRs)

  FLR 在每个国家或地区会都有,负责转发 TLR 以及中国大陆各科研教育机构 IDP(Identity Provider)/SP(Service Provider)之间的认证请求。

  3)校园级radius 服务器 IdP and SP Radius infratructure

  校园级的二级 eduroam 网络,通常部署于研究所或大学校园里,即支持 IDP/SP 级别的radius 服务器,完成终端的 eduroam IDP 认证和 SP 服务功能。每一个 eduroam IDP 负责认证该所属域的用户,通过校验本地用户的加密密钥对;而 SP 负责连接具有radius 功能的 AP 或交换机,并负责与认证访问用户所在域的radius 服务器建立加密通道,并进行实现认证,漫游上网。通常 IDP 和 SP 可部署于一台radius 服务器上。图1所示eduroam结构。

  图1 eduroam结构图

  这种结构图类似域名服务的层次模型,从图可以看出,radius层次架构的作用是把用户身份转发到它的所属机构去验证有效性。

  每个eduroam成员需要把它的radius服务器连接到所在国家的FLR上。FLR通常由国家教育科研网运行,它上面有这个国家中eduroam成员的完整清单,这种机制保证了不同国家eduroam成员之间的成功漫游。而国际漫游则还需要TLR,TLR NL和TLR DK负责不同国家间的认证包转发,FLR及RPS(radius proxy server)负责各IDP/SP之间的认证包转发,从而实现eduroam的全球漫游功能。

  2 南昌大学校园无线网NCUWLAN介绍

  NCUWLAN根据应用场景不同部署不同品牌的无线产品,AP超过6000个。为便于对多品牌AC进行管理,AC工作在二层模式,AC将用户数据透传给核心路由器,核心路由器作为无线用户的认证策略执行点。NCUWLAN采用三层架构,AP的三层终结在汇集交换机上,用户的三层终结在核心路由器上。为实现有线无线VPN认证一体化,采用radius+基于MAC无感知的Portal认证方式,用户仅一套用户名和密码。如图2所示。

  图2 NCUWLAN认证逻辑图

  3. 南昌大学eduroam的实施

  3.1 eduroam与NCUWLAN统一认证

  根据我校NCUWLAN已存事实,我们考虑让两个无线服务并存,那么就要在原认证方式基础上实现eduroam认证。具体方案:新架设开源freeradius作为校园级eduroam radius服务器,并在原有的身份认证服务器上添加eduroam radius服务器为信任服务器,这样原有身份认证服务器可以接受eduroam radius代理过来的802.1x的radius报文,从而实现与原有认证统一,见图3。

  图3 eduroam与NCUWLAN统一认证

  eduroam与NCUWLAN对于同一用户的区别:NCUWLAN账号为uid,eduroam账号为uid@ncu.edu.cn,共用密码,用户身份数据是在数据库服务器中。

  如图所示:各AC上同时提供eduroam与NCUWLAN,各AC把ssid为eduroam 的客户端802.1x认证报文发往eduroam radius。

  1)当eduroam用户uid@realm向AC发起入网认证请求,eduroam radius服务器收到请求判断出是本机构的ncu.edu.cn:若是,则将认证请求转发给身份认证服务器去完成相应认证;若不是,则将认证请求转发给上级RPS如edu.cn ,由它去通知对应的联盟成员完成相应认证。例如userid@pku.edu.cn, RPS edu.cn则将认证请求发给pku.edu.cn的radius服务器,然后就能得到pku.edu.cn的radius返回的用户身份是否有效的信息。

  同样,我校的eduroam用户在其他联盟机构的认证过程与此反向而行。

  2)当NCUWLAN用户uid向AC发起入网认证请求,由核心路由器(BRAS)把认证转发给身份认证服务器并完成相应认证。

  3.2 部署eduroam的关键配置

  1)eduroam radius上配置:

  1.配置clients.conf文件,添加FLR服务器。

  client ilr1.edu.cn {

  ipaddr = 上级FLR服务器地址

  secret= 与上级FLR对接密码

  shortname=ilr1.edu.cn

  }

  添加无线控制器,可添加多个厂商的多台无线控制器。

  client AC1 {

  ipaddr = 本校无线控制器地址

  netmask = 32

  secret = radius服务器和AC对接密钥

  shortname = ac1

  }

  2.配置proxy.conf,添加认证转发策略。

  本地用户连接eduroam时,根据用户名的realm信息判断用户是在本地认证,还是需要到上级查找认证服务器。

  client ilr1.edu.cn {

  ipaddr = 上级FLR服务器地址

  netmask = 32

  secret= g与上级FLR对接密码

  shortname=ilr1.edu.cn

  }

  home_server_pool EDUROAM {

  type = fail-over

  home_server = ilr1.edu.cn

  home_server = ilr2.edu.cn

  }

  把本地认证转发到学校原认证服务器,home server指的是接受代理请求的另外一台radius 服务器。

  home_server ncu.edu.cn {

  type = auth+acct

  ipaddr = 学校原认证服务器地址

  port = 1812

  proto = udp

  secret = 与学校原认证服务器对接密钥

  }

  home_server_pool NCUPool{

  type = fail-over

  home_server = ncu.edu.cn

  #后缀名为ncu.edu.cn的用户在本校认证

  }

  realm ncu.edu.cn{

   pool=NCUPool

  }

  配置上行路由转发规则,所有非ncu.edu.cn后缀用户,认证请求都需要发往上级。

  realm DEFAULT {

  pool = EDUROAM

  nostrip

  }

  2)配置无线控制器

  本文以H3C为例,介绍无线控制器需做的配置。

  1.配置系统缺省的和未知名的ISP域,所有在登录时没有提供ISP域名的用户都属于这个域

  domain default enable ncu.edu.cn

  domain if-unknown ncu.edu.cn

  2. 全局开启802.1X,设置对802.1X用户采用EAP认证

  dot1x authentication-method eap

  3.创建RADIUS方案radius1,并设置认证和计费RADIUS服务器的IP地址

  radius scheme radius1

  primary authentication x.x.x.x (x.x.x.x为freeradius地址)

  primary accounting x.x.x.x

  4.设置系统与认证RADIUS服务器交互报文时的共享密钥

  key authentication cipher xxxxxxx

  key accounting cipher xxxxxxx

  5.设置设备发送RADIUS报文使用的源ip地址

  nas-ip x.x.x.x (AC本机地址)

  6.创建业务vlan,创建服务模板(加密类型服务模板),配置SSID为eduroam,加密方式为tkip和ccmp。配置无线端口安全,使用802.1X认证方式。限于篇幅,此处不展开详细描述。

  结束语

  成功部署eduroam为我校出访人员以及联盟成员的来访者提供了极大的便利,在实施的过程中解决了不同无线服务共存且统一认证的关键难题。在今后的工作中,我们将考虑对本机构的用户限制在本地使用eduroam,是在eduroam radius实现该功能还是由身份认证服务器通过判断NAS的ip来实现,我们将继续探索。eduroam这种联盟漫游服务模式给我们提供了一个思路,如省域网内的用户能否提供一个公共的接入服务,等等。

  参考文献

  1. 贾立波等,802.1X/PEAP认证方法的研究和应用[J],网络安全技术与应用,2009.5,P80

  2. 徐鹏等,无线局域网接入认证机制的分析研究[J],信息安全与技术,2015.7,P42

来源:中国教育网络作者:刘承启 付爱英