• 产品与解决方案
  • 行业解决方案
  • 服务
  • 支持
  • 合作伙伴
  • 关于我们

06-安全分册

02-802.1X配置

本章节下载 02-802.1X配置  (452.2 KB)

02-802.1X配置


1 802.1X配置

1.1  802.1X简介

IEEE802 LAN/WAN委员会为解决无线局域网网络安全问题,提出了802.1X协议。后来,802.1X协议作为局域网端口的一个普通接入控制机制在以太网中被广泛应用,主要解决以太网内认证和安全方面的问题。

802.1X协议是一种基于端口的网络接入控制协议(port based network access control protocol)。“基于端口的网络接入控制”是指在局域网接入设备的端口这一级对所接入的用户设备进行认证和控制。连接在端口上的用户设备如果能通过认证,就可以访问局域网中的资源;如果不能通过认证,则无法访问局域网中的资源。

由于端口安全特性通过多种安全模式提供了802.1X和MAC地址认证的扩展和组合应用,因此在需要灵活使用以上两种认证方式的组网环境下,推荐使用端口安全特性。而在仅需要802.1X特性来完成接入控制的组网环境下,推荐单独使用802.1X特性,配置过程简洁明了。关于端口安全特性的详细介绍和具体配置请参见“安全分册”中的“端口安全配置”。

 

1.1.1  802.1X的体系结构

802.1X系统为典型的Client/Server结构,如图1-1所示,包括三个实体:客户端(Client)、设备端(Device)和认证服务器(Server)。

图1-1 802.1X认证系统的体系结构

 

l              客户端是位于局域网段一端的一个实体,由该链路另一端的设备端对其进行认证。客户端一般为一个用户终端设备,用户可以通过启动客户端软件发起802.1X认证。客户端必须支持EAPOL(Extensible Authentication Protocol over LAN,局域网上的可扩展认证协议)。

l              设备端是位于局域网段一端的另一个实体,对所连接的客户端进行认证。设备端通常为支持802.1X协议的网络设备,它为客户端提供接入局域网的端口,该端口可以是物理端口,也可以是逻辑端口。

l              认证服务器是为设备端提供认证服务的实体。认证服务器用于实现对用户进行认证、授权和计费,通常为RADIUS(Remote Authentication Dial-In User Service,远程认证拨号用户服务)服务器。

1.1.2  802.1X的认证方式

802.1X认证系统使用EAP(Extensible Authentication Protocol,可扩展认证协议),来实现客户端、设备端和认证服务器之间认证信息的交换。

l              在客户端与设备端之间,EAP协议报文使用EAPOL封装格式,直接承载于LAN环境中。

l              在设备端与RADIUS服务器之间,可以使用两种方式来交换信息。一种是EAP协议报文由设备端进行中继,使用EAPOR(EAP over RADIUS)封装格式承载于RADIUS协议中;另一种是EAP协议报文由设备端进行终结,采用包含PAP(Password Authentication Protocol,密码验证协议)或CHAP(Challenge Handshake Authentication Protocal,质询握手验证协议)属性的报文与RADIUS服务器进行认证交互。

1.1.3  802.1X的基本概念

1. 受控/非受控端口

设备端为客户端提供接入局域网的端口,这个端口被划分为两个逻辑端口:受控端口和非受控端口。任何到达该端口的帧,在受控端口与非受控端口上均可见。

l              非受控端口始终处于双向连通状态,主要用来传递EAPOL协议帧,保证客户端始终能够发出或接收认证报文。

l              受控端口在授权状态下处于双向连通状态,用于传递业务报文;在非授权状态下禁止从客户端接收任何报文。

2. 授权/非授权状态

设备端利用认证服务器对需要接入局域网的客户端执行认证,并根据认证结果(Accept或Reject)对受控端口的授权/非授权状态进行相应地控制。

图1-2显示了受控端口上不同的授权状态对通过该端口报文的影响。图中对比了两个802.1X认证系统的端口状态。系统1的受控端口处于非授权状态(相当于端口开关打开),系统2的受控端口处于授权状态(相当于端口开关关闭)。

图1-2 受控端口上授权状态的影响

 

用户可以通过在端口下配置的接入控制的模式来控制端口的授权状态。端口支持以下三种接入控制模式:

l              强制授权模式(authorized-force):表示端口始终处于授权状态,允许用户不经认证授权即可访问网络资源。

l              强制非授权模式(unauthorized-force):表示端口始终处于非授权状态,不允许用户进行认证。设备端不对通过该端口接入的客户端提供认证服务。

l              自动识别模式(auto):表示端口初始状态为非授权状态,仅允许EAPOL报文收发,不允许用户访问网络资源;如果认证通过,则端口切换到授权状态,允许用户访问网络资源。这也是最常见的情况。

3. 受控方向

在非授权状态下,受控端口可以被设置成单向受控和双向受控。

l              实行双向受控时,禁止帧的发送和接收;

l              实行单向受控时,禁止从客户端接收帧,但允许向客户端发送帧。

目前,设备只支持单向受控。

 

1.1.4  EAPOL消息的封装

1. EAPOL数据包的格式

EAPOL是802.1X协议定义的一种报文封装格式,主要用于在客户端和设备端之间传送EAP协议报文,以允许EAP协议报文在LAN上传送。EAPOL数据包的格式如图1-3所示。

图1-3 EAPOL数据包格式

 

PAE Ethernet Type:表示协议类型,为0x888E。

Protocol Version:表示EAPOL帧的发送方所支持的协议版本号。

Type:表示EAPOL数据帧类型,目前设备上支持的数据类型见表1-1

表1-1 EAPOL数据类型

类型

说明

