华为数通笔记-网络准入控制

概述

1.非法用户随意接入园区内部网络,会危害园区的信息安全。防病毒软件未实现集中管理,补丁管理混乱,企业即便购买了防病毒软件,但很难保证所有的终端其病毒特征库都是最新的,导致一旦某台终端感染病毒或恶意代码,很快会在内网泛滥。

2.接入园区网络的终端种类多,且园区内用户行为难以管控

3.出于对安全问题的考虑,园区网络不能对所有终端开放访问权限,需要基于终端对应的用户身份和终端状态进行认证,不符合条件的终端不能接入网络

网络准入控制(NAC)架构

用户终端:各种终端设备,例如PC、手机、打印机、摄像头等。

网络准入设备:终端访问网络的认证控制点,准入设备对接入用户进行认证,是园区安全策略的实施者,按照网络指定的安全策略实施相应的准入控制(如允许接入网络或拒绝接入网络)。准入设备可以是:交换机、路由器、无线接入点、VPN网关或其他安全设备。

用户身份认证。

在各种常见认证方式(如802.1XMACPortal)下,网络准入设备辅助客户端软件与准入服务器进行认证。

实现用户权限控制。

准入服务器:准入服务器的功能是实现对用户的认证和授权,用于确认尝试接入网络的终端身份是否合法,还可以指定身份合法的终端所能拥有的网络访问权限。准入服务器通常有认证服务器(如RADIUS服务器) 和用户数据源服务器(存储用户的身份信息)。

用户认证技术

802.1X认证概述

简介

802.1X认证是一种基于端口的网络接入控制协议,即在接入设备的端口这一级验证用户身份并控制其访问权限。

802.1X认证使用EAPoLExtensible Authentication Protocol over LAN局域网可扩展认证协议),实现客户端、设备端和认证服务器之间认证信息的交换。

组网方式

802.1X客户端一般为用户终端设备,用户可以通过启动客户端软件发起802.1X认证。

网络接入设备通常为支持802.1X认证的网络设备,它为客户端提供接入局域网的端口,该端口可以是物理端口,也可以是逻辑端口。

认证服务器用于实现对用户进行认证、授权和计费,通常为RADIUS服务器

802.1X认证方式

根据接入设备对802.1X客户端发送的EAPoL报文处理机制的不同,可将认证方式分为EAP中继方式和EAP终结方式。

802.1X用户认证流程

EAP中继方式的认证流程:
1. 当用户需要访问外部网络时打开 802.1X 客户端程序,输入已经申请、登记过的用户名和密码,发起连接请求。此时,客户端程序将向设备端发出认证请求报文 EAPoL -Start ),开始启动一次认证过程。
2. 设备端收到认证请求报文后,将发出一个 Identity 类型的请求报文( EAP-Request/Identity )要求用户的客户端程序发送输入的用户名
3. 客户端程序响应设备端发出的请求,将用户名信息通过 Identity 类型的响应报文( EAP-Response/Identity )发送给设备端。
4. 设备端将客户端发送的响应报文中的 EAP报文封装在RADIUS 报文 RADIUS Access-Request )中发送给认证服务器进行处理。
5. RADIUS 服务器收到设备端转发的用户名信息后,将该信息与数据库中的用户名列表对比,找到该用户名对应的密码信息,用随机生成的一个 MD5 Challenge 对密码进行加密处理,同时将此 MD5 Challenge 通过 RADIUS Access-Challenge 报文发送给设备端。
6. 设备端将 RADIUS 服务器发送的 MD5 Challenge 转发给客户端。
7. 客户端收到由设备端传来的 MD5 Challenge 后,用该 Challenge 对密码部分进行加密处理,生成 EAP-Response/MD5 Challenge 报文,并发送给设备端。
8. 设备端将此 EAP-Response/MD5 Challenge 报文封装在 RADIUS 报文( RADIUS Access-Request )中发送给 RADIUS服务器。
9.RADIUS服务器将收到的已加密的密码信息和本地经过加密运算后的密码信息 进行对比,如果相同,则认为该用户为合法用户,并向设备端 发送认证通过报文(RADIUS Access-Accept)。10. 设备收到认证通过报文后向客户端发送认证成功报文( EAP-Success ),并将端口改为授权状态,允许用户通过该端口访问网络。
EAP终结方式与EAP 中继方式的认证流程相比,不同之处在于用来对用户密码信息进行加密处理的 MD5 Challenge由设备端生成,之后设备端会把用户名、MD5 Challenge和客户端加密后的密码信息一起送给RADIUS 服务器,进行相关的认证处理。而在 EAP 中继方式中,用来对用户密码进行加密处理的 MD5 Challenge 由认证服务器生成,设备端只是负责将 EAP 报文封装在 RADIUS 报文中透传认证服务器,整个认证处理都由认证服务器来完成。

