802.1x认证原理

802.1x认证系统基础

IEEE 802.1X是由IEEE制定的关于用户接入网络的认证标准,全称是“基于端口的网络接入控制”。它于2001年正式颁布,最初是为有线网络设计,之后为了配合无线网络的接入进行修订改版,并于2004年完成。

802.1X协议是基于端口的网络访问控制协议,因此必须在设备端口上配置特定的802.1X身份验证功能。在端口上访问的用户设备必须经过身份验证才能控制对网络资源的访问。802.1X认证系统采用典型的网络应用系统客户端/服务器(C/S)结构,包括客户端、设备和服务器三部分,如图19-2所示。它对应于图19-1中的NAC模型结构。

客户端:LAN用户终端设备,但它必须是支持设备(如PC)的EAPOL(LAN上的可扩展身份验证协议),可以通过启动安装在客户端设备上的802.1X客户端软件来启动802.1X身份验证。
图19-1 802.1x认证系统结构
设备端:支持802.1X协议的网络设备(如交换机)对连接的客户端进行身份验证。它为客户机提供对LAN的访问端口,无论是物理端口还是逻辑端口(如ETH中继端口)。

L认证服务器:在设备端为802.1X协议提供认证服务的设备是真正认证并实现用户认证、授权和计费的设备。它通常是一个RADIUS服务器。

**

1.802.1X认证的受控/非受控端口

**

在设备端提供给客户机的访问端口分为两个逻辑端口:受控端口和非受控端口。”不受控制的端口”可以看作是EAP(可扩展身份验证协议)端口,它总是处于双向连接状态,没有身份验证控制。它主要用于在认证前传输所需的EAPOL协议帧,以保证客户端始终可以发送或接收认证消息。

受控端口可以看作普通的业务端口,需要进行身份验证控制。具有“授权”和“未授权”两种状态(相当于在端口上有一个控制开关):在授权状态下,处于双向连接状态(控制开关闭合),可以进行正常的业务报文传输;在未授权状态下,处于开放状态。e(控制开关打开),禁止任何业务报告。文本的传输。设备端通过使用身份验证服务器的结果对客户端进行身份验证(接受或拒绝)来控制受控制端口的授权/未授权状态。

2.第二步。802.1X认证触发方式

在华为S系列交换机中,802.1X认证过程可以由客户端或设备启动。在“客户端活动触发模式”下,客户端主动向设备发送EAPOL启动(EAPOL启动)消息以触发身份验证,而“设备活动触发模式”用于支持不能主动发送EAPOL启动消息的客户端,如Windows XP的802.1X客户端。

“设备主动触发模式”中有两种特定的触发模式:

1.dhcp消息触发:设备在接收到用户的dhcp请求消息后,主动触发对用户的802.1X身份验证,仅适用于客户端通过dhcp模式自动分配IP地址的情况。由于DHCP请求消息是通过广播模式传输的,所以可以接收同一网段中的设备,因此设备端不一定是充当DHCP服务器的设备。

2.未知源MAC地址消息触发:当设备接收到具有未知源MAC地址的消息时,它会主动触发对用户的802.1X身份验证。如果设备在设置的时间内没有收到来自客户机的响应,则消息将被重新传输。

3.802.1X身份验证

不管怎样,802.1X认证系统都使用EAP协议在客户端、设备和认证服务器之间交换认证信息。EAP消息在客户端和设备之间以基于以太网局域网(LAN)的EAPOL格式封装,然后在以太网数据帧中进行交互。设备和RADIUS服务器之间的EAP消息可以通过以下两种方式进行交互:

l EAP中继:当来自客户端的EAP消息到达设备时,通过radius格式的EAP直接封装到radius消息中,发送到radius服务器,radius服务器可以从封装的EAP消息中获取客户端身份验证信息,然后进行身份验证。

这种认证方法的优点是设备端的工作非常简单。它不需要从客户端处理任何EAP消息。它只需要用EAPOR封装EAP消息,而不考虑客户端的身份验证信息。同时,在设备端和RADIUS服务器之间有许多EAP认证方法,如MD5、EAP-TLS、PEAP等,但服务器端需要支持相应的认证方法。