EAP-Packet(值为0x00):认证信息帧,用于承载认证信息

该帧在设备端和认证服务器之间存在,重新封装并承载于RADIUS协议上,便于穿越复杂的网络到达认证服务器

EAPOL-Start(值为0x01):认证发起帧

这两种类型的帧仅在客户端和设备端之间存在

EAPOL-Logoff(值为0x02):退出请求帧

 

Length:表示数据长度,也就是“Packet Body”字段的长度,单位为字节。如果为0,则表示没有后面的数据域。

Packet Body:表示数据内容,根据不同的Type有不同的格式。

2. EAP数据包的格式

当EAPOL数据包格式Type域为EAP-Packet时,Packet Body为EAP数据包结构,如图1-4所示。

图1-4 EAP数据包格式

 

Code:指明EAP包的类型,共有4种:Request、Response、Success、Failure。

l              Success和Failure类型的包没有Data域,相应的Length域的值为4。

l              Request和Response类型数据包的Data域的格式如图1-5所示。Type为EAP的认证类型,Type data的内容由类型决定。例如,Type值为1时代表Identity,用来查询对方的身份;Type值为4时,代表MD5-Challenge,类似于PPP CHAP协议,包含质询消息。

图1-5 Request和Response类型数据包的Data域的格式

 

Identifier:用于匹配Request和Response消息。

Length:EAP包的长度,包含Code、Identifier、Length和Data域,单位为字节。

Data:EAP包的内容,由Code类型决定。

1.1.5  EAP属性的封装

RADIUS为支持EAP认证增加了两个属性:EAP-Message(EAP消息)和Message-Authenticator(消息认证码)。RADIUS协议的报文格式请参见“安全分册”中的“AAA配置”的RADIUS协议简介部分。

1. EAP-Message

图1-6所示,这个属性用来封装EAP数据包,类型代码为79,String域最长253字节,如果EAP数据包长度大于253字节,可以对其进行分片,依次封装在多个EAP-Message属性中。

图1-6 EAP-Message属性封装

 

2. Message-Authenticator

图1-7所示,这个属性用于在使用EAP、CHAP等认证方法的过程中,避免接入请求包被窃听。在含有EAP-Message属性的数据包中,必须同时也包含Message-Authenticator,否则该数据包会被认为无效而被丢弃。

图1-7 Message-Authenticator属性

 

1.1.6  802.1X的认证触发方式

802.1X的认证过程可以由客户端主动发起,也可以由设备端发起。设备支持的认证触发方式包括以下两种:

1. 客户端主动触发方式

客户端主动向设备端发送EAPOL-Start报文来触发认证,该报文目的地址为IEEE 802.1X协议分配的一个组播MAC地址:01-80-C2-00-00-03。

另外,由于网络中有些设备不支持上述的组播报文,使得认证设备无法收到客户端的认证请求,因此设备端还支持广播触发方式,即,可以接收客户端发送的目的地址为广播MAC地址的EAPOL-Start报文。这种触发方式需要H3C iNode的802.1X客户端的配合。

2. 设备端主动触发方式

设备会每隔N秒(缺省为30秒)主动向客户端发送EAP-Request/Identity报文来触发认证,这种触发方式用于支持不能主动发送EAPOL-Start报文的客户端,例如Windows XP自带的802.1X客户端。

1.1.7  802.1X的认证过程

802.1X系统支持EAP中继方式和EAP终结方式与远端RADIUS服务器交互完成认证。以下关于两种认证方式的过程描述,都以客户端主动发起认证为例。

1. EAP中继方式

这种方式是IEEE 802.1X标准规定的,将EAP(可扩展认证协议)承载在其它高层协议中,如EAP over RADIUS,以便扩展认证协议报文穿越复杂的网络到达认证服务器。一般来说,EAP中继方式需要RADIUS服务器支持EAP属性:EAP-Message和Message-Authenticator,分别用来封装EAP报文及对携带EAP-Message的RADIUS报文进行保护。

下面以EAP-MD5方式为例介绍基本业务流程,如图1-8所示。

图1-8 IEEE 802.1X认证系统的EAP中继方式业务流程

 

认证过程如下:

(1)        当用户有访问网络需求时打开802.1X客户端程序,输入已经申请、登记过的用户名和密码,发起连接请求(EAPOL-Start报文)。此时,客户端程序将发出请求认证的报文给设备端,开始启动一次认证过程。

(2)        设备端收到请求认证的数据帧后,将发出一个请求帧(EAP-Request/Identity报文)要求用户的客户端程序发送输入的用户名。

(3)        客户端程序响应设备端发出的请求,将用户名信息通过数据帧(EAP-Response/Identity报文)发送给设备端。设备端将客户端发送的数据帧经过封包处理后(RADIUS Access-Request报文)送给认证服务器进行处理。

(4)        RADIUS服务器收到设备端转发的用户名信息后,将该信息与数据库中的用户名表对比,找到该用户名对应的密码信息,用随机生成的一个加密字对它进行加密处理,同时也将此加密字通过RADIUS Access-Challenge报文发送给设备端,由设备端转发给客户端程序。

(5)        客户端程序收到由设备端传来的加密字(EAP-Request/MD5 Challenge报文)后,用该加密字对密码部分进行加密处理(此种加密算法通常是不可逆的),生成EAP-Response/MD5 Challenge报文,并通过设备端传给认证服务器。

(6)        RADIUS服务器将收到的已加密的密码信息(RADIUS Access-Request报文)和本地经过加密运算后的密码信息进行对比,如果相同,则认为该用户为合法用户,反馈认证通过的消息(RADIUS Access-Accept报文和EAP-Success报文)。