认证触发方式

 客户端主动触发方式:用户主动开启客户端输入用户名和密码向接入设备发送EAP报文来触发认证。

接入设备主动触发方式:接入设备在接收到用户终端发送的DHCP/ARP报文后,主动触发用户终端自动弹出客户端界面,用户输入用户名和密码即可启动认证。

接入控制方式

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

基于MAC模式:当采用基于MAC地址方式时,该端口下的所有接入用户均需要单独认证。当某一用户下线时,不影响其他用户接入网络。

MAC地址认证概述

简介

MAC地址认证(简称MAC认证)是一种基于端口和MAC地址对用户的网络访问权限进行控制的认证方法。

以用户的MAC地址作为身份凭据到认证服务器进行认证。

缺省时,交换机收到DHCP/ARP/DHCPv6/ND报文后均能触发对用户进行MAC认证。支持通过配置,使交换机收到任意的数据帧后触发MAC认证。

不需要用户安装任何客户端软件。

适用于IP电话、打印机等哑终端接入的场景。

MAC 认证 流程(以 PAP 方式为例):
1. 接入设备首次检测到终端的 MAC 地址,进行 MAC 地址学习,触发 MAC 认证。
2. 接入设备生成一个随机值( MD5 挑战字),并对 MAC 认证用户的 [MAC 地址、密码、随机值 ] 依次排列后经过 MD5 算法进行加密,然后将用户名、加密后的密码以及随机值封装在 RADIUS 认证请求报文中发送给 RADIUS 服务器,请求 RADIUS 服务器对该终端进行 MAC 认证。
3. RADIUS 服务器使用收到 的随机值对 本地数据库中 对应 MAC 认证用户的 [MAC 地址、密码、随机值 ] 依次排列后进行加密( MD5 算法)处理, 如果与设备发来的密码相同,则向设备发送认证接受报文,表示终端 MAC 认证成功,允许该终端访问网络。
CHAP 方式的 MAC 认证与 PAP 方式的 MAC 认证相比,不同之处在于是对 MAC 认证用户的 [CHAP ID MAC 地址、随机值 ] 依次排列后进行 MD5 算法加密。

Portal认证概述 

简介

Portal 认证也称为 Web 认证。用户可以通过 Web 认证页面,输入用户帐号和密码信息,实现对终端用户身份的认证。
用户可通过两种方式实现认证页面访问:
主动认证 :用户通过浏览器主动访问 Portal 认证网站。
重定向认证 :用户输入的访问地址不是 Portal 认证网站地址,被接入设备强制访问 Portal 认证网站(通常称为重定向)。

 

客户端:一般情况下,客户端是安装 有浏览器(支持 HTTP/HTTPS )的主机。
接入设备:交换机、路由器等接入设备的统称,主要有三方面的作用。
 1. 在认证之前,将认证网段内用户的所有 HTTP/HTTPS请求都重定向到Portal服务器。
 2. 在认证过程中, Portal服务器、认证服务器交互,完成对用户身份认证、授权与计费的功 能。
 3. 在认证通过后,允许用户访问被管理员授权的网络资源。
Portal 服务器:接收客户端认证请求的服务器系统,提供门户( Portal)服务和认证界面,与接入设备交互客户端的认证信息。
认证服务器:与接入设备进行交互,完成对用户的认证、授权与计费。
Portal认证的优点:
一般情况下,客户端不需要安装额外的软件,直接在网页上认证,简单方便。
便于运营,可在网页上进行广告发布、企业宣传等业务拓展。
技术成熟,被广泛应用于运营商、连锁快餐、酒店、学校等网络。
部署位置灵活,可以在接入层或关键入口作访问控制。
用户管理灵活,可基于用户名与 VLAN/IP 地址 /MAC 地址的组合对用户进行认证。

Portal认证流程

 