EAP终止:来自客户端的EAP消息在设备端终止,然后从EAP消息中提取的客户端身份验证信息由设备端封装在标准的RADIUS消息(不再是EAPOR格式)中。在radius服务器之间使用pap(密码验证协议)或chap(c)。Hallenge握手认证协议(质询握手认证协议)对客户端进行认证(当然,必须在raiuds服务器上配置合法用户的用户名和密码信息)。

这种身份验证方法的优点是,现有的RADIUS服务器基本上可以支持PAP和CHAP身份验证,而不需要升级服务器,但是设备端的工作很繁重,因为在这种身份验证方法中,设备端不仅需要提取客户端的身份验证,而且还需要来自客户端的EAP消息的认证信息,也通过标准的RAIUDS协议。这些信息是封装的,不支持MD5质询以外的EAP身份验证方法。

4.802.1X身份验证支持来宾VLAN、限制VLAN和关键VLAN

为了支持802.1X认证,为不支持802.1X的客户机安装或升级802.1X客户机软件,为认证过程中认证失败或认证服务器没有响应的客户机提供一些基本的访问资源,华为S系列交换机的802.1X身份验证功能提供三种不同的功能。特殊的VLAN功能(当然,这些是可选配置)。

l访客VLAN

当来宾VLAN(来宾VLAN)功能打开时,当用户未响应802.1X身份验证请求(如未安装客户端软件)时,设备端将向来宾VLAN添加用户端口,以便这些用户可以访问来宾VLAN,获取客户端的tware,升级客户端或执行一些其他用户升级程序。等待操作。

l限制VLAN

当restrict vlan(restrict vlan)功能打开时,当用户身份验证失败(例如输入错误的用户名和密码)时,设备端将向restrict vlan添加用户端口。限制VLAN和来宾VLAN具有类似的功能,都满足了用户在通过身份验证之前对网络资源的有限访问。然而,通常限制VLAN中部署的网络资源比来宾VLAN中少,因此对未授权用户访问网络资源的限制更为严格。

L关键VLAN

当开启关键VLAN(严格VLAN)功能时,当认证服务器不响应时(如设备与认证服务器之间的网络断开或认证服务器故障),设备将向关键VLAN添加用户端口,并然后访问关键VLAN中的资源。

5.802.1X快速部署

在实际应用中,如果网络规模较大,并且有大量的客户端不能很好地支持802.1X功能,那么客户端的部署工作量可能会非常大。为此,华为S系列交换机提供802.1X认证快速部署功能。它可以引导这些用户下载和安装客户端自助,实现客户端的快速部署。

802.1X认证快速部署功能通过以下两个功能实现:

l用户限制访问

在802.1X身份验证成功之前,最终用户只能通过ACL访问特定的IP地址段(未经身份验证的IP段)或特定服务器,为特定服务器上的客户端提供下载升级或动态地址分配服务。

用户HTTP访问URL重定向功能

当用户在802.1X身份验证失败之前或之后使用浏览器访问网络时,设备将用户访问的URL重定向到配置的URL,以便这些用户从此网页下载客户端软件。

6.用户组授权功能

该设备支持基于用户组的用户授权控制(与Windows中的用户组相同)。用户认证成功后,认证服务器将用户发送到相应的用户组,以便用户在用户组中具有访问权限。每个用户组可以关联不同的ACL规则。通过将用户组与ACL规则相关联,可以控制每种类型的用户的ACL授权信息,即相同类型的用户使用相同的授权信息。

18.1.2 802.1X认证原则

如前所述,在802.1X身份验证过程中,设备和RADIUS服务器之间支持EAP中继和EAP终止。其次,以客户端主动发起认证为例,介绍了这两种认证方法的工作原理。

1.EAP中继身份验证原则