(7)        设备收到认证通过消息后将端口改为授权状态,允许用户通过端口访问网络。在此期间,设备端会通过向客户端定期发送握手报文的方法,对用户的在线情况进行监测。缺省情况下,两次握手请求报文都得不到客户端应答,设备端就会让用户下线,防止用户因为异常原因下线而设备无法感知。

(8)        客户端也可以发送EAPOL-Logoff报文给设备端,主动要求下线。设备端把端口状态从授权状态改变成未授权状态,并向客户端发送EAP-Failure报文。

EAP中继方式下,需要保证在客户端和RADIUS服务器上选择一致的EAP认证方法,而在设备上,只需要通过dot1x authentication-method eap命令启动EAP中继方式即可。

 

2. EAP终结方式

这种方式将EAP报文在设备端终结并映射到RADIUS报文中,利用标准RADIUS协议完成认证、授权和计费。设备端与RADIUS服务器之间可以采用PAP或者CHAP认证方法。以下以CHAP认证方法为例介绍基本业务流程,如图1-9所示。

图1-9 IEEE 802.1X认证系统的EAP终结方式业务流程

 

EAP终结方式与EAP中继方式的认证流程相比,不同之处在于用来对用户密码信息进行加密处理的随机加密字由设备端生成,之后设备端会把用户名、随机加密字和客户端加密后的密码信息一起送给RADIUS服务器,进行相关的认证处理。

1.1.8  802.1X的接入控制方式

设备不仅支持协议所规定的基于端口的接入认证方式,还对其进行了扩展、优化,支持基于MAC的接入控制方式。

l              当采用基于端口的接入控制方式时,只要该端口下的第一个用户认证成功后,其它接入用户无须认证就可使用网络资源,但是当第一个用户下线后,其它用户也会被拒绝使用网络。

l              采用基于MAC的接入控制方式时,该端口下的所有接入用户均需要单独认证,当某个用户下线时,也只有该用户无法使用网络。

1.1.9  802.1X的定时器

802.1X认证过程中会启动多个定时器以控制接入用户、设备以及RADIUS服务器之间进行合理、有序的交互。802.1X的定时器主要有以下几种:

l              用户名请求超时定时器(tx-period):该定时器定义了两个时间间隔。其一,当设备端向客户端发送EAP-Request/Identity请求报文后,设备端启动该定时器,若在tx-period设置的时间间隔内,设备端没有收到客户端的响应,则设备端将重发认证请求报文;其二,为了兼容不主动发送EAPOL-Start连接请求报文的客户端,设备会定期组播EAP-Request/Identity请求报文来检测客户端。tx-period定义了该组播报文的发送时间间隔。

l              客户端认证超时定时器(supp-timeout):当设备端向客户端发送了EAP-Request/MD5 Challenge请求报文后,设备端启动此定时器,若在该定时器设置的时长内,设备端没有收到客户端的响应,设备端将重发该报文。

l              认证服务器超时定时器(server-timeout):当设备端向认证服务器发送了RADIUS Access-Request请求报文后,设备端启动server-timeout定时器,若在该定时器设置的时长内,设备端没有收到认证服务器的响应,设备端将重发认证请求报文。

l              握手定时器(handshake-period):此定时器是在用户认证成功后启动的,设备端以此间隔为周期发送握手请求报文,以定期检测用户的在线情况。如果配置发送次数为N,则当设备端连续N次没有收到客户端的响应报文,就认为用户已经下线。

l              静默定时器(quiet-period):对用户认证失败以后,设备端需要静默一段时间(该时间由静默定时器设置),在静默期间,设备端不处理该用户的认证请求。

1.1.10  和802.1X配合使用的特性

1. VLAN下发

802.1X用户在服务器上通过认证时,服务器会把授权信息传送给设备端。如果服务器上配置了下发VLAN功能,则授权信息中含有授权下发的VLAN信息,设备根据用户认证上线的端口链路类型,按以下三种情况将端口加入下发VLAN中。

l              端口的链路类型为Access,当前Access端口离开用户配置的VLAN并加入授权下发的VLAN中。

l              端口的链路类型为Trunk,设备允许授权下发的VLAN通过当前Trunk端口,并且端口的缺省VLAN ID为下发VLAN的VLAN ID。

l              端口的链路类型为Hybrid,设备允许授权下发的VLAN以不携带Tag的方式通过当前Hybrid端口,并且端口的缺省VLAN ID为下发VLAN的VLAN ID。需要注意的是,若当前Hybrid端口上配置了基于MAC的VLAN,则设备将根据认证服务器下发的授权VLAN动态地创建基于用户MAC的VLAN,而端口的缺省VLAN ID并不改变。

授权下发的VLAN并不改变端口的配置,也不影响端口的配置。但是,授权下发的VLAN的优先级高于用户配置的VLAN,即通过认证后起作用的VLAN是授权下发的VLAN,用户配置的VLAN在用户下线后生效。

关于不同端口链路类型下VLAN的具体配置请参见“接入分册”中的“VLAN配置”。

l    对于Hybrid端口,如果授权下发的VLAN已经配置为携带Tag的方式加入端口,则VLAN下发失败。

l    对于Hybrid端口,在VLAN下发之后,不能将授权下发的VLAN配置修改为携带Tag的方式。

 

2. Guest VLAN

Guest VLAN功能允许用户在未认证或者认证失败的情况下,可以访问某一特定VLAN中的资源,比如获取客户端软件,升级客户端或执行其他一些用户升级程序。这个缺省VLAN称之为Guest VLAN。

根据端口的接入控制方式可以将Guest VLAN划分为两类:

l              当端口的接入控制方式为portbased时,支持基于端口的Guest VLAN (Port-based Guest VLAN),简称PGV;

