17-802.1x及System-Guard操作
本章节下载 (545.57 KB)
IEEE802 LAN/WAN委员会为解决无线局域网网络安全问题,提出了802.1x协议。后来,802.1x协议作为局域网端口的一个普通接入控制机制应用于以太网中,主要解决以太网内认证和安全方面的问题。
802.1x协议是一种基于端口的网络接入控制(Port Based Network Access Control)协议。“基于端口的网络接入控制”是指在局域网接入设备的端口这一级对所接入的设备进行认证和控制。连接在端口上的用户设备如果能通过认证,就可以访问局域网中的资源;如果不能通过认证,则无法访问局域网中的资源。
使用802.1x的系统为典型的Client/Server体系结构,包括三个实体,如图1-1所示分别为:Supplicant System(客户端)、Authenticator System(设备端)以及Authentication Server System(认证服务器)。
图1-1 802.1x认证系统的体系结构
l 客户端是位于局域网段一端的一个实体,由该链路另一端的设备端对其进行认证。客户端一般为用户终端设备,用户通过启动客户端软件发起802.1x认证。客户端软件必须支持EAPOL(Extensible Authentication Protocol over LAN,局域网上的可扩展认证协议)协议。
l 设备端是位于局域网段一端的另一个实体,用于对所连接的客户端进行认证。设备端通常为支持802.1x协议的网络设备(如H3C系列交换机),它为客户端提供接入局域网的端口,该端口可以是物理端口,也可以是逻辑端口。
l 认证服务器是为设备端提供认证服务的实体。认证服务器用于实现用户的认证、授权和计费,通常为RADIUS服务器。该服务器可以存储用户的相关信息,例如用户的账号、密码以及用户所属的VLAN、优先级、用户的访问控制列表等。
三个实体涉及如下四个基本概念:PAE、受控端口、受控方向和端口受控方式。
PAE是认证机制中负责执行算法和协议操作的实体。
l 设备端PAE利用认证服务器对需要接入局域网的客户端执行认证,并根据认证结果相应地对受控端口的授权/非授权状态进行相应地控制。
l 客户端PAE负责响应设备端的认证请求,向设备端提交用户的认证信息。客户端PAE也可以主动向设备端发送认证请求和下线请求。
设备端为客户端提供接入局域网的端口,这个端口被划分为两个虚端口:受控端口和非受控端口。
l 非受控端口始终处于双向连通状态,主要用来传递EAPOL协议帧,保证客户端始终能够发出或接受认证。
l 受控端口在授权状态下处于连通状态,用于传递业务报文;在非授权状态下处于断开状态,禁止传递任何报文。
l 受控端口和非受控端口是同一端口的两个部分;任何到达该端口的帧,在受控端口与非受控端口上均可见。
在非授权状态下,受控端口可以被设置成单向受控:实行单向受控时,禁止从客户端接收帧,但允许向客户端发送帧。
缺省情况下,受控端口实行单向受控。
H3C系列交换机支持以下两种端口受控方式:
l 基于端口的认证:只要该物理端口下的第一个用户认证成功后,其他接入用户无须认证就可使用网络资源,当第一个用户下线后,其他用户也会被拒绝使用网络。
l 基于MAC地址认证:该物理端口下的所有接入用户都需要单独认证,当某个用户下线时,只有该用户无法使用网络,不会影响其他用户使用网络资源。
IEEE 802.1x认证系统利用EAP(Extensible Authentication Protocol,可扩展认证协议)协议,在客户端和认证服务器之间交换认证信息。
图1-2 802.1x认证系统的工作机制
l 在客户端PAE与设备端PAE之间,EAP协议报文使用EAPOL封装格式,直接承载于LAN环境中。
l 在设备端PAE与RADIUS服务器之间,EAP协议报文可以使用EAPOR(EAP over RADIUS)封装格式,承载于RADIUS协议中;也可以由设备端PAE进行终结,而在设备端PAE与RADIUS服务器之间传送PAP协议报文或CHAP协议报文。
l 当用户通过认证后,认证服务器会把用户的相关信息传递给设备端,设备端PAE根据RADIUS服务器的指示(Accept或Reject)决定受控端口的授权/非授权状态。
EAPOL是802.1x协议定义的一种报文封装格式,主要用于在客户端和设备端之间传送EAP协议报文,以允许EAP协议报文在LAN上传送。格式如图1-3所示。
图1-3 EAPOL数据包格式
PAE Ethernet Type:表示协议类型,802.1x分配的协议类型为0x888E。
Protocol Version:表示EAPOL帧的发送方所支持的协议版本号。
Type:
l EAP-Packet(值为00),认证信息帧,用于承载认证信息;
l EAPOL-Start(值为01),认证发起帧;
l EAPOL-Logoff(值为02),退出请求帧;
l EAPOL-Key(值为03),密钥信息帧;
l EAPOL-Encapsulated-ASF-Alert(值为04),用于支持ASF(Alerting Standards Forum)的Alerting消息。
Length:表示数据长度,也就是“Packet Body”字段的长度。如果为0,则表示没有后面的数据域。
Packet Body:根据不同的Type有不同的格式。
其中,EAPOL-Start,EAPOL-Logoff和EAPOL-Key仅在客户端和设备端之间存在;在设备端和认证服务器之间,EAP-Packet报文重新封装承载于RADIUS协议上,以便穿越复杂的网络到达认证服务器;EAPOL-Encapsulated-ASF-Alert封装与网管相关的信息,例如各种警告信息,由设备端终结。
当EAPOL数据包的Type域为EAP-Packet时,Packet Body为EAP数据包内容,如图1-4所示。
图1-4 EAP数据包格式
Code:指明EAP包的类型,一共有4种:Request,Response,Success,Failure。
Identifier:辅助进行Response和Request消息的匹配。
Length:EAP包的长度,包含Code、Identifier、Length和Data的全部内容。
Data:EAP数据信息,内容格式由Code决定。
Success和Failure类型的包没有Data域,相应的Length域的值为4。
Request和Response类型的Data域的格式如图1-5所示。
图1-5 Request和Response类型的Data域的格式
Type:指出EAP的认证类型。其中,值为1时,代表Identity,用来查询对方的身份;值为4时,代表MD5-Challenge,类似于PPP CHAP协议,包含质询消息。
Type Data:Type Data域的内容随不同类型的Request和Response而不同。
RADIUS为支持EAP认证增加了两个属性:EAP-Message(EAP消息)和Message-Authenticator(消息认证码)。RADIUS协议的报文格式请参见“AAA操作手册”中的RADIUS协议简介部分。
EAP-Message属性用来封装EAP数据包,如图1-6所示,类型代码为79,string域最长为253字节,如果EAP数据包长度大于253字节,可以对其进行分片,依次封装在多个EAP-Message属性中。
图1-6 EAP-Message属性封装
Message-Authenticator可以用于在使用CHAP、EAP等认证方法的过程中,避免接入请求包被窃听。在含有EAP-Message属性的数据包中,必须同时包含Message-Authenticator,否则该数据包会被认为无效而被丢弃。格式如图1-7所示。
H3C E126/E126A交换机支持EAP终结方式和EAP中继方式进行认证。
这种方式是IEEE 802.1x标准规定的,将EAP协议承载在其他高层协议中,如EAP over RADIUS,以便扩展认证协议报文穿越复杂的网络到达认证服务器。一般来说,EAP中继方式需要RADIUS服务器支持EAP属性:EAP-Message(值为79)和Message-Authenticator(值为80)。
EAP中继方式有四种认证方法:EAP-MD5、EAP-TLS(Transport Layer Security,传输层安全)、EAP-TTLS(Tunneled Transport Layer Security,隧道传输层安全)和PEAP(Protected Extensible Authentication Protocol,受保护的扩展认证协议):
l EAP-MD5:验证客户端的身份,RADIUS服务器发送MD5加密字(EAP-Request/MD5 Challenge报文)给客户端,客户端用该加密字对口令部分进行加密处理。
l EAP-TLS:客户端和RADIUS服务器端通过EAP-TLS认证方法检查彼此的安全证书,验证对方身份,保证通信目的端的正确性,防止网络数据被窃听。
l EAP-TTLS:是对EAP-TLS的一种扩展。在EAP TLS中,实现对客户端和认证服务器的双向认证。EAP-TTLS扩展了这种实现,它使用TLS建立起来的安全隧道传递信息。
l PEAP:首先创建和使用TLS安全通道来进行完整性保护,然后进行新的EAP协商,从而完成对客户端的身份验证。
以下以EAP-MD5方式为例介绍基本业务流程,如图1-8所示。
图1-8 IEEE 802.1x认证系统的EAP中继方式业务流程
认证过程如下:
l 当用户有上网需求时打开802.1x客户端,输入已经申请、登记过的用户名和口令,发起连接请求(EAPOL-Start报文)。此时,客户端程序将发出请求认证的报文给交换机,开始启动一次认证过程。
l 交换机收到请求认证的数据帧后,将发出一个请求帧(EAP-Request/Identity报文)要求用户的客户端程序发送输入的用户名。
l 客户端程序响应交换机发出的请求,将用户名信息通过数据帧(EAP-Response/Identity报文)送给交换机。交换机将客户端送上来的数据帧经过封包处理后(RADIUS Access-Request报文)送给RADIUS服务器进行处理。
l RADIUS服务器收到交换机转发的用户名信息后,将该信息与数据库中的用户名表相比对,找到该用户名对应的口令信息,用随机生成的一个加密字对它进行加密处理,同时也将此加密字通过RADIUS Access-Challenge报文传送给交换机,由交换机传给客户端程序。
l 客户端程序收到由交换机传来的加密字(EAP-Request/MD5 Challenge报文)后,用该加密字对口令部分进行加密处理(此种加密算法通常是不可逆的,生成EAP-Response/MD5 Challenge报文),并通过交换机传给RADIUS服务器。
l RADIUS服务器将加密后的口令信息(RADIUS Access-Request报文)和自己经过加密运算后的口令信息进行对比,如果相同,则认为该用户为合法用户,反馈认证通过的消息(RADIUS Access-Accept报文和EAP-Success报文)。
l 交换机将端口状态改为授权状态,允许用户通过该端口访问网络。
l 客户端也可以发送EAPoL-Logoff报文给交换机,主动终止已认证状态,交换机将端口状态从授权状态改变成未授权状态。
由于EAP中继方式对报文的内容不做改动,如果要采用PEAP、EAP-TLS、EAP-TTLS或者EAP-MD5这四种认证方法之一,需要在客户端和RADIUS服务器上选择一致的认证方法,而在交换机上,只需要通过dot1x authentication-method eap命令启动EAP中继方式即可。
这种方式将EAP报文在设备端终结并映射到RADIUS报文中,利用标准RADIUS协议完成认证和计费。
对于EAP终结方式,交换机与RADIUS服务器之间可以采用PAP或者CHAP认证方法。以下以CHAP认证方法为例介绍基本业务流程,如下图所示。
图1-9 IEEE 802.1x认证系统的EAP终结方式业务流程
EAP终结方式与EAP中继方式的认证流程相比,不同之处在于用来对用户口令信息进行加密处理的随机加密字由交换机生成,之后交换机会把用户名、随机加密字和客户端加密后的口令信息一起送给RADIUS服务器,进行相关的认证处理。
802.1x认证过程中会启动多个定时器以控制接入用户、交换机以及RADIUS服务器之间进行合理、有序的交互。802.1x的定时器主要有以下几种:
l 握手定时器(handshake-period):此定时器是在用户认证成功后启动的,交换机以此间隔为周期发送握手请求报文,以定期检测用户的在线情况。如果重试一定次数后仍然没有收到客户端的响应报文,就认为用户已经下线。用户可以使用dot1x retry命令配置重试次数。
l 静默定时器(quiet-period):对用户认证失败以后,交换机需要静默一段时间(该时间由静默定时器设置)后,用户可以再重新发起认证,在静默期间,交换机不进行该用户的802.1x认证相关处理。
l 重认证定时器(reauth-period):每隔该定时器设置的时长,交换机会定期发起802.1x重认证。
l RADIUS服务器超时定时器(server-timeout):若在该定时器设置的时长内,RADIUS服务器未成功响应,交换机将向RADIUS服务器重发认证请求报文。
l 客户端认证超时定时器(supp-timeout):当交换机向客户端发送了Request/Challenge请求报文后,交换机启动此定时器,若在该定时器设置的时长内,设备端没有收到客户端的响应,交换机将重发该报文。
l 传送超时定时器(tx-period):以下两种情况交换机启动tx-period定时器:其一是在客户端主动发起认证的情况下,当交换机向客户端发送单播Request/Identity请求报文后,交换机启动该定时器,若在该定时器设置的时长内,交换机没有收到客户端的响应,则交换机将重发认证请求报文;其二是为了对不支持主动发起认证的802.1x客户端进行认证,交换机会在启动802.1x功能的端口不停地发送组播Request/Identity报文,发送的间隔为tx-period。
l ver-period:客户端版本请求超时定时器。若在该定时器设置的时长内,客户端设备未成功发送版本应答报文,则交换机将重发版本请求报文。
E126/E126A交换机除了支持前面所述的802.1x特性外,还支持如下特性:
l 与CAMS服务器配合,实现检测客户端功能(检测使用代理登录、用户使用多网卡等);
l 客户端版本检测功能;
l Guest VLAN功能。
CAMS服务器是H3C公司提供的业务管理系统,支持与交换机等网络产品共同组网,完成终端用户的认证、授权、计费和权限管理等功能,实现网络的可管理、可运营,保证网络和用户信息的安全。
交换机的802.1x代理用户检测特性包括:
l 检测使用代理服务器登录的用户;
l 检测使用IE代理服务器登录的用户;
l 检测用户是否使用多网卡(即用户登录时,其PC上处于激活状态的网卡超过一个)。
当交换机发现以上任意一种情况时,可以采取以下控制措施:
l 只切断用户连接,不发送Trap报文;
l 只发送Trap报文,不切断用户连接。
此功能的实现需要802.1x客户端和CAMS的配合:
l 802.1x客户端需要具备检测用户是否使用多网卡、代理服务器或者IE代理服务器功能;
l CAMS上开启认证客户端禁用多网卡、禁用代理服务器或者禁用IE代理服务器功能。
802.1x客户端默认关闭防止使用多网卡、代理服务器或IE代理服务器功能,如果CAMS打开防多网卡、代理或IE代理功能,则在用户认证成功时,CAMS会下发属性通知802.1x客户端打开防多网卡、代理或IE代理功能。
l 该功能的实现需要H3C 802.1x客户端程序(iNode)的配合。
l 对于检测通过代理登录的用户功能,需要在CAMS上也启用该功能,同时需要在交换机上启用客户端版本检测功能(通过命令dot1x version-check配置)。
在交换机上启动了对802.1x客户端的版本验证功能后,交换机会对接入用户的802.1x客户端软件的版本和合法性进行验证,以防止使用有缺陷的老版本客户端或者非法客户端的用户上网。
启用客户端版本检测功能后,如果在客户端版本检测定时器设置的时长内,客户端未成功发送版本应答报文,则交换机将重发版本请求报文。
该功能的实现需要H3C 802.1x客户端程序(iNode)的配合。
Guest VLAN功能用来允许未认证用户访问某些特定资源。
在实际应用中,如果用户在没有安装802.1x客户端的情况下,需要访问某些资源;或者在用户未认证的情况下升级802.1x客户端,这些情况可以通过开启Guest VLAN功能来解决。
根据VLAN下发方式的不同,可以将802.1x的Guest VLAN划分基于端口的Guest VLAN和基于MAC的Guest VLAN。VLAN下发功能的具体介绍,请参见“AAA操作手册”中的配置部分。
(1) 基于端口的Guest VLAN(简称PGV)
若在一定的时间内,配置了PGV的端口上无客户端进行认证,则该端口将被加入Guest VLAN,所有通过该端口接入的用户将被授权访问Guest VLAN里的资源。
当端口上处于Guest VLAN中的用户发起认证且失败时:如果端口配置了Auth-Fail VLAN,则该端口会被加入Auth-Fail VLAN;如果端口未配置Auth-Fail VLAN,则该端口仍然处于Guest VLAN内。
当端口上处于Guest VLAN中的用户发起认证且成功时,端口会离开Guest VLAN,之后端口加入VLAN情况与认证服务器是否下发VLAN有关,具体如下:
l 若认证服务器下发VLAN,则端口加入下发的VLAN中。用户下线后,端口离开下发的VLAN回到初始VLAN中,该初始VLAN为端口加入Guest VLAN之前所在的VLAN。
l 若认证服务器未下发VLAN,则端口回到初始VLAN中。用户下线后,端口仍在该初始VLAN中。
(2) 基于MAC的Guest VLAN(简称MGV)
若要MGV功能生效,必须要在端口上同时开启MAC VLAN功能。在配置了MAC VLAN和MGV的端口上,设备将对未认证的用户的MAC地址和VLAN进行绑定,未认证用户被授权访问Guest VLAN里的资源。
当端口上处于Guest VLAN中的用户发起认证且失败时:如果端口配置了Auth-Fail VLAN,则认证失败的用户将被加入Auth-Fail VLAN;如果端口未配置Auth-Fail VLAN,则该用户将仍然处于Guest VLAN内。
当端口上处于Guest VLAN中的用户发起认证且成功时,设备会根据认证服务器是否下发VLAN决定将该用户加入到下发的VLAN中,或回到加入Guest VLAN之前端口所在的初始VLAN。
目前E126/E126A以太网交换机中,仅E126A支持MAC VLAN功能。因此E126A支持基于端口和基于MAC的Guest VLAN;而E126仅支持基于端口的Guest VLAN。
Auth-Fail VLAN(简称AFV)是指用户在认证失败的情况下,可以访问的某一特定VLAN。需要注意的是,这里的认证失败是认证服务器因某种原因明确拒绝用户认证通过,比如用户密码错误,而不是认证超时或网络连接等原因造成的认证失败。
与Guest VLAN类似,根据VLAN下发方式不同,可以将Auth-Fail VLAN划分为基于端口的Auth-Fail VLAN和基于MAC的Auth-Fail VLAN。
(1) 基于端口的Auth-Fail VLAN(简称PAFV)
在配置了PAFV的端口上,若有用户认证失败,则该端口会被加入到Auth-Fail VLAN,所有在该端口接入的用户将被授权访问Auth-Fail VLAN里的资源。
当端口上处于Auth-Fail VLAN中的用户再次发起认证时:如果认证失败,则该端口将会仍然处于Auth-Fail VLAN内;如果认证成功,则该端口会离开Auth-Fail VLAN,之后端口加入VLAN情况与认证服务器是否下发VLAN有关,具体如下:
l 若认证服务器下发VLAN,则端口加入下发的VLAN中。用户下线后,端口会离开下发的VLAN回到初始VLAN中,该初始VLAN为端口加入任何授权VLAN之前所在的VLAN。
l 若认证服务器未下发VLAN,则端口回到初始VLAN中。用户下线后,端口仍在该初始VLAN中。
(2) 基于MAC的Auth-Fail VLAN(简称MAFV)
若要MAFV功能生效,必须要在端口上开启MAC VLAN功能,在配置了MAC VLAN和MAFV的端口上,设备将对认证失败用户的MAC地址和VLAN进行绑定,认证失败用户被授权访问Auth-Fail VLAN里的资源。
当Auth-Fail VLAN中的用户再次发起认证时,如果认证成功,则设备会根据认证服务器是否下发VLAN决定将该用户加入到下发的VLAN中,或回到加入Auth-Fail VLAN之前端口所在的初始VLAN。
目前E126/E126A以太网交换机中,仅E126A支持Auth-Fail VLAN功能。
802.1x重认证是通过定时器或报文触发,对已经认证成功的用户进行一次重新认证。通过启用802.1x重认证功能,交换机可以定时检测用户的连接状况。当发现接入用户在一定时间内未响应重认证报文,则切断与该用户的连接。若用户希望再次连接,则必须通过客户端软件重新发起802.1x认证。
l 重认证时交换机上会进行完整的认证过程,将认证的用户名及其密码上传给认证服务器进行认证,但不同的服务器对重认证的处理策略有所不同,部分服务器会进行用户名密码的校验,部分服务器只是把重认证作为计费和检查用户连接状况的手段,不进行用户名密码的校验。
l 当认证服务器为CAMS时,PAP和CHAP认证方式下重认证时服务器不进行用户名、密码校验,EAP认证方式下重认证时进行用户名、密码校验。
图1-10 802.1x重认证功能示意图
802.1x重认证功能的开启方式有如下两种:
l RADIUS服务器触发交换机对接入用户的802.1x重认证:RADIUS服务器向交换机发送Termination-Action属性字段为1的Access-Accept报文,交换机收到此报文后会对接入的用户进行周期性的重新认证。
l 交换机上配置对接入用户的802.1x重认证:用户在交换机上启用802.1x重认证功能后,交换机则会对接入的用户进行周期性的重新认证。
在使用CAMS作为认证服务器时,由于CAMS只有对认证用户开始计费时才建立用户会话,当配置CAMS服务器对用户只认证不计费时,802.1x重认证将无法成功。因此,当要启用802.1x重认证时,不能在domain中配置accounting none。而其他服务器无此限制。
802.1x提供了一个用户身份认证的实现方案,为了实现此方案,除了配置802.1x相关命令外,还需要在交换机上配置AAA方案,选择使用RADIUS或本地认证方案,以配合802.1x完成用户身份认证。
图1-11 802.1x配置示意图
l 802.1x用户通过域名和交换机上配置的ISP域相关联。
l 配置ISP域使用的AAA方案,包括本地认证方案、RADIUS方案。
l 如果是需要本地认证,则需要在交换机上手动添加认证的用户名和密码,当用户使用和交换机中记录相同的用户名和密码,启动802.1x客户端软件进行认证时,就可以通过认证。
l 如果采用RADIUS方案,通过远端的RADIUS服务器进行认证,则需要在RADIUS服务器上配置相应的用户名和密码,然后在交换机上进行RADIUS客户端的相关设置。
l 也可以配置交换机先采用RADIUS方案,通过RADIUS服务器进行认证,如果RADIUS服务器无效,则使用本地认证。
AAA方案的具体配置细节,请参见“AAA操作手册”中的配置部分。
l 配置ISP域及其使用的AAA方案,选择使用RADIUS或者本地认证方案,以配合802.1x完成用户的身份认证。
l 配置本地认证时,本地用户的服务类型(service-type)必须配置为lan-access。
表1-1 配置802.1x基本功能
操作 |
命令 |
说明 |
|
进入系统视图 |
system-view |
- |
|
开启全局的802.1x特性 |
dot1x |
必选 缺省情况下,全局的802.1x特性为关闭状态 |
|
开启端口的802.1x特性 |
系统视图下 |
dot1x interface interface-list |
必选 缺省情况下,端口的802.1x特性均为关闭状态 |
端口视图下 |
interface interface-type interface-number |
||
dot1x |
|||
quit |
|||
设置端口接入控制的模式 |
系统视图下 |
dot1x port-control { authorized-force | unauthorized-force | auto } [ interface interface-list ] |
可选 缺省情况下,802.1x在端口上进行接入控制的模式为auto |
端口视图下 |
interface interface-type interface-number |
||
dot1x port-control { authorized-force | unauthorized-force | auto } |
|||
quit |
|||
设置端口接入控制方式 |
系统视图下 |
dot1x port-method { macbased | portbased } [ interface interface-list ] |
可选 缺省情况下,802.1x在端口上进行接入控制方式为macbased,即基于MAC地址进行认证 |
端口视图下 |
interface interface-type interface-number |
||
dot1x port-method { macbased | portbased } |
|||
quit |
|||
设置802.1x用户的认证方法 |
dot1x authentication-method { chap | pap | eap } |
可选 缺省情况下,交换机采用EAP终结方式的CHAP认证方法 |
|
开启在线用户握手功能 |
dot1x handshake enable |
可选 缺省情况下,开启在线用户握手功能 |
|
进入以太网端口视图 |
interface interface-type interface-number |
- |
|
开启握手报文的安全扩展功能 |
dot1x handshake secure |
可选 缺省情况下,关闭握手报文的安全扩展功能 |
l 必须同时开启全局和端口的802.1x特性后,802.1x的配置才能生效。
l 如果端口启动了802.1x,则不能配置该端口的最大MAC地址学习个数;反之,如果端口配置了最大MAC地址学习个数,则禁止在该端口上启动802.1x。
l 如果端口启动了802.1x,则不能配置该端口加入汇聚组。反之,如果该端口已经加入到某个汇聚组中,则禁止在该端口上启动802.1x。
l 802.1x用户在线时,如果通过dot1x port-method命令更改端口接入控制方式,则在线用户会被强制下线。
l 当采用设备本身作为认证服务器时,802.1x用户的认证方法,不可以配置为EAP方式。
l 握手报文的发送需要H3C私有客户端的支持,用以探测用户是否在线。对于非H3C客户端,由于不支持握手功能,在握手周期内交换机不会收到握手回应报文。因此需要将在线用户握手功能关闭,以防止错误地认为用户下线。
l 握手报文的安全扩展功能需要支持此功能的客户端与认证服务器配合才能正常使用,若客户端或者认证服务器不支持握手报文的安全扩展功能,则需要关闭此功能。
表1-2 配置802.1x的定时器及接入用户的最大数目
操作 |
命令 |
说明 |
|
进入系统视图 |
system-view |
- |
|
设置端口同时接入用户数量的最大值 |
系统视图下 |
dot1x max-user user-number [ interface interface-list ] |
可选 缺省情况下,所有的端口上都允许同时最多有256个接入用户 |
端口视图下 |
interface interface-type interface-number |
||
dot1x max-user user-number |
|||
quit |
|||
设置允许认证请求帧的最大发送次数 |
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 | ver-period ver-period-value } |
可选 缺省情况下,handshake-period-value为15秒,quiet-period-value为60秒server-timeout-value为100秒supp-timeout-value为30秒,tx-period-value为30秒, ver-period-value为30秒 |
|
开启静默定时器 |
dot1x quiet-period |
可选 缺省情况下,静默定时器处于关闭状态 |
l dot1x max-user命令还可以在端口视图下进行配置。在系统视图下,当没有指定任何确定的端口时,是对所有端口进行相关配置。在端口视图下使用此命令时,不能输入interface-list参数,仅对当前端口进行配置。
l 一般情况下,建议保持802.1x定时器的缺省值。
在配置802.1x的应用特性前,请首先完成802.1x的基本功能配置。802.1x的应用特性的各项配置都是可选的,具体参见表1-3。
表1-3 802.1x应用简介
配置任务 |
说明 |
详细配置 |
配置802.1x端口的强制认证域 |
可选 |
|
配置代理用户检测功能 |
可选 |
|
配置客户端版本检测功能 |
可选 |
|
配置允许DHCP触发认证 |
可选 |
|
配置设备单播触发802.1x认证功能 |
可选 |
|
配置802.1x的Guest VLAN功能 |
可选 |
|
配置802.1x的Auth-Fail VLAN |
可选 |
|
配置802.1x重认证功能 |
可选 |
|
配置802.1x重认证的超时定时器 |
可选 |
指定端口的强制认证域(mandatory domain)为802.1x接入提供了一种安全控制策略。所有从该端口接入的802.1x用户将被强制使用该认证域来进行认证、授权和计费,可以防止用户通过恶意假冒其它域账号来接入网络。
另外,对于采用证书的EAP中继方式的802.1x认证来说,接入用户的客户端证书决定了用户的域名。因此,即使所有端口上客户端的用户证书隶属于同一证书颁发机构,即输入的用户域名相同,管理员也可以通过配置强制认证域对不同端口指定不同的认证域,从而增加了管理员部署802.1x接入策略的灵活性。
目前,在一个认证系统中,802.1x客户端认证连接时输入的用户名,设备端口上是否配置强制认证域,用户用于认证的域,以及RADIUS服务器上用户名的后缀,四者密切相连,具体关系参加下表。
表1-4 认证域配置关系表
802.1x客户端认证连接的用户名 |
设备连接用户的端口是否配置强制认证域 |
用户用于认证的域 |
设备上display connection显示的用户名 |
设备配置的相关命令 |
RADIUS服务器上用户名后缀 |
X@Y |
未配置 |
Y |
X@Y |
with-domain |
Y |
without-domain |
无 |
||||
配置强制认证域“Z” |
Z |
X@Y |
with-domain |
Y |
|
without-domain |
无 |
||||
X |
未配置 |
Default domain (设备上指定的缺省域) |
X@Default domain |
with-domain |
Default domain |
without-domain |
无 |
||||
配置强制认证域“Z” |
Z |
X@Z |
with-domain |
Z |
|
without-domain |
无 |
需要注意的是:上表的配置关系适用于交换机上已配置认证域“Y”或“Z”。如果交换机的端口配置了802.1x强制认证域,但该域在交换机上不存在,则802.1x认证无条件失败。
可以下面的命令来配置端口的强制认证域。配置了端口的强制认证域后,所有从该端口接入的802.1x用户将被强制使用该认证域来进行认证、授权和计费。
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入以太网端口视图 |
interface interface-type interface-number |
- |
配置端口的强制认证域 |
dot1x mandatory-domain domain-name |
必选 缺省情况下,未定义强制认证域 |
表1-6 配置代理用户检测功能
操作 |
命令 |
说明 |
|
进入系统视图 |
system-view |
- |
|
开启全局的代理检测功能 |
dot1x supp-proxy-check { logoff | trap } |
必选 缺省情况下,全局的802.1x代理检测特性都处于关闭状态 |
|
开启端口的代理检测功能 |
系统视图下 |
dot1x supp-proxy-check { logoff | trap } [ interface interface-list ] |
必选 缺省情况下,端口的802.1x代理检测特性都处于关闭状态 |
端口视图下 |
interface interface-type interface-number |
||
dot1x supp-proxy-check { logoff | trap } |
|||
quit |
l 该功能的实现需要H3C 802.1x客户端程序(iNode)的配合。
l 802.1x的代理检测功能依赖于在线用户握手功能。在配置代理检测功能之前,必须先开启在线用户握手功能。
l 对于检测通过代理登录的用户功能,需要在CAMS上也启用该功能,同时需要在交换机上启用客户端版本检测功能(通过命令dot1x version-check配置)。
操作 |
命令 |
说明 |
|
进入系统视图 |
system-view |
- |
|
启动对802.1x客户端的版本验证功能 |
系统视图下 |
dot1x version-check [ interface interface-list ] |
必选 缺省情况下,所有端口的802.1x客户端版本检测特性都处于关闭状态 |
端口视图下 |
interface interface-type interface-number |
||
dot1x version-check |
|||
quit |
|||
设置交换机向客户端发送版本验证请求帧的最大次数 |
dot1x retry-version-max max-retry-version-value |
可选 缺省情况下,可重复向客户端发送版本请求帧的最大次数为3次 |
|
配置版本验证的超时定时器 |
dot1x timer ver-period ver-period-value |
可选 缺省情况下,版本验证的超时定时器为30秒 |
dot1x version-check命令还可以在端口视图下进行配置。在系统视图下,当没有指定任何确定的端口时,是对所有端口进行相关配置。在端口视图下使用此命令时,不能输入interface-list参数,仅对当前端口进行配置。
通过如下配置,802.1x允许设备在接入用户运行DHCP、申请动态IP地址时就触发对其的身份认证。
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
允许DHCP触发认证 |
dot1x dhcp-launch |
必选 缺省情况下,不允许DHCP触发对接入用户的身份认证 |
表1-1 配置设备单播触发802.1x认证功能
配置步骤 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入以太网端口视图 |
interface interface-type interface-number |
- |
配置设备单播触发802.1x认证功能 |
dot1x unicast-trigger |
必选 缺省情况下,端口没有开启单播触发802.1x认证的功能 |
目前仅E126A交换机支持设备单播触发802.1x认证功能。
操作 |
命令 |
说明 |
|
进入系统视图 |
system-view |
- |
|
开启Guest VLAN功能 |
系统视图下 |
dot1x guest-vlan vlan-id [ interface interface-list ] |
必选 缺省情况下,Guest VLAN功能处于关闭状态 |
端口视图下 |
interface interface-type interface-number |
||
dot1x guest-vlan vlan-id |
|||
quit |
l 开启802.1x认证特性。
l 已经创建需要配置为Auth-Fail VLAN的VLAN。
表1-2 配置802.1x认证的Auth-Fail VLAN
配置步骤 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入以太网端口视图 |
interface interface-type interface-number |
- |
配置指定端口的Auth-Fail VLAN |
dot1x auth-fail vlan authfail-vlan-id |
必选 缺省情况下,端口没有配置802.1x认证的Auth-Fail VLAN |
l 目前仅E126A交换机支持Auth-Fail VLAN功能。
l 不同的端口可以配置不同的Auth-Fail VLAN,但一个端口最多只能配置一个Auth-Fail VLAN。
l 若端口上同时配置了802.1x认证的MAFV与MAC地址认证的MGV,则相同用户的MAFV表项下发会覆盖其MGV表项,反之不成立。
l 若端口上已经下发了某用户Web认证的MAFV,则其802.1x的MAFV不能生效。
表1-10 启用802.1x用户重认证功能
操作 |
命令 |
说明 |
|
进入系统视图 |
system-view |
- |
|
启用802.1x用户重认证功能 |
系统视图下 |
dot1x re-authenticate [ interface interface-list ] |
必选 缺省情况下,所有端口的802.1x重认证功能均处于关闭状态 |
端口视图下 |
dot1x re-authenticate |
l 在启动端口802.1x重认证功能之前,必须开启全局802.1x功能和该端口的802.1x功能。
l 重认证时交换机上会进行完整的认证过程,将认证的用户名及其密码上传给认证服务器进行认证,但不同的服务器对重认证的处理策略有所不同,部分服务器会进行用户名密码的校验,部分服务器只是把重认证作为计费和检查用户连接状况的手段,不进行用户名密码的校验。
l 当认证服务器为CAMS时,PAP和CHAP认证方式下重认证时服务器不进行用户名、密码校验,EAP认证方式下重认证时进行用户名、密码校验。
交换机启用重认证功能后,通过以下两种方式可以确定重认证周期时间:
(1) 交换机以RADIUS服务器下发的Access-Accept报文中Session-timeout属性字段的取值,作为重认证周期。
(2) 交换机以dot1x timer reauth-period命令设置的值,作为接入用户的重认证周期。
需要注意的是:
在重认证过程中,无论采用上述哪种方式确定802.1x重认证周期时间,交换机只采用最后一次设定的重认证周期。例如,用户在交换机上配置了重认证的周期后,交换机又收到了Termination-Action属性字段为1的Access-Accept报文,则交换机将按照Access-Accept报文中的Session-timeout属性字段的取值作为最终的重认证周期。
下面给出在交换机上进行配置的过程。
表1-11 配置定时器的超时时长
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
配置重认证定时器的时长 |
dot1x timer reauth-period reauth-period-value |
可选 缺省情况下,重认证定时器的值为3600秒 |
在完成上述配置后,在任意视图下执行display命令可以显示配置802.1x后的运行情况,通过查看显示信息验证配置的效果。
在用户视图下,执行reset命令可以清除802.1x的统计信息。
表1-12 802.1x配置的显示和维护
操作 |
命令 |
说明 |
显示802.1x的配置信息、运行情况和统计信息 |
display dot1x [ sessions | statistics ] [ interface interface-list ] |
display命令可以在任意视图下执行 |
清除802.1x的统计信息 |
reset dot1x statistics [ interface interface-list ] |
reset命令在用户视图下执行 |
l 要求在各端口上对用户接入进行认证,以控制其访问Internet;接入控制模式要求是基于MAC地址的接入控制。
l 所有接入用户都属于一个缺省的域:example.com,该域最多可容纳30个用户;认证时,先进行RADIUS认证,如果RADIUS服务器没有响应再转而进行本地认证;计费时,如果RADIUS计费失败则切断用户连接使其下线;此外,接入时在用户名后不添加域名,正常连接时如果用户有超过20分钟流量持续小于2000Bytes的情况则切断其连接。
l 由两台RADIUS服务器组成的服务器组与交换机相连,其IP地址分别为10.11.1.1和10.11.1.2,前者作为主认证/备份计费服务器,后者作为备份认证/主计费服务器;设置系统与认证RADIUS服务器交互报文时的加密密码为“name”、与计费RADIUS服务器交互报文时的加密密码“money”,设置系统在向RADIUS服务器发送报文后5秒种内如果没有得到响应就向其重新发送报文,重复发送报文的次数总共为5次,设置系统每15分钟就向RADIUS服务器发送一次实时计费报文,指示系统从用户名中去除用户域名后再将之传给RADIUS服务器。
l 本地802.1x接入用户的用户名为localuser,密码为localpass,使用明文输入,闲置切断功能处于打开状态。
图1-12 启动802.1x和RADIUS对接入用户进行AAA操作
下述各配置步骤包含了大部分AAA/RADIUS协议配置命令,对这些命令的介绍,请参见“AAA操作手册”中的配置部分。此外,客户端和RADIUS服务器上的配置略。
# 开启全局802.1x特性。
<Switch> system-view
System View: return to User View with Ctrl+Z.
[Switch] dot1x
# 开启指定端口Ethernet 1/0/1的802.1x特性。
[Switch] dot1x interface Ethernet 1/0/1
# 设置接入控制方式(该命令可以不配置,因为端口的接入控制在缺省情况下就是基于MAC地址的)。
[Switch] dot1x port-method macbased interface Ethernet 1/0/1
# 创建RADIUS方案radius1并进入其视图。
[Switch] radius scheme radius1
# 设置主认证/计费RADIUS服务器的IP地址。
[Switch-radius-radius1] primary authentication 10.11.1.1
[Switch-radius-radius1] primary accounting 10.11.1.2
# 设置备份认证/计费RADIUS服务器的IP地址。
[Switch-radius-radius1] secondary authentication 10.11.1.2
[Switch-radius-radius1] secondary accounting 10.11.1.1
# 设置系统与认证RADIUS服务器交互报文时的加密密码。
[Switch-radius-radius1] key authentication name
# 设置系统与计费RADIUS服务器交互报文时的加密密码。
[Switch-radius-radius1] key accounting money
# 设置系统向RADIUS服务器重发报文的时间间隔与次数。
[Switch-radius-radius1] timer 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方案,若RADIUS服务器无效,则使用本地认证方案。
[Switch-isp-example.com] scheme radius-scheme radius1 local
# 设置该域最多可容纳30个用户。
[Switch-isp-example.com] access-limit enable 30
# 启动闲置切断功能并设置相关参数。
[Switch-isp-example.com] idle-cut enable 20 2000
[Switch-isp-example.com] quit
# 配置域example.com为缺省用户域。
[Switch] domain default enable example.com
# 添加本地接入用户。
[Switch] local-user localuser
[Switch-luser-localuser] service-type lan-access
[Switch-luser-localuser] password simple localpass
在图1-13所示的环境中,安装了802.1x客户端的用户Host A和Telnet用户Host B,通过Switch端口Ethernet1/0/1、Ethernet1/0/2接入网络;通过配置交换机实现对登录用户Host A和Host B(均不支持输入带后缀的用户名)分别实行RADIUS认证和本地认证。
l 安装了802.1x客户端的用户Host A属于域“aabbcc”,未安装802.1x客户端的Telnet用户Host B属于域“test”;在Switch上配置域“test”为缺省域,以太网端口Ethernet1/0/1上的802.1x端口的强制认证域为“aabbcc”。
l 一台RADIUS认证服务器担当认证、授权、计费服务器的职责,服务器IP地址为10.110.91.164。Switch与认证、授权、计费RADIUS服务器交互报文时的共享密钥均为aabbcc。
l Telenet用户本地认证使用的用户名为hello,密码为hello。
图1-13 配置802.1x端口强制认证域组网图
# 开启Switch的Telnet服务器功能。
<Switch> system-view
[Switch] telnet server enable
# 创建本地用户hello。
[Switch] local-user hello
[Switch-luser-hello] service-type telnet
[Switch-luser-hello] password simple hello
[Switch-luser-hello] quit
# 创建域“test”,并设置其为缺省域,在该域中配置用户使用本地认证。
[Switch] domain test
[Switch-isp-test] scheme local
[Switch-isp-test] quit
[Switch] domain default enable test
# 创建域aabbcc,并在该域中配置用户使用radius1方案进行认证。
[Switch] domain aabbcc
[Switch-isp-aabbcc] scheme radius-scheme radius1
[Switch-isp-aabbcc] quit
# 配置RADIUS方案radius1。
[Switch] radius scheme radius1
[Switch-radius-radius1] primary authentication 10.110.91.164 1812
[Switch-radius-radius1] primary accounting 10.110.91.164 1813
[Switch-radius-radius1] key authentication aabbcc
[Switch-radius-radius1] key accounting aabbcc
[Switch-radius-radius1] server-type extended
[Switch-radius-radius1] user-name-format with-domain
[Switch-radius-radius1] quit
# 在以太网端口Ethernet1/0/1上配置802.1x强制认证域aabbcc。
[Switch] interface ethernet 1/0/1
[Switch-Ethernet1/0/1] dot1x mandatory-domain aabbcc
[Switch-Ethernet1/0/1] quit
# 开启全局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
本章配置仅E126A以太网交换机支持。
EAD(Endpoint Admission Defense,端点准入防御)方案作为一个整合方案,提升了网络的整体防御能力。但是在实际的应用过程中EAD客户端的部署工作量很大,带来不便。
H3C E126/E126A以太网交换机通过802.1x认证支持EAD客户端的强制下发功能,实现了EAD客户端的快速部署。
E126/E126A以太网交换机利用以下两个功能实现EAD客户端的强制下发功能,解决目前EAD推广中的客户端部署难题。
802.1x认证成功之前(包括认证失败),通过ACL限制终端用户只能访问一个特定的IP地址段或是特定服务器,在特定服务器上提供EAD客户端的下载升级或者动态地址分配等服务。
终端用户在未进行802.1x认证前(包括认证失败),使用IE访问网络,交换机会将用户访问的URL重定向到设置好的URL(EAD客户端下载界面),这样用户一打开IE就必须进入管理员预设的界面。
通过以上两个功能结合使用,EAD可以在部署时要求所有接入网络的终端用户到指定的机器上下载客户端,并进行安装,解决了EAD客户端部署困难和工作量大的难题。
EAD快速部署特性只在802.1x端口接入控制的模式为auto的情况下生效。
l 设备启用802.1x。
l 802.1x在指定端口上接入控制的模式为auto。
1. 配置可访问的受限IP网段
受限IP网段是指802.1x认证成功之前(包括认证失败),终端用户可以访问的IP地址段,也称为免认证IP网段。
表2-1 配置受限IP网段
配置步骤 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
配置重定向URL |
dot1x url url-string |
必选 |
配置免认证IP网段 |
dot1x free-ip ip-address { mask-address | mask-length } |
必选 缺省情况下,系统没有配置免认证IP网段地址 |
l 在配置免认证IP网段时必须先配置重定向的URL,此URL必须以“http://”开头。URL所在网段必须处于免认证IP网段,否则不能重定向。
l 配置免认证IP网段时不能开启802.1x特性的dhcp-launch功能。
l 在没有开启EAD快速部署功能时,开启dot1x后,若认证失败,则不能访问DHCP服务器。在开启了EAD快速部署功能后,若DHCP服务器在Free IP网段内,则认证成功前可以动态获得IP地址。
l EAD快速部署功能只对接入控制的模式为auto(通过dot1x port-control命令配置)的端口才有效。
l 目前的EAD支持快速部署特性只是基于802.1x认证方式实现,其他接入方式暂不支持。
l 目前的EAD快速部署特性不支持端口安全,在使能端口安全的情况下,配置的受限IP网段功能失效。
2. 配置ACL定时器超时时间
EAD快速部署功能通过ACL来给予未通过认证的终端用户受限制的网络访问权限,在用户认证成功后,所占用的ACL将被释放。由于设备支持的ACL数量有限,当大量用户同时上线时,ACL资源将迅速被占用,如果没有用户认证成功,将出现ACL数量不足的情况,这样会导致一部分用户无法上线。
管理员可以通过配置ACL定时器超时时间来控制对ACL资源的占用,当用户访问网络时该定时器即开始计时,如果该用户在超时时间内没有下载客户端并进行认证,则删除其所占用的ACL资源,使其他用户可以进行接入。在接入用户数量较多时,可以将超时时间适当缩短,以提高ACL的使用效率。
表2-2 配置ACL定时器超时时间
配置步骤 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
配置ACL定时器超时时间 |
dot1x timer acl-timeout acl-timeout-value |
可选 缺省情况下ACL定时器超时时间值为30分钟 |
在完成上述配置后,在任意视图下执行display命令,可以显示EAD支持快速部署特性的配置情况。
表2-3 显示dot1x相关信息
操作 |
命令 |
说明 |
显示EAD快速部署特性的相关配置 |
display dot1x [ sessions | statistics ] [ interface interface-list ] |
display命令可以在任意视图下执行 |
用户直接和交换机相连,交换机和Web服务器、外部网络相连。用户在未通过认证前,IE访问外部网络会被重定向至Web服务器,下载认证客户端,升级软件等。通过认证后,PC可以访问网络。
图2-1 EAD快速部署配置举例组网图
# 用户在使用EAD快速部署功能之前首先必须配置好Web服务器,也就是用户接入设备后,能够下载客户端的重定向服务器。
# 用户的PC的默认网关配置为与其直连的交换机VLAN所对应的IP地址。
# 配置重定向URL。
<Switch> system-view
[Switch] dot1x url http://192.168.0.111
# 配置一条免认证IP网段。
[Switch] dot1x free-ip 192.168.0.111 24
# 配置ACL定时器超时时间为10分钟。
[Switch] dot1x timer acl-timeout 10
# 启动全局dot1x。
[Switch] dot1x
# 启动端口dot1x。
[Switch] dot1x interface Ethernet 1/0/1
故障描述:用户使用IE浏览器输入任意地址不能正确重定向到指定的URL服务器。
故障排除:
l 如果用户在自己PC的IE地址栏内输入了字符串类型的地址,此时会发现不能正确重定向。这和PC使用的操作系统有关,此种情况下PC首先会将这个字符串地址作为名字进行网络地址解析,如果解析不成功会访问某个特定的网站,通常这个地址不是X.X.X.X形式的,这样PC发出的ARP请求就不会收到回应,也就不能进行重定向。故IE内输入的地址应该为X.X.X.X(点分十进制格式)的非免认证IP网段地址才有效。
l 如果用户在自己PC的IE地址栏内输入了符合免认证IP配置的网段内的任意地址,也不会进行重定向操作,设备此时认为用户试图访问免认证IP网段的某台主机,即使这台主机不存在。如果需要进行重定向,则需输入非免认证IP网段的任意地址。
l 是否用户在配置和组网时没有将服务器加入免认证IP网段,或者配置的URL是个不存在的地址,或者该URL指向的服务器没有提供Web服务。
如果交换机上启动了802.1x功能,交换机会对启动了802.1x的端口进行授权认证,只允许经过授权的端口转发报文。此时如果连接下挂交换机的端口没有通过802.1x的授权和认证,所有的报文将会被过滤,使用户无法对下挂的交换机进行管理。HABP(Huawei Authentication Bypass Protocol,华为旁路认证协议)特性可以解决这个问题。
交换机上启动了HABP特性之后,HABP报文将会忽略端口上的802.1x认证,在交换机之间进行通信。其中HABP报文携带下挂交换机的MAC地址等信息,从而使管理设备可以获取下挂交换机的MAC地址,对下挂的交换机进行管理。
HABP包括HABP Server和HABP Client。一般情况下,Server会定期向Client发送HABP请求报文,收集下挂交换机的MAC地址。而Client会对请求报文进行应答,同时向下层交换机转发HABP请求报文。HABP Server一般应该在管理设备上启动,HABP Client应该在下挂的交换机上启动。
如果交换机上启动了802.1x,建议用户启动HABP特性,以便对交换机进行管理。
在管理设备上启动了HABP Server以后,管理设备就会向下挂的交换机发送HABP请求报文,收集下挂交换机的MAC地址,以方便对下挂交换机的管理。发送HABP请求报文的时间间隔也是在管理设备上进行配置的。
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
开启HABP特性 |
habp enable |
可选 缺省情况下,HABP特性处于开启状态 |
配置当前交换机为HABP Server |
habp server vlan vlan-id |
必选 缺省情况下,交换机的HABP特性工作在Client模式下,必须开启HABP Server才可以对Client进行管理 |
配置发送HABP请求报文的时间间隔 |
habp timer interval |
可选 缺省情况下,交换机发送HABP请求报文的时间间隔为20秒 |
HABP Client在下挂的交换机上启动。交换机上启动HABP特性后,交换机缺省情况下就运行在HABP Client模式下。因此本配置只要在交换机上启动HABP特性即可。
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
开启HABP特性 |
habp enable |
可选 缺省情况下,HABP特性处于开启状态。 启动了HABP特性之后,HABP特性即工作在Client模式下 |
在完成上述配置后,在任意视图下执行display命令都可以显示配置后HABP特性的运行情况。用户可以通过查看显示信息验证配置的效果。
操作 |
命令 |
说明 |
显示HABP特性的配置信息和状态 |
display habp |
display命令可以在任意视图下执行 |
显示HABP的MAC地址表的信息 |
display habp table |
|
显示HABP报文的统计信息 |
display habp traffic |
本章配置仅E126A以太网交换机支持。
在CPU防攻击的处理上,首先对攻击进行判断,判断CPU是否受到攻击。
不能简单的从队列是否发生拥塞来判断,需要通过如下方式:
l 通过单位时间内上CPU的报文个数来判断。
l 或者为了处理方便换算成每百个报文需要多长时间来处理。
在攻击发生后,可以出现某个队列的上CPU报文速度超出阈值,此时可以判断出现攻击。通过对报文的分析,进行攻击源的特征提取,再根据特征源采取不同的过滤方式,达到防攻击的目的。
通过本配置,可以完成使能防攻击特性,设置系统防攻击检测报文数量的门限,以及检测到攻击时的隔离时间。
表4-1 配置防攻击
命令 |
说明 |
|
进入系统视图 |
system-view |
- |
开启防攻击特性 |
system-guard enable |
必选 缺省情况下,关闭系统防攻击功能 |
指定开启防攻击特性的端口 |
system-guard permit interface-list |
必选 缺省情况下,没有开启防攻击特性的端口 |
设置系统防攻击检测报文数量的门限 |
system-guard detect-threshold threshold-value |
可选 缺省门限值是200个报文 |
设置当检测到攻击时的隔离时间 |
system-guard timer-interval isolate-timer |
可选 缺省情况下,隔离时间为10分钟 |
在完成上述配置后,在任意视图下执行display命令可以显示配置后防攻击特性的运行情况,通过查看显示信息验证配置的效果。
表4-2 防攻击显示和维护
操作 |
命令 |
显示防攻击记录信息 |
display system-guard attack-record |
显示防攻击状态信息 |
display system-guard state |
本章配置仅E126以太网交换机支持。
system-guard按照设定的攻击检测时间间隔定期进行检查,在检查期间,如果开启了防攻击功能的端口上CPU的报文数量超过设定的阈值,将被认为是攻击端口,交换机将对该端口进行限速。超过对攻击端口的控制时间后,会取消端口的限速,在下一个防攻击检测时间,重新检查在此期间防攻击端口上CPU的报文数量。
system-guard的配置包括:
l 使能system-guard功能
l 设置防攻击模式的相关参数
l 指定开启防攻击功能的端口
通过以下命令可以使能system-guard功能。
表5-1 使能system-guard功能
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
使能system-guard功能 |
system-guard enable |
必选 缺省情况下,system-guard处于关闭状态 |
通过以下命令可以设定防攻击模式为端口限速防攻击模式、防攻击检测时间间隔、阈值(检测时间内上CPU的报文数)、对攻击端口的控制时间。只有使能了system-guard功能后,此配置才能生效。
表5-2 设置防攻击模式的相关参数
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
设置防攻击模式 |
system-guard mode rate-limit interval-time threshold timeout |
必选 缺省情况下,interval-time的值为5s;threshold的值为64;timeout的值为60s |
通过以下命令可以指定开启防攻击端口。
表5-3 指定开启防攻击端口
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
指定开启防攻击端口 |
system-guard permit interface-list |
必选 |
l 当端口启用system-guard功能后:如果在指定时间间隔内,从该端口送往设备CPU的报文数量超过了设定的阈值,系统将认为该端口受到攻击,并将限制该端口接收报文的速率(即入限速);如果该端口的速率超过入限速的阈值,所有的业务报文(包括BPDU报文)将被随机丢弃,从而可能导致STP状态发生切换。
l E126的上行口不支持防攻击功能。
完成上述配置后,通过以下命令可以显示配置后system-guard的运行情况。通过查看显示信息验证配置的效果。
表5-4 system-guard显示与维护
操作 |
命令 |
说明 |
查看防攻击配置参数 |
display system-guard config |
display命令可以在任意视图下执行 |
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!