04-MAC地址认证配置
本章节下载 (272.10 KB)
目 录
MAC地址认证仅在SAP板工作在二层模式时支持。
MAC地址认证是一种基于端口和MAC地址对用户的网络访问权限进行控制的认证方法,它不需要用户安装任何客户端软件。设备在启动了MAC地址认证的端口上首次检测到用户的MAC地址以后,即启动对该用户的认证操作。认证过程中,不需要用户手动输入用户名或者密码。若该用户认证成功,则允许其通过端口访问网络资源,否则该用户的MAC地址就被添加为静默MAC。在静默时间内(可通过静默定时器配置),来自此MAC地址的用户报文到达时,设备直接做丢弃处理,以防止非法MAC短时间内的重复认证。
若配置的静态MAC或者当前认证通过的MAC地址与静默MAC相同,则MAC地址认证失败后的MAC静默功能将会失效。
目前设备支持两种方式的MAC地址认证,通过RADIUS(Remote Authentication Dial-In User Service,远程认证拨号用户服务)服务器进行远程认证和在接入设备上进行本地认证。有关远程RADIUS认证和本地认证的详细介绍请参见“安全配置指导”中的“AAA”。
根据设备最终用于验证用户身份的用户名格式和内容的不同,可以将MAC地址认证使用的用户名格式分为两种类型:
· MAC地址用户名格式:使用用户的MAC地址作为认证时的用户名和密码;
· 固定用户名格式:不论用户的MAC地址为何值,所有用户均使用设备上指定的一个固定用户名和密码替代用户的MAC地址作为身份信息进行认证。由于同一个端口下可以有多个用户进行认证,因此这种情况下端口上的所有MAC地址认证用户均使用同一个固定用户名进行认证,服务器端仅需要配置一个用户帐户即可满足所有认证用户的认证需求,适用于接入客户端比较可信的网络环境。
图1-1 不同用户名格式下的MAC地址认证示意图
当选用RADIUS服务器认证方式进行MAC地址认证时,设备作为RADIUS客户端,与RADIUS服务器配合完成MAC地址认证操作:
· 若采用MAC地址用户名格式,则设备将检测到的用户MAC地址作为用户名和密码发送给RADIUS服务器进行验证。
· 若采用固定用户名格式,则设备将一个已经在本地指定的MAC地址认证用户使用的固定用户名和对应的密码作为待认证用户的用户名和密码,发送给RADIUS服务器进行验证。
RADIUS服务器完成对该用户的认证后,认证通过的用户可以访问网络。
当选用本地认证方式进行MAC地址认证时,直接在设备上完成对用户的认证。需要在设备上配置本地用户名和密码:
· 若采用MAC地址用户名格式,则设备将检测到的用户MAC地址作为待认证用户的用户名和密码与配置的本地用户名和密码进行匹配。
· 若采用固定用户名,则设备将一个已经在本地指定的MAC地址认证用户使用的固定用户名和对应的密码作为待认证用户的用户名和密码与配置的本地用户名和密码进行匹配。
用户名和密码匹配成功后,用户可以访问网络。
可配置的MAC地址认证定时器包括以下几种:
· 下线检测定时器(offline-detect):用来设置用户空闲超时的时间间隔。如果在两个时间间隔之内,某在线用户没有流量通过设备,设备将切断该用户的连接,同时通知RADIUS服务器,停止对该用户的计费。
· 静默定时器(quiet):用来设置用户认证失败以后,设备停止对其提供认证服务的时间间隔。在静默期间,设备不对来自该用户的报文进行认证处理,直接丢弃。静默期后,如果设备再次收到该用户的报文,则依然可以对其进行认证处理。
· 服务器超时定时器(server-timeout):用来设置设备同RADIUS服务器的连接超时时间。在用户的认证过程中,如果到服务器超时定时器超时时设备一直没有收到RADIUS服务器的应答,则设备将在相应的端口上禁止此用户访问网络。
为了将受限的网络资源与未认证用户隔离,通常将受限的网络资源和用户划分到不同的VLAN。MAC地址认证支持认证服务器(远程或本地)授权下发VLAN功能,即当用户通过MAC地址认证后,认证服务器将指定的受限网络资源所在的VLAN作为授权VLAN下发到用户认证的端口。该端口被加入到授权VLAN中后,用户便可以访问这些受限的网络资源。
设备根据用户接入的端口链路类型,按以下三种情况将端口加入下发的授权VLAN中。
· 若用户从Access类型的端口接入,则端口离开当前VLAN并加入下发的授权VLAN中。
· 若用户从Trunk类型的端口接入,则设备允许下发的授权VLAN通过该端口,并且修改该端口的缺省VLAN为下发的授权VLAN。
· 若用户从Hybrid类型的端口接入,则设备允许授权下发的VLAN以不携带Tag的方式通过该端口,并且修改该端口的缺省VLAN为下发的授权VLAN。需要注意的是,若该端口上使能了MAC VLAN功能,则设备将根据认证服务器下发的授权VLAN动态地创建基于用户MAC的VLAN,而端口的缺省VLAN并不改变。
从认证服务器(远程或本地)下发的ACL被称为授权ACL,它为用户访问网络提供了良好的过滤条件设置功能。MAC地址认证支持认证服务器授权下发ACL功能,即当用户通过MAC地址认证后,如果认证服务器上配置了授权ACL,则设备会根据服务器下发的授权ACL对用户所在端口的数据流进行控制。为使下发的授权ACL生效,需要提前在设备上配置相应的ACL规则。而且在用户访问网络的过程中,可以通过改变服务器的授权ACL设置来改变用户的访问权限。
表1-1 MAC地址认证配置任务简介
配置任务 |
说明 |
详细配置 |
MAC地址认证基本配置 |
必选 |
|
配置MAC地址认证用户使用的认证域 |
可选 |
· 创建并配置ISP域。
· 若采用本地认证方式,需创建本地用户并设置其密码,且本地用户的服务类型应设置为lan-access。
· 若采用远程RADIUS认证方式,需要确保设备与RADIUS服务器之间的路由可达,并添加MAC地址认证用户帐号。
创建本地用户或添加远程用户帐号时,需要注意这些用户的用户名必须与设备上指定的MAC地址认证用户名格式保持一致。
只有全局和端口的MAC地址认证特性均开启后,MAC地址认证配置才能在端口上生效。
表1-2 配置全局MAC地址认证
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
启动全局的MAC地址认证特性 |
mac-authentication |
必选 缺省情况下,全局的MAC地址认证特性为关闭状态 |
配置MAC地址认证定时器 |
mac-authentication timer { offline-detect offline-detect-value | quiet quiet-value | server-timeout server-timeout-value } |
可选 缺省情况下,下线检测定时器为300秒,静默定时器为60秒,服务器超时定时器取值为100秒 |
配置MAC地址认证用户的用户名格式 |
mac-authentication user-name-format { fixed [ account name ] [ password { cipher | simple } password ] | mac-address [ { with-hyphen | without-hyphen } [ lowercase | uppercase ] ] } |
可选 缺省情况下,使用用户的源MAC地址做用户名与密码,其中字母为小写。MAC地址不带连字符“-” |
· 全局MAC地址认证与802.1X的EAD快速部署功能互斥,开启全局MAC地址认证将会使802.1X的EAD快速部署功能失效。
· 端口上同时仅使能了802.1X和MAC地址认证的情况下,首次接入的非802.1X用户将在30秒之后才开始进行MAC地址认证。
表1-3 配置端口MAC地址认证
配置步骤 |
命令 |
说明 |
|
进入系统视图 |
system-view |
- |
|
开启端口MAC地址认证特性 |
系统视图 |
mac-authentication interface interface-list |
二者必选其一 缺省情况下,端口的MAC地址认证特性为关闭状态 |
接口视图 |
interface interface-type interface-number |
||
mac-authentication |
|||
配置端口同时可容纳接入的MAC地址认证用户数量的最大值 |
mac-authentication max-user user-number |
可选 端口同时可容纳接入用户数量的最大值为1024 |
端口启动MAC地址认证与端口加入聚合组互斥。
缺省情况下,对端口上接入的用户进行MAC地址认证时,使用系统缺省的认证域。为了便于接入设备的管理员更为灵活地部署用户的接入策略,设备支持指定MAC地址认证用户使用的认证域,可以通过以下两种配置实现:
· 在系统视图下指定一个认证域,该认证域对所有使能了MAC地址认证的端口生效。
· 在接口视图下指定该端口的认证域,不同的端口可以指定不同的认证域。
如果系统视图和接口视图下都指定了认证域,则端口优先采用本端口上指定的认证域。
表1-4 指定MAC地址认证用户使用的认证域
配置步骤 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
指定MAC地址认证用户使用的认证域 |
mac-authentication domain domain-name |
二者至少选其一 缺省情况下,未指定MAC地址认证用户使用的认证域,使用系统缺省的认证域 |
interface interface-type interface-number mac-authentication domain domain-name |
端口上接入的MAC地址认证用户将按照如下先后顺序选择认证域:端口上指定的认证域-->系统视图下指定的认证域-->系统缺省的认证域。关于认证域的相关介绍请参见“安全配置指导”中的“AAA”。
在完成上述配置后,在任意视图下执行display命令可以显示配置后MAC地址认证的运行情况,通过查看显示信息验证配置的效果。
在用户视图下,执行reset命令可以清除相关统计信息。
表1-5 MAC地址认证的显示和维护
操作 |
命令 |
显示MAC地址认证的相关信息 |
display mac-authentication [ interface interface-list ] [ | { begin | exclude | include } regular-expression ] |
清除MAC地址认证的统计信息 |
reset mac-authentication statistics [ interface interface-list ] |
如图1-2所示,某用户的工作站与以太网设备的端口Gigabitethernet3/0/1相连接。
· 设备的管理者希望在端口Gigabitethernet3/0/1上对用户接入进行MAC地址认证,以控制其对Internet的访问。
· 要求设备每隔180秒就对用户是否下线进行检测;并且当用户认证失败时,需等待180秒后才能对用户再次发起认证。
· 所有用户都属于域:aabbcc.net,认证时使用本地认证的方式。
· 使用用户的MAC地址做用户名和密码,其中MAC地址带连字符、字母小写。
图1-2 启动MAC地址认证对接入用户进行本地认证
(1) 配置本地MAC地址认证
# 添加本地接入用户。用户名和密码均为接入用户的MAC地址00-e0-fc-12-34-56,服务类型为lan-access。
<Router> system-view
[Router] local-user 00-e0-fc-12-34-56
[Router-luser-00-e0-fc-12-34-56] password simple 00-e0-fc-12-34-56
[Router-luser-00-e0-fc-12-34-56] service-type lan-access
[Router-luser-00-e0-fc-12-34-56] quit
# 配置ISP域,使用本地认证方法。
[Router] domain aabbcc.net
[Router-isp-aabbcc.net] authentication lan-access local
[Router-isp-aabbcc.net] quit
# 开启全局MAC地址认证特性。
[Router] mac-authentication
# 开启端口GigabitEthernet3/0/1的MAC地址认证特性。
[Router] mac-authentication interface gigabitethernet 3/0/1
# 配置MAC地址认证用户所使用的ISP域。
[Router] mac-authentication domain aabbcc.net
# 配置MAC地址认证的定时器。
[Router] mac-authentication timer offline-detect 180
[Router] mac-authentication timer quiet 180
# 配置MAC地址认证用户名格式:使用带连字符的MAC地址作为用户名与密码,其中字母小写。
[Router] mac-authentication user-name-format mac-address with-hyphen lowercase
(2) 验证配置结果
# 显示MAC地址配置信息。
<Router> display mac-authentication
MAC address authentication is enabled.
User name format is MAC address in lowercase, like xx-xx-xx-xx-xx-xx
Fixed username:mac
Fixed password:not configured
Offline detect period is 180s
Quiet period is 180s.
Server response timeout value is 100s
The max allowed user number is 2048 per slot
Current user number amounts to 1
Current domain is aabbcc.net
Silent Mac User info:
MAC Addr From Port Port Index
GigabitEthernet3/0/1 is link-up
MAC address authentication is enabled
Authenticate success: 1, failed: 0
Max number of on-line users is 1024
Current online user number is 1
MAC Addr Authenticate state Auth Index
00e0-fc12-3456 MAC_AUTHENTICATOR_SUCCESS 52
# 用户认证成功后,可通过如下显示命令查看上线用户的连接信息。
<Router> display connection
Slot: 3
Index=52 , Username=00-15-e9-43-82-73@aabbcc.net
IP=N/A
IPv6=N/A
MAC=00e0-fc12-3456
Total 1 connection(s) matched on slot 3.
Total 1 connection(s) matched.
如图1-3所示,用户主机Host通过端口GigabitEthernet3/0/1连接到设备上,设备通过RADIUS服务器对用户进行认证、授权和计费。
· 设备的管理者希望在端口GigabitEthernet3/0/1上对用户接入进行MAC地址认证,以控制其对Internet的访问。
· 要求设备每隔180秒就对用户是否下线进行检测;并且当用户认证失败时,需等待180秒后才能对用户再次发起认证。
· 所有用户都属于域2000,认证时采用固定用户名格式,用户名为aaa,密码为123456。
图1-3 启动MAC地址认证对接入用户进行RADIUS认证
确保RADIUS服务器与设备路由可达,并成功添加了接入用户帐户:用户名为aaa,密码为123456。
(1) 配置使用RADIUS服务器进行MAC地址认证
# 配置RADIUS方案。
<Router> system-view
[Router] radius scheme 2000
[Router-radius-2000] primary authentication 10.1.1.1 1812
[Router-radius-2000] primary accounting 10.1.1.2 1813
[Router-radius-2000] key authentication abc
[Router-radius-2000] key accounting abc
[Router-radius-2000] user-name-format without-domain
[Router-radius-2000] quit
# 配置ISP域的AAA方法。
[Router] domain 2000
[Router-isp-2000] authentication default radius-scheme 2000
[Router-isp-2000] authorization default radius-scheme 2000
[Router-isp-2000] accounting default radius-scheme 2000
[Router-isp-2000] quit
# 开启全局MAC地址认证特性。
[Router] mac-authentication
# 开启端口GigabitEthernet3/0/1的MAC地址认证特性。
[Router] mac-authentication interface gigabitethernet 3/0/1
# 配置MAC地址认证用户所使用的ISP域。
[Router] mac-authentication domain 2000
# 配置MAC地址认证的定时器。
[Router] mac-authentication timer offline-detect 180
[Router] mac-authentication timer quiet 180
# 配置MAC地址认证使用固定用户名格式:用户名为aaa,密码为明文123456。
[Router] mac-authentication user-name-format fixed account aaa password simple 123456
(2) 验证配置结果
# 显示MAC地址配置信息。
<Router> display mac-authentication
MAC address authentication is enabled.
User name format is fixed account
Fixed username:aaa
Fixed password:******
Offline detect period is 180s
Quiet period is 180s.
Server response timeout value is 100s
The max allowed user number is 2048 per slot
Current user number amounts to 1
Current domain is 2000
Silent Mac User info:
MAC ADDR From Port Port Index
GigabitEthernet3/0/1 is link-up
MAC address authentication is enabled
Authenticate success: 1, failed: 0
Max number of on-line users is 1024
Current online user number is 1
MAC ADDR Authenticate state Auth Index
00e0-fc12-3456 MAC_AUTHENTICATOR_SUCCESS 52
# 用户认证成功后,可通过如下显示命令查看上线用户的连接信息。
<Router> display connection
Slot: 3
Index=52 , Username=aaa@2000
IP=N/A
IPv6=N/A
MAC=00e0-fc12-3456
Total 1 connection(s) matched on slot 3.
Total 1 connection(s) matched.
如图1-4所示,用户主机Host通过端口GigabitEthernet3/0/1连接到设备上,设备通过RADIUS服务器对用户进行认证、授权和计费,Internet网络中有一台FTP服务器,IP地址为10.0.0.1。现有如下组网需求:
· 在端口GigabitEthernet3/0/1上对用户接入进行MAC地址认证,以控制其对Internet的访问。认证时使用用户的源MAC地址做用户名和密码,其中MAC地址带连字符、字母小写。
· 当用户认证成功上线后,允许用户访问除FTP服务器之外的Internet资源。
图1-4 下发ACL典型配置组网图
· 确保RADIUS服务器与设备路由可达。
· 由于该例中使用了MAC地址认证的缺省用户名和密码,即使用用户的源MAC地址做用户名与密码,因此还要保证RADIUS服务器上正确添加了接入用户帐户:用户名为00-e0-fc-12-34-56,密码为00-e0-fc-12-34-56。
· 指定RADIUS服务器上的授权ACL为设备上配置的ACL 3000。
(1) 配置授权ACL
# 配置ACL 3000,拒绝目的IP地址为10.0.0.1的报文通过。
<Sysname> system-view
[Sysname] acl number 3000
[Sysname-acl-adv-3000] rule 0 deny ip destination 10.0.0.1 0
[Sysname-acl-adv-3000] quit
(2) 配置使用RADIUS服务器进行MAC地址认证
# 配置RADIUS方案。
[Sysname] radius scheme 2000
[Sysname-radius-2000] primary authentication 10.1.1.1 1812
[Sysname-radius-2000] primary accounting 10.1.1.2 1813
[Sysname-radius-2000] key authentication simple abc
[Sysname-radius-2000] key accounting simple abc
[Sysname-radius-2000] user-name-format without-domain
[Sysname-radius-2000] quit
# 配置ISP域的AAA方法。
[Sysname] domain 2000
[Sysname-isp-2000] authentication default radius-scheme 2000
[Sysname-isp-2000] authorization default radius-scheme 2000
[Sysname-isp-2000] accounting default radius-scheme 2000
[Sysname-isp-2000] quit
# 开启全局MAC地址认证特性。
[Sysname] mac-authentication
# 配置MAC地址认证用户所使用的ISP域。
[Sysname] mac-authentication domain 2000
# 配置MAC地址认证用户名格式:使用带连字符的MAC地址做用户名与密码,其中字母小写。
[Sysname] mac-authentication user-name-format mac-address with-hyphen lowercase
# 开启指定端口的MAC地址认证特性。
[Sysname] interface gigabitethernet 3/0/1
[Sysname-GigabitEthernet3/0/1] mac-authentication
(3) 验证配置结果
用户Host认证成功后,通过在设备上执行display connection命令可以查看到已上线用户信息。
[Sysname-GigabitEthernet3/0/1] display connection
Slot: 3
Index=52 , Username=00-e0-fc-12-34-56@2000
IP=N/A
IPv6=N/A
MAC=00e0-fc12-3456
Total 1 connection(s) matched on slot 3.
Total 1 connection(s) matched.
用户通过ping FTP服务器,可以验证认证服务器下发的ACL 3000是否生效。
C:\>ping 10.0.0.1
Pinging 10.0.0.1 with 32 bytes of data:
Request timed out.
Request timed out.
Request timed out.
Request timed out.
Ping statistics for 10.0.0.1:
Packets: Sent = 4, Received = 0, Lost = 4 (100% loss),
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!