l              当端口的接入控制方式为macbased时,支持基于MAC的Guest VLAN (MAC-based Guest VLAN),简称MGV。

目前,S3500-EA系列以太网交换机的Guest VLAN功能仅支持基于端口的Guest VLAN (Port-based Guest VLAN),简称PGV。

配置了PGV的端口上,在一定的时间内(默认90秒)若无客户端认证成功,则该端口会被加入到Guest VLAN,所有在该端口接入的用户将被授权访问Guest VLAN里的资源。

与VLAN下发类似,配置了PGV的端口将按照各自的链路类型情况被加入到Guest VLAN内。此时Guest VLAN中端口下的用户发起认证,如果认证失败,该端口将会仍然处在Guest VLAN内;如果认证成功,端口会离开Guest VLAN,之后加入的VLAN分为以下两种情况:

l              若认证服务器下发VLAN,则端口加入下发的VLAN中。用户下线后,端口会回到配置的VLAN中(加入Guest VLAN之前所在的VLAN,即“初始VLAN”)。

l              若认证服务器不下发VLAN,则端口加入配置的VLAN中。用户下线后,端口仍在配置的VLAN中。

3. ACL下发

ACL(Access Control List,访问控制列表)提供了控制用户访问网络资源和限制用户访问权限的功能。当用户上线时,如果RADIUS服务器上配置了授权ACL,则设备会根据服务器下发的授权ACL对用户所在端口的数据流进行控制;在服务器上配置授权ACL之前,需要在设备上配置相应的规则。管理员可以通过改变服务器的授权ACL设置或设备上对应的ACL规则来改变用户的访问权限。

4. 指定端口的强制认证域

指定端口的强制认证域(mandatory domain)为802.1X接入提供了一种安全控制策略。所有从该端口接入的802.1X用户将被强制使用该认证域来进行认证、授权和计费,可以防止用户通过恶意假冒其它域账号来接入网络。

另外,对于采用证书的EAP中继方式的802.1X认证来说,接入用户的客户端证书决定了用户的域名。因此,即使所有端口上客户端的用户证书隶属于同一证书颁发机构,即输入的用户域名相同,管理员也可以通过配置强制认证域对不同端口指定不同的认证域,从而增加了管理员部署802.1X接入策略的灵活性。

1.2  配置802.1X

1.2.1  配置准备

802.1X提供了一个用户身份认证的实现方案,但是仅仅依靠802.1X是不足以实现该方案的。接入设备的管理者选择使用RADIUS或本地认证方法,以配合802.1X完成用户的身份认证。因此,需要首先完成以下配置任务:

l              配置802.1X用户所属的ISP认证域及及其使用的AAA方案,即本地认证方案或RADIUS方案。

l              如果需要通过RADIUS服务器进行认证,则应该在RADIUS服务器上配置相应的用户名和密码。

l              如果需要本地认证,则应该在设备上手动添加认证的用户名和密码。配置本地认证时,用户使用的服务类型必须设置为lan-access

RADIUS客户端的具体配置请参见“安全分册”中的“AAA配置”。

1.2.2  配置全局802.1X

表1-2 配置全局802.1X

配置步骤

命令

说明

进入系统视图

system-view

-

开启全局的802.1X特性

dot1x

必选

缺省情况下,全局的802.1X特性为关闭状态

设置802.1X用户的认证方法

dot1x authentication-method { chap | eap | pap }

可选

缺省情况下,设备对802.1X用户的认证方法为CHAP认证

配置端口控制

设置端口接入控制的模式

dot1x port-control { authorized-force | auto | unauthorized-force } [ interface interface-list ]

可选

缺省情况下,802.1X在端口上进行接入控制的模式为auto

设置端口接入控制方式

dot1x port-method { macbased | portbased } [ interface interface-list ]

可选

缺省情况下,802.1X在端口上进行接入控制方式为macbased

设置端口同时接入用户数量的最大值

dot1x max-user user-number [ interface interface-list ]

可选

缺省情况下,端口同时接入用户数量最大值为256

设置设备向接入用户发送认证请求报文的最大次数

dot1x retry max-retry-value

可选

缺省情况下,max-retry-value为2,即设备最多可向接入用户发送2次认证请求报文

配置定时器参数

dot1x timer { handshake-period handshake-period-value | quiet-period quiet-period-value | server-timeout server-timeout-value | supp-timeout supp-timeout-value | tx-period tx-period-value }

可选

缺省情况下:

l      握手定时器的值为15秒

l      静默定时器的值为60秒

l      认证服务器超时定时器的值为100秒

l      客户端认证超时定时器的值为30秒

l      用户名请求超时定时器的值为30秒

开启静默定时器功能

dot1x quiet-period

可选

缺省情况下,静默定时器功能处于关闭状态

使能全局的对通过代理登录设备的用户的检测及控制

dot1x supp-proxy-check { logoff | trap } [ interface interface-list ]

可选

缺省情况下,没有设置设备对通过代理登录的用户的检测及接入控制

 

l    只有同时开启全局和端口的802.1X特性后,802.1X的配置才能在端口上生效。

l    开启端口的802.1X特性与配置端口控制(设置端口接入控制的模式、端口接入控制方式、端口同时接入用户数量的最大值)也可在二层以太网端口视图下进行,具体配置请参见表1-3表1-4。全局配置与端口配置并无优先级之分,仅是作用范围不一致,后配置的参数会覆盖已有的参数。

l    必须同时开启全局和指定端口的代理用户检测与控制,此特性的配置才能在该端口上生效。另外,该功能的实现需要H3C 802.1X客户端程序的配合。

l    一般情况下,用户无需使用dot1x timer命令改变部分定时器值,除非在一些特殊或恶劣的网络环境下,可以使用该命令调节交互进程。例如,用户网络状况比较差的情况下,可以适当地将客户端认证超时定时器值调大一些;网络处在风险位置,容易受攻击的情况下,可以适当地将静默定时器值调大一些,反之,可以将其调小一些来提高对用户认证请求的响应速度。另外,可以通过调节认证服务器超时定时器的值来适应认证服务器性能的不同情况。

 

1.2.3  配置端口的802.1X

1. 开启端口802.1X特性

表1-3 开启端口802.1X特性

配置步骤

命令

说明

进入系统视图

system-view

-

开启端口的802.1X特性

在系统视图下

dot1x interface interface-list

二者必选其一

缺省情况下,端口的802.1X特性为关闭状态

在二层以太网端口视图下

interface interface-type interface-number

dot1x

 

2. 配置端口802.1X参数

表1-4 配置端口802.1X参数

配置步骤

命令

说明

进入系统视图

system-view

-

进入二层以太网端口视图

interface interface-type interface-number

-

设置端口接入控制的模式

dot1x port-control { authorized-force | auto | unauthorized-force }

可选

缺省情况下,802.1X在端口上进行接入控制的模式为auto

设置端口接入控制方式

dot1x port-method { macbased | portbased }

可选

缺省情况下,802.1X在端口上进行接入控制方式为macbased

设置端口同时接入用户数量的最大值

dot1x max-user user-number

可选

缺省情况下,端口同时接入用户数量最大值为256

开启在线用户握手功能

dot1x handshake

可选

缺省情况下,开启在线用户握手功能

使能端口对通过代理登录设备的用户的检测及控制

dot1x supp-proxy-check { logoff | trap }

可选

缺省情况下,没有设置设备对通过代理登录的用户的检测及接入控制

开启组播触发功能

dot1x multicast-trigger

可选

缺省情况下,组播触发功能处于开启状态

配置端口的强制认证域

dot1x mandatory-domain domain-name

可选

缺省情况下,未定义强制认证域

 

l    802.1X的代理检测功能依赖于在线用户握手功能。在配置代理检测功能之前,必须先开启在线用户握手功能。关闭在线用户握手功能之前,必须先关闭配置代理检测功能。

l    端口启动802.1X与端口加入聚合组及端口加入业务环回组互斥。

l    对于802.1X用户,如果采用EAP中继认证方式,则设备会把客户端输入的内容直接封装后发给服务器,这种情况下user-name-format命令的设置无效,user-name-format的介绍请参见“安全分册”中的“AAA命令”。

l    如果802.1X客户端配置的用户名携带版本号或者用户名中存在空格,则无法通过用户名来检索和切断用户连接,但是通过其他方式(如IP地址、连接索引号等)仍然可以检索和切断用户的连接。

l    若端口启动了802.1X的组播触发功能,则该端口会定期向客户端发送组播触发报文来启动认证。

l    在用户端设备发送不携带Tag数据流的情况下,接入端口的Voice VLAN功能与802.1X功能互斥。关于Voice VLAN特性请参见“接入分册”中的“VLAN配置”。

 

1.3  配置802.1X的Guest VLAN

1.3.1  配置准备

l              开启802.1X特性。

l              配置端口上进行接入控制的方式为portbased,且保证802.1X的组播触发功能处于开启状态。

l              配置端口上进行接入控制的模式为auto

l              已经创建需要配置为Guest VLAN的VLAN。

1.3.2  配置Guest VLAN

表1-5 配置Guest VLAN

配置步骤

命令

说明

进入系统视图

system-view

-

配置指定端口的Guest VLAN

在系统视图下

dot1x guest-vlan guest-vlan-id [ interface interface-list ]

二者必选其一

缺省情况下,端口没有配置Guest VLAN

在二层以太网端口视图下

interface interface-type interface-number

dot1x guest-vlan guest-vlan-id

 

l    当端口的接入控制方式为portbased时,Guest VLAN才能生效;若端口的接入控制为macbased,Guest VLAN能够配置成功,但不生效。

l    不同的端口可以配置不同的Guest VLAN,但一个端口只能配置一个Guest VLAN。

l    Guest VLAN与EAD快速部署的Free IP配置互斥。

l    可以指定携带Tag方式的VLAN为Hybrid端口的Guest VLAN,但该Guest VLAN不会生效。同样当Hybrid端口的Guest VLAN生效后,则不能再配置该Guest VLAN为携带Tag方式的VLAN。

 

如果用户端设备发出的是携带Tag的数据流,且接入端口上使能了802.1X认证和Guest VLAN,为保证各种功能的正常使用,请为Voice VLAN、端口的缺省VLAN和802.1X的Guest VLAN分配不同的VLAN ID。

 

1.4  802.1X显示和维护

在完成上述配置后,在任意视图下执行display命令可以显示配置后802.1X的运行情况,通过查看显示信息验证配置的效果。

在用户视图下,执行reset命令可以清除802.1X的统计信息。

表1-6 802.1X配置的显示和维护

操作

命令

显示802.1X的会话连接信息、相关统计信息或配置信息

display dot1x [ sessions | statistics ] [ interface interface-list ]

清除802.1X的统计信息

reset dot1x statistics [ interface interface-list ]

 

1.5  802.1X典型配置举例

1. 组网需求

l              要求在端口Ethernet1/0/1上对接入用户进行认证,以控制其访问Internet;接入控制方式要求是基于MAC地址的接入控制。

l              所有接入用户都属于一个缺省的域:example.com,该域最多可容纳30个用户;认证时,先进行RADIUS认证,如果RADIUS服务器没有响应再转而进行本地认证;计费时,如果RADIUS计费失败则切断用户连接使其下线。

l              由两台RADIUS服务器组成的服务器组与交换机相连,其IP地址分别为10.1.1.1和10.1.1.2,使用前者作为主认证/备份计费服务器,使用后者作为备份认证/主计费服务器。

l              设置系统与认证RADIUS服务器交互报文时的共享密钥为name、与计费RADIUS服务器交互报文时的共享密钥为money。

l              设置系统在向RADIUS服务器发送报文后5秒种内如果没有得到响应就向其重新发送报文,发送报文的次数总共为5次,设置系统每15分钟就向RADIUS服务器发送一次实时计费报文。

l              设置系统从用户名中去除用户域名后再将之传给RADIUS服务器。

l              本地802.1X接入用户的用户名为localuser,密码为localpass,使用明文输入;闲置切断功能处于打开状态,正常连接时用户空闲时间超过20分钟,则切断其连接。

2. 组网图

图1-10 802.1X认证典型组网图

 

3. 配置步骤

下述各配置步骤包含了大部分AAA/RADIUS协议配置命令,对这些命令的介绍,请参见“安全分册”中的“AAA配置”。此外,802.1X客户端和RADIUS服务器上的配置略。

 

# 配置各接口的IP地址(略)。

# 添加本地接入用户,启动闲置切断功能并设置相关参数。

<Switch> system-view

[Switch] local-user localuser

[Switch-luser-localuser] service-type lan-access

[Switch-luser-localuser] password simple localpass

[Switch-luser-localuser] authorization-attribute idle-cut 20

[Switch-luser-localuser] quit

# 创建RADIUS方案radius1并进入其视图。

[Switch] radius scheme radius1

# 设置主认证/计费RADIUS服务器的IP地址。

[Switch-radius-radius1] primary authentication 10.1.1.1

[Switch-radius-radius1] primary accounting 10.1.1.2

# 设置备份认证/计费RADIUS服务器的IP地址。

[Switch-radius-radius1] secondary authentication 10.1.1.2

[Switch-radius-radius1] secondary accounting 10.1.1.1

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

[Switch-radius-radius1] key authentication name

# 设置系统与计费RADIUS服务器交互报文时的共享密钥。

[Switch-radius-radius1] key accounting money

# 设置系统向RADIUS服务器重发报文的时间间隔与次数。

[Switch-radius-radius1] timer response-timeout 5

[Switch-radius-radius1] retry 5

# 设置系统向RADIUS服务器发送实时计费报文的时间间隔。

[Switch-radius-radius1] timer realtime-accounting 15

# 指示系统从用户名中去除用户域名后再将之传给RADIUS服务器。

[Switch-radius-radius1] user-name-format without-domain

[Switch-radius-radius1] quit

# 创建域example.com并进入其视图。

[Switch] domain example.com

# 指定radius1为该域用户的RADIUS方案,并采用local作为备选方案。

[Switch-isp-example.com] authentication default radius-scheme radius1 local

[Switch-isp-example.com] authorization default radius-scheme radius1 local

[Switch-isp-example.com] accounting default radius-scheme radius1 local

# 设置该域最多可容纳30个用户。

[Switch-isp-example.com] access-limit enable 30

# 启动闲置切断功能并设置相关参数。

[Switch-isp-example.com] idle-cut enable 20

[Switch-isp-example.com] quit

# 配置域example.com为缺省用户域。

[Switch] domain default enable example.com

# 开启全局802.1X特性。

[Switch] dot1x

# 开启指定端口Ethernet1/0/1的802.1X特性。

[Switch] interface ethernet 1/0/1

[Switch-Ethernet1/0/1] dot1x

[Switch-Ethernet1/0/1] quit

# 设置接入控制方式(该命令可以不配置,因为端口的接入控制在缺省情况下就是基于MAC地址的)。

[Switch] dot1x port-method macbased interface ethernet 1/0/1

1.6  Guest VLAN、VLAN下发的典型配置举例

1. 组网需求

图1-11所示,一台主机通过802.1X认证接入网络,认证服务器为RADIUS服务器。Host接入Switch的端口Ethernet1/0/2在VLAN 1内;认证服务器在VLAN 2内;Update Server是用于客户端软件下载和升级的服务器,在VLAN 10内;Switch连接Internet网络的端口Ethernet1/0/3在VLAN 5内。

图1-11 Guest VLAN典型组网图

 

图1-12所示,在Ethernet1/0/2上开启802.1X特性并设置VLAN 10为端口的Guest VLAN,当设备从端口发送触发认证报文(EAP-Request/Identity)超过设定的最大次数而没有收到任何回应报文后,Ethernet1/0/2被加入Guest VLAN中,此时Host和Update Server都在VLAN 10内,Host可以访问Update Server并下载802.1X客户端。

图1-12 端口加入Guest VLAN

 

图1-13所示,当用户认证成功上线,认证服务器下发VLAN 5。此时Host和Ethernet1/0/3都在VLAN 5内,Host可以访问Internet。

图1-13 用户上线,VLAN下发

 

2. 配置步骤

下述各配置步骤包含了大部分AAA/RADIUS协议配置命令,对这些命令的介绍,请参见“安全分册”中的“AAA配置”。此外,802.1X客户端和RADIUS服务器上的配置略。

 

# 配置RADIUS方案2000。

<Switch> system-view

[Switch] radius scheme 2000

[Switch-radius-2000] primary authentication 10.11.1.1 1812

[Switch-radius-2000] primary accouting 10.11.1.1 1813

[Switch-radius-2000] key authentication abc

[Switch-radius-2000] key accouting abc

[Switch-radius-2000] user-name-format without-domain

[Switch-radius-2000] quit

# 配置认证域system,该域使用已配置好的RADIUS方案2000。

[Switch] domaim system

[Switch-isp-system] authentication default radius-scheme 2000

[Switch-isp-system] authorization  default radius-scheme 2000

[Switch-isp-system] accounting default radius-scheme 2000

[Switch-isp-system] quit

# 开启全局802.1X特性。

[Switch] dot1x

# 开启指定端口的802.1X特性。

[Switch] interface ethernet 1/0/2

[Switch-ethernet1/0/2] dot1x

# 配置端口上进行接入控制的方式为portbased

[Switch-ethernet1/0/2] dot1x port-method portbased

# 配置端口上进行接入控制的模式为auto

[Switch-ethernet1/0/2] dot1x port-control auto

[Switch-ethernet1/0/2] quit

# 创建VLAN 10

[Switch] vlan 10

[Switch-vlan10] quit

# 配置指定端口的Guest VLAN

[Switch] dot1x guest-vlan 10 interface ethernet 1/0/2

通过命令display current-configuration或者display interface ethernet 1/0/2可以查看Guest VLAN配置情况。在没有用户上线、用户认证失败或用户成功下线等情况下,设备发送触发认证报文(EAP-Request/Identity)超过设定的最大次数时,通过命令display vlan 10可以查看端口配置的Guest VLAN是否生效;在用户认证成功之后,通过display interface ethernet 1/0/2可以看到用户接入的端口Ethernet1/0/2加入了认证服务器下发的VLAN 5中。

1.7  下发ACL典型配置举例

1. 组网需求

图1-14所示,主机Host通过802.1X认证接入网络,认证服务器为RADIUS服务器。Internet网络中有一台FTP服务器,IP地址为10.0.0.1。

l              在认证服务器上配置授权下发ACL 3000。

l              在Switch的Ethernet1/0/1上开启802.1X认证,并配置ACL 3000。

当用户认证成功上线,认证服务器下发ACL 3000。此时ACL 3000在Ethernet1/0/1上生效,Host可以访问Internet,但不能访问FTP服务器。

2. 组网图

图1-14 下发ACL典型组网图

 

3. 配置步骤

(1)        在Switch上配置ACL下发

# 配置各接口的IP地址(略)。

# 配置RADIUS方案。

<Switch> system-view

[Switch] radius scheme 2000

[Switch-radius-2000] primary authentication 10.1.1.1 1812

[Switch-radius-2000] primary accounting 10.1.1.2 1813

[Switch-radius-2000] key authentication abc

[Switch-radius-2000] key accounting abc

[Switch-radius-2000] user-name-format without-domain

[Switch-radius-2000] quit

# 配置ISP域的AAA方案。

[Switch] domaim 2000

[Switch-isp-2000] authentication default radius-scheme 2000

[Switch-isp-2000] authorization  default radius-scheme 2000

[Switch-isp-2000] accounting default radius-scheme 2000

[Switch-isp-2000] quit

# 配置ACL 3000,拒绝目的IP地址为10.0.0.1的报文通过。

[Switch] acl number 3000

[Switch-acl-adv-3000] rule 0 deny ip destination 10.0.0.1 0

# 开启全局802.1X特性。

[Switch] dot1x

# 开启指定端口的802.1X特性。

[Switch] interface ethernet 1/0/1

[Switch-Ethernet1/0/1] dot1x

(2)        验证配置结果

当用户认证成功上线后,通过命令ping可以验证认证服务器下发的ACL 3000是否生效。

[Switch] ping 10.0.0.1

  PING 10.0.0.1: 56  data bytes, press CTRL_C to break

    Request time out

    Request time out

    Request time out

    Request time out

    Request time out

 

  --- 10.0.0.1 ping statistics ---

    5 packet(s) transmitted

    0 packet(s) received

    100.00% packet loss

 


2 EAD快速部署配置

2.1  EAD快速部署简介

2.1.1  概述

EAD(Endpoint Admission Defense,端点准入防御)作为一个网络端点接入控制方案,它通过安全客户端、安全策略服务器、接入设备以及第三方服务器的联动,加强了对用户的集中管理,提升了网络的整体防御能力。但是在实际的应用过程中EAD客户端的部署工作量很大,例如,需要网络管理员手动为每一个EAD客户端下载、升级客户端软件,这在EAD客户端数目较多的情况下给管理员带来了操作上的不便。

802.1X认证支持的EAD快速部署就可以解决以上问题,可为所有接入网络的终端用户提供自动下载并安装EAD客户端的方便途径。

2.1.2  实现机制

802.1X支持的EAD快速部署是通过以下两个功能的配合工作实现的:

1. 用户受限访问

802.1X认证成功之前(包括认证失败),终端用户只能访问一个特定的IP地址段。该IP地址段中可以配置一个或多个特定服务器,用于提供EAD客户端的下载升级或者动态地址分配等服务。

2. 用户HTTP访问URL重定向

终端用户在802.1X认证成功之前(包括认证失败),如果使用浏览器访问网络,设备会将用户访问的URL重定向到已配置的URL(例如,重定向到EAD客户端下载界面),这样只要用户打开浏览器,就必须进入管理员预设的界面。提供重定向URL的服务器必须位于用户免认证访问的特定网段内。

2.2  配置EAD快速部署

2.2.1  配置准备

l              全局使能802.1X特性

l              指定端口使能802.1X特性,接入控制模式为auto

2.2.2  配置用户可访问的免认证网段

免认证网段是指802.1X认证成功之前(包括认证失败),终端用户可以访问的IP地址段,也称为Free IP。