需根据实际网络情况选择不同的Portal认证方式:
采用二层认证方式时,接入设备可以学习到客户端的 MAC 地址,因此接入设备可以利用 IP地址和MAC 地址来识别用户。二层认证流程简单,安全性高,但由于限制了用户只能与接入设备处于同一网段,所以组网灵活性不高。
采用三层认证方式时,接入设备不能获取到认证客户端的 MAC 地址,只能以 IP 地址作为用户的唯一标识。三层认证组网灵活,容易实现远程控制,但由于只能以 IP 地址作为用户的唯一标识,相比之下安全性更低。
Portal认证认证流程如下:
1. 在认证之前客户端与接入设备之间建立起预连接,即客户端用户在认证成功之前在接入设备上已建立用户在线表项,并且只有部分网络访问权限。对于三层认证方式,客户端与接入设备之间没有建立预连接过程,其余报文处理流程跟二层认证完全一致。
2. 客户端发起 HTTP 连接请求。
3. 接入设备收到 HTTP 连接请求报文时,如果是访问 Portal 服务器或免认证网络资源的 HTTP 报文,则接入设备允许其通过;如果是访问其它地址的 HTTP 报文,则接入设备将其 URL Uniform Resource Locator ,统一资源定位符)地址重定向到 Portal 认证页面。
4. 客户端根据获得的 URL 地址向 Portal 服务器发起 HTTP 连接请求。
5. Portal 服务器向客户端返回 Portal 认证页面。
6. 用户在 Portal 认证页面输入用户名和密码后,客户端向 Portal 服务器发起 Portal 认证请求。
7. 按照不同认证协议规定的协议交互流程进行用户名和密码等参数的传递。    
Portal 协议:描述了 Portal 服务器和接入设备之间的协议交互。
HTTP/HTTPS 协议:描述了客户端和接入设备之间的协议交互。

 以CHAP认证方式为例,基于Portal协议的Portal认证流程如下:

7. Portal 服务器收到 Portal 认证请求后,如果 Portal 服务器与接入设备之间采用 CHAP 认证,则 Portal 服务器向接入设备发起 Portal 挑战字请求报文;如果 Portal 服务器与接入设备之间采用 PAP 认证,则接入设备直接进行第 9 步。
8. 接入设备向 Portal 服务器回应 Portal 挑战字响应报文。
9. Portal 服务器将用户输入的用户名和密码封装在 Portal 认证请求报文中,并发送给接入设备。
10. 接入设备与 RADIUS 服务器之间进行用户信息的认证,内容包括:
接入设备根据获取到的用户名和密码,向 RADIUS 服务器发送 RADIUS 认证请求。
RADIUS 服务器对用户名和密码进行认证。如果认证成功,则 RADIUS 服务器向接入设备发送认证接受报文;如果认证失败,则 RADIUS 服务器返回认证拒绝报文。由于 RADIUS 协议合并了认证和授权的过程,因此认证接受报文中也包含了用户的授权信息。
接入设备根据接收到的认证结果接入 / 拒绝用户。如果允许用户接入,则接入设备向 RADIUS服务器发送计费开始请求报文。
RADIUS 服务器返回计费开始响应报文,并开始计费,将用户加入自身在线用户列表。
11. 接入设备向Portal服务器返回Portal 认证结果,并将用户加入自身在线用户列表。
12. Portal 服务器向客户端发送认证结果报文,通知客户端认证成功,并将用户加入自身在线用户列表。
13. Portal 服务器向接入设备发送认证结果确认。
注意 :若使用接入设备内置 Portal 服务器(即接入设备同时作为 Portal 认证服务器)进行 Portal 认证时,仅支持 Portal 协议。

 

 以CHAP认证方式为例,当使用基于HTTP/HTTPS协议的Portal认证时,具体流程如下:

该协议描述了客户端和接入设备之间的协议交互,可以用来传递用户名和密码等参数。当Portal服务器不支持Portal协议时,可采用HTTP/HTTPS作为认证协议。

客户端直接将用户信息通过HTTP请求的方式传递给接入设备,目前支持POSTGET两种请求方法。

POST:请求的数据放置在HTTP请求消息的消息正文中,不作为URL的一部分。设备默认支持此请求方法。

GET:请求的数据会附加在URL之后,以“?”分割URL和数据,数据在URL中对所有人都是可见的。

        7.Portal服务器通知客户端向接入设备发起Portal认证请求。

        8.客户端向接入设备发起Portal认证请求(HTTP POST/GET)。

        9.设备收到认证请求后,会根据参数名称解析请求报文来获取用户名和密码等参数,然后将获取的用户名和密码向RADIUS服务器进行认证,具体过程与基于Portal的认证流程相同。

        10.接入设备向客户端返回Portal认证结果,并将用户加入自身在线用户列表。

        •如图是采用GET方式发送HTTP请求举例:

        https://Portal.example.com/login?userName=test&password=Huawei@123,可以看到用户名和密码在URL的后面以明文方式传递,并且以“?”进行分割。