在EAP中继认证过程中,该设备作为中继代理,通过EAPOR封装和分解的过程,转发客户端与认证服务器之间的交互消息。**整个认证过程是先对用户名进行认证,然后对相应的密码进行认证,**如下(对应于图19-3中的序列号):
802.1x认证原理_第1张图片

(1)当用户访问网络时自动打开802.1x客户端程序,根据提示输入已经在RADIUS服务器中创建的用户名和密码,发起连接请求。因为端口最初的状态是未授权状态,所以此时端口除了IEEE 802.1x协议包外不能接收和发送任何包。此时,客户端程序将向设备端发出认证请求帧(EAPOL-Start),启动认证过程。

(2)设备端在收到客户端的认证请求帧后,将发出一个Identity(标识)类型的EAP请求帧(EAP-Request/Identity),要求用户的客户端程序发送上一步用户所输入的用户名。

(3)客户端程序在收到设备端的Identity请求帧后,将用户名信息通过Identity类型的EAP响应帧(EAP-Response/Identity)发送给设备端,响应设备端发出的请求。

(4)设备端将客户端发送的Identity响应帧中的EAP报文原封不动地使用EAPOR格式封装在RADIUS报文( RADIUS Access-Request)中,发送给认证服务器进行处理。

(5)RADIUS服务器收到设备端发来的RADIUS报文后从中提取用户名信息后,将该信息与数据库中的用户名列表中对比,找到该用户名对应的密码信息,并用随机生成的一个MD5 Challenge消息对密码进行加密处理,然后将此MD5 Challenge消息同样通过EAPOR格式封装以RADIUS Access-Challenge报文发送给设备端。

(6)设备端在收到来自RADIUS服务器的EAPOR格式的Access-Challenge报文后,通过解封装,将其中的MD5 Challenge消息转发给客户端。

(7)客户端在收到由设备端传来的MD5 Challenge消息后,用该Challenge消息对密码部分进行加密处理,然后生成EAP-Response/MD5 Challenge报文,并发送给设备端。

(8)设备端又将此EAP-Response/MD5 Challenge报文以EAPOR格式封装在RADIUS报文( RADIUS Access-Request)中发送给RADIUS服务器。

(9)RADIUS服务器将收到的已加密的密码信息后,与第(5)步在本地经过加密运算后的密码信息进行对比,如果相同则认为为合法用户,并向设备端发送认证通过报文(RADIUS Access-Accept)。

(10)设备收到RADIUS Access-Accept报文后,经过EAPOR解封装再以EAP-Success报文向客户端发送,并将端口改为授权状态,允许用户通过端口访问网络。

(11)用户在线期间设备端会通过向客户端定期发送握手报文,对用户的在线情况进行监测。

(12)客户端收到握手报文后向设备发送应答报文,表示用户仍然在线。缺省情况下,若设备端发送的两次握手请求报文都未得到客户端应答,设备端就会让用户下线,防止用户因为异常原因下线而设备无法感知。

(13)客户端可以发送EAPOL-Logoff帧给设备端,主动要求下线。

(14)在设备端收到客户端发来的EAPOL-Logoff帧后,把端口状态从授权状态改变成未授权状态,并向客户端发送EAP-Failure报文,确认对应客户端下线。

2.EAP端认证原则

与EAP中继模式的认证过程相比,EAP终止模式的主要区别在于步骤(4)中用于加密用户密码信息的MD5质询是由设备端(而不是由RADIUS服务器)生成的。之后,设备端将对用户名、MD5质询和客户端加密的密码信息进行加密。它们被发送到RADIUS服务器进行身份验证。具体流程如图19-4所示。
802.1x认证原理_第2张图片

3.MAC旁路身份验证

在802.1X认证过程中,设备将首先触发用户使用802.1X认证模式,但如果用户长时间未对802.1X进行认证(如图18-5所示),则用户的MAC地址将作为真实性。MAC旁路身份验证会使802.1X身份验证系统无法安装和使用802.1X客户端软件终端(如打印机)以自己的MAC地址作为用户名和密码进行身份验证。802.1x认证原理_第3张图片

你可能感兴趣的:(企业WiFi管理)