配置Free IP网段之后,EAD的快速部署功能将立即处于使能状态。

表2-1 配置用户可访问的免认证网段

配置步骤

命令

说明

进入系统视图

system-view

-

配置Free IP

dot1x free-ip ip-address { mask-address | mask-length }

必选

缺省情况下,未定义Free IP

 

l    目前,MAC地址认证和端口安全特性不支持EAD的快速部署功能,全局使能MAC认证或端口安全功能将会使EAD快速部署功能失效。

l    802.1X特性的Guest VLAN功能与Free IP配置互斥。

l    未通过802.1X认证的用户在没有配置Free IP的情况下,不能通过DHCP服务器动态获得IP地址,但是若配置了Free IP,并且与DHCP服务器在同一个网段时,用户便可以动态获得IP地址。

 

2.2.3  配置用户HTTP访问的重定向URL

表2-2 配置用户HTTP访问的重定向URL

配置步骤

命令

说明

进入系统视图

system-view

-

配置用户HTTP访问的重定向URL

dot1x url url-string

必选

缺省情况下,未定义重定向URL

 

重定向的URL必须处于Free IP网段内,否则无法实现重定向。

 

2.2.4  配置EAD规则的老化超时时间

EAD快速部署功能通过制订EAD规则(通常为ACL)来给予未通过认证的终端用户受限制的网络访问权限,在用户认证成功后,所占用的ACL将被释放。由于设备支持的ACL数量有限,当大量用户同时上线时,ACL资源将迅速被占用,如果没有用户认证成功,将出现ACL数量不足的情况,这样会导致一部分新接入的用户无法上线。

管理员可以通过配置EAD规则老化超时时间来控制用户对ACL资源的占用,当用户访问网络时该定时器即开始计时,如果该用户在超时时间内没有下载客户端并进行认证,则删除其所占用的ACL资源,使其它用户可以进行接入。在接入用户数量较多时,可以将超时时间适当缩短,以提高ACL的使用效率。

表2-3 配置EAD规则老化超时时间

配置步骤

命令

说明

进入系统视图

system-view

-

配置EAD规则老化超时时间

dot1x timer ead-timeout ead-timeout-value

可选

缺省情况下,EAD规则老化超时时间为30分钟

 

2.3  EAD快速部署显示和维护

在完成上述配置后,在任意视图下执行display命令可以显示配置后EAD快速部署的运行情况,通过查看显示信息验证配置的效果。

表2-4 EAD快速部署配置的显示和维护

操作

命令

显示802.1X的会话连接信息、相关统计信息或配置信息

display dot1x [ sessions | statistics ] [ interface interface-list ]

 

2.4  EAD快速部署典型配置举例

1. 组网需求

用户主机Host接入设备Switch,Switch与Free IP网段、外部网络相连。

l              认证成功之前,Host通过浏览器访问外部网络会被重定向至WEB服务器,进行802.1X客户端的下载及安装。

l              认证成功之后,Host可直接访问网络。

2. 组网图

图2-1 EAD快速部署典型配置组网图

 

3. 配置步骤

(1)        配置WEB服务器

用户在使用EAD快速部署功能之前首先必须配置好WEB服务器,即用户接入设备后用于下载802.1X客户端的重定向服务器。

(2)        配置Switch支持EAD快速部署

# 配置各接口的IP地址(略)。

# 配置Free IP。

<Switch> system-view

[Switch] dot1x free-ip 192.168.2.0 24

# 配置IE访问的重定向URL。

[Switch] dot1x url http://192.168.2.3

# 开启全局802.1X特性。

[Switch] dot1x

# 开启指定端口的802.1X特性。

[Switch] interface ethernet 1/0/1

[Switch-Ethernet1/0/1] dot1x

(3)        验证配置结果

在WindowsXP操作系统的主机上执行ping Free IP网段中的地址,验证用户在802.1X认证成功之前可以访问免认证网段。

C:\>ping 192.168.2.3

 

Pinging 192.168.2.3 with 32 bytes of data:

 

Reply from 192.168.2.3: bytes=32 time<1ms TTL=128

Reply from 192.168.2.3: bytes=32 time<1ms TTL=128

Reply from 192.168.2.3: bytes=32 time<1ms TTL=128

Reply from 192.168.2.3: bytes=32 time<1ms TTL=128

 

Ping statistics for 192.168.2.3:

    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),

Approximate round trip times in milli-seconds:

    Minimum = 0ms, Maximum = 0ms, Average = 0ms

而且,用户在802.1X认证成功之前,通过浏览器访问任何外部网站都会被重定向到WEB server页面,此页面提供客户端的下载服务。

2.5  常见配置错误举例

2.5.1  用户通过浏览器访问外部网络不能正确重定向

1. 故障现象

用户在浏览器中输入地址,但该HTTP访问不能被正确重定向到指定的URL服务器。

2. 故障分析

l              用户在浏览器地址栏内输入了字符串类型的地址。由于用户主机使用的操作系统首先会将这个字符串地址作为名字进行网络地址解析,如果解析不成功通常会以非X.X.X.X形式的网络地址发送ARP请求,这样的请求不能进行重定向;

l              用户在IE地址栏内输入了Free IP网段内的任意地址。设备会认为用户试图访问Free IP网段内的某台主机,而不对其进行重定向,即使这台主机不存在;

l              用户在配置和组网时没有将服务器加入Free IP网段,或者配置的URL为不存在的地址,或者该URL指向的服务器没有提供WEB服务。

3. 处理过程

l              地址栏内输入的地址应该为X.X.X.X(点分十进制格式)的非免费IP网段地址才有效。

l              确保设备及服务器上的配置正确且有效。

 

不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!

新华三官网
联系我们