用户认证技术对比

MAC旁路认证

802.1X认证、MAC认证和Portal认证各有各的特点,可采用混合认证的方式来满足不同的应用场景与认证需求 。

MAC优先的Portal认证

 

 用户进行Portal认证成功后,如果断开网络,重新连接时需要再次输入用户名、密码,体验差。

用户进行Portal认证成功后,在一定时间内断开网络重新连接,能够直接通过MAC认证接入,无需输入用户名、密码重新进行Portal认证。

该功能需要在设备配置MAC+Portal的混合认证,同时在认证服务器上开启MAC优先的Portal认证功能并配置MAC地址有效时间。

用户授权与下线

认证用于确认尝试接入网络的用户身份是否合法,而授权则用于指定身份合法的用户所能拥有的网络访问权限,即用户能够访问哪些资源。

lRADIUS服务器授权为例,常见的授权信息有:

VLAN :为了将受限的网络资源与未认证用户隔离,通常将受限的网络资源和未认证的用户划分到不同的 VLAN 。用户认证成功后,认证服务器将指定 VLAN 授权给用户。
ACL :用户认证成功后,认证服务器将指定 ACL 授权给用户,则设备会根据该 ACL 对用户报文进行控制。
UCL UCL User Control List ,用户控制列表)组 网络成员的集合。 UCL 组里面的成员,可以是 PC 、手机等网络终端设备。借助 UCL 组,管理员可以将具有相同网络访问策略的一类用户划分为同一个组,然后为其部署一组网络访问策略,满足该类别所有用户的网络访问需求。相对于为每个用户部署网络访问策略,基于 UCL 组的网络控制方案能够极大的减少管理员的工作量。

RADIUS 服务器授权 VLAN
用户认证成功后,认证服务器将指定 VLAN 授权给用户。此时,设备会将用户所属的 VLAN 修改为授权的 VLAN ,授权的 VLAN 并不改变接口的配置。但是,授权的 VLAN 优先级高于用户配置的 VLAN ,即用户认证成功后生效的 VLAN 是授权的 VLAN ,用户配置的 VLAN 在用户下线后生效。
RADIUS 服务器授权 ACL 有两种方法:
授权静态 ACL RADIUS 服务器通过 RADIUS 标准属性 Filter-Id ACL ID 授权给用户。为使授权的 ACL 生效,需要提前在设备上配置相应的 ACL 及规则。
授权动态 ACL RADIUS 服务器通过华为 RADIUS 扩展属性 HW-Data-Filter ACL ID 及其 ACL 规则授权给用户。 ACL ID 及其 ACL 规则需要在 RADIUS 服务器上配置,设备上不需要配置。
RADIUS 服务器授权 UCL 组有两种方式:
授权 UCL 组名称: RADIUS 服务器通过 RADIUS 标准属性 Filter-Id UCL 组名称授权给指定用户。
授权 UCL ID RADIUS 服务器通过华为 RADIUS 扩展属性 HW-UCL-Group UCL ID 授权给指定用户。
无论是哪一种授权 UCL 组方式,都必须提前在设备上配置相应的 UCL 组及 UCL 组的网络访问策略。

免认证与认证事件授权

用户下线 

当用户已下线,而接入设备、RADIUS服务器和Portal服务器未感知到该用户已下线时,会产生以下问题:

1.RADIUS服务器仍会对该用户进行计费,造成误计费。

2.存在非法用户仿冒合法用户IP地址和MAC地址接入网络的风险。

3.已下线用户数量过多的情况下,还会占用设备用户规格,可能会导致其他用户无法接入网络。

因此,接入设备要能够及时感知到用户已下线,删除该用户表项,并通知RADIUS服务器停止对该用户进行计费。

用户下线方式分为客户端主动下线,接入设备控制用户下线和服务器控制用户下线。

注意:

MAC认证仅支持接入设备控制用户下线和服务器控制用户下线。

Portal认证支持认证服务器和Portal服务器控制下线。

NAC配置实现

 

 

  • 4
    点赞
  • 47
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值