03-MAC地址认证配置
本章节下载: 03-MAC地址认证配置 (527.46 KB)
目 录
1.11.1 指定端口上MAC地址认证的Guest VLAN
1.13 配置MAC地址认证的Critical Voice VLAN
1.14 配置MAC地址认证非认证成功VLAN的用户老化功能
1.22 配置端口MAC地址认证和802.1X认证并行处理功能
1.25 配置允许触发MAC地址认证URL重定向的Web代理服务器端口
1.29.2 使用RADIUS服务器进行MAC地址认证配置举例
MAC地址认证是一种基于端口和MAC地址对用户的网络访问权限进行控制的认证方法,无需安装客户端软件。设备在启动了MAC地址认证的端口上首次检测到用户的MAC地址以后,启动对该用户的认证操作。认证过程中,不需要用户手动输入用户名或密码。若该用户认证成功,则允许其通过端口访问网络资源,否则该用户的MAC地址就被设置为静默MAC。在静默时间内,来自此MAC地址的用户报文到达时,设备直接做丢弃处理,以防止非法MAC短时间内的重复认证。
MAC地址认证用户使用的账号格式分为以下几种:
· MAC地址账号:设备使用源MAC地址作为用户认证时的用户名和密码,或者使用MAC地址作为用户名,并配置密码。以使用源MAC地址作为用户认证时的用户名和密码为例,如图1-1所示。
· 固定用户名账号:
¡ 通用固定用户名:所有MAC地址认证用户均使用设备上指定的一个固定用户名和密码替代用户的MAC地址作为身份信息进行认证,如图1-2所示。由于同一个端口下可以有多个用户进行认证,因此这种情况下端口上的所有MAC地址认证用户均使用同一个固定用户名进行认证,服务器端仅需要配置一个用户账户即可满足所有认证用户的认证需求,适用于接入客户端比较可信的网络环境。
¡ 专用固定用户名:MAC地址认证还支持对特定MAC地址范围的用户单独设置用户名和密码(例如对指定OUI的MAC地址单独设置用户名和密码),相当于对指定MAC地址范围的用户使用固定用户名和密码。服务器端需要根据设备配置的账号创建对应的账号。如图1-3所示。
图1-1 MAC地址账号的MAC地址认证示意图
图1-2 通用固定用户名账号的MAC地址认证示意图
图1-3 专用固定用户名账号的MAC地址认证示意图
目前设备支持两种方式的MAC地址认证,通过RADIUS(Remote Authentication Dial-In User Service,远程认证拨号用户服务)服务器进行远程认证和在接入设备上进行本地认证。有关远程RADIUS认证和本地认证的详细介绍请参见“安全配置指导”中的“AAA”。
当选用RADIUS服务器认证方式进行MAC地址认证时,设备作为RADIUS客户端,与RADIUS服务器配合完成MAC地址认证操作:
· 若采用MAC地址账号,如果未配置密码,则设备将检测到的用户MAC地址作为用户名和密码发送给RADIUS服务器进行验证。如果配置了密码,则设备将检测到的用户MAC地址作为用户名,配置的密码作为密码发送给RADIUS服务器进行验证。
· 若采用固定用户名账号,则设备将一个已经在本地指定的MAC地址认证用户使用的固定用户名和对应的密码作为待认证用户的用户名和密码,发送给RADIUS服务器进行验证。
RADIUS服务器完成对该用户的认证后,认证通过的用户可以访问网络。
设备与服务器之间采用PAP(Password Authentication Protocol,密码认证协议)或CHAP(Challenge Handshake Authentication Protocol,质询握手认证协议)方法进行认证。
当选用本地认证方式进行MAC地址认证时,直接在设备上完成对用户的认证。需要在设备上配置本地用户名和密码:
· 若采用MAC地址账号,如果未配置密码,则设备将检测到的用户MAC地址作为待认证用户的用户名和密码与配置的本地用户名和密码进行匹配。如果配置了密码,则设备将检测到的用户MAC地址作为用户名,配置的密码作为密码与配置的本地用户名和密码进行匹配。
· 若采用固定用户名账号,则设备将一个已经在本地指定的MAC地址认证用户使用的固定用户名和对应的密码作为待认证用户的用户名和密码与配置的本地用户名和密码进行匹配。
用户名和密码匹配成功后,用户可以访问网络。
为了将受限的网络资源与未认证用户隔离,通常将受限的网络资源和未认证的用户划分到不同的VLAN。MAC地址认证支持远程AAA服务器/接入设备下发授权VLAN,即当用户通过MAC地址认证后,远程AAA服务器/接入设备将指定的受限网络资源所在的VLAN作为授权VLAN下发到用户进行认证的端口。该端口被加入到授权VLAN中后,用户便可以访问这些受限的网络资源。
该方式下,需要在AAA服务器上指定下发给用户的授权VLAN信息,下发的授权VLAN信息可以有多种形式,包括数字型VLAN和字符型VLAN,字符型VLAN又可分为VLAN名称、VLAN组名、携带后缀的VLAN ID(后缀只能为字母u或t,用于标识是否携带Tag)。
设备收到服务器的授权VLAN信息后,首先对其进行解析,只要解析成功,即以对应的方法下发授权VLAN;如果解析不成功,则用户授权失败。
· 若认证服务器下发的授权VLAN信息为一个VLAN ID或一个VLAN名称,则仅当对应的VLAN不为动态学习到的VLAN、保留VLAN时,该VLAN才是有效的授权VLAN。当认证服务器下发VLAN名称时,对应的VLAN必须为已存在的VLAN。
· 若认证服务器下发的授权VLAN信息为一个VLAN组名,则设备首先会通过组名查找该组内配置的VLAN列表。若查找到授权VLAN列表,则在这一组VLAN中,除动态VLAN之外的所有VLAN都有资格被授权给用户。关于VLAN组的相关配置,请参见“二层技术-以太网交换配置指导”中的“VLAN”。
¡ 当端口链路类型为Hybrid,且使能了MAC VLAN功能时,若端口上已有其他用户,则将选择该组VLAN中在线用户最少的一个VLAN作为当前认证用户的授权VLAN(若在线用户最小的VLAN有多个,则选择VLAN ID最小者)。
¡ 当端口链路类型为Hybrid,但未使能MAC VLAN功能或端口链路类型为access或trunk时:
- 若端口上已有其他在线用户,则查看端口上在线用户的授权VLAN是否存在于该组中:存在,则将此VLAN授权给当前的认证用户;否则,认为当前认证用户授权失败,将被强制下线。
- 若当前用户为端口上第一个在线用户,则直接将该组VLAN中ID最小的VLAN授权给当前的认证用户。
· 若认证服务器下发的授权VLAN信息为一个包含若干VLAN ID以及若干VLAN名称的字符串,则设备首先将其解析为一组VLAN列表,然后采用与解析一个VLAN组名相同的解析逻辑选择一个授权VLAN。
· 若认证服务器下发的授权VLAN信息为一个包含若干个“VLAN ID+后缀”形式的字符串,则只有第一个不携带后缀或者携带untagged后缀的VLAN将被解析为唯一的untagged的授权VLAN,其余VLAN都被解析为tagged的授权VLAN。例如服务器下发字符串“1u 2t 3”,其中的u和t均为后缀,分别表示untagged和tagged。该字符串被解析之后,VLAN 1为untagged的授权VLAN,VLAN 2和VLAN 3为tagged的授权VLAN。该方式下发的授权VLAN仅对端口链路类型为Hybrid或Trunk的端口有效。
¡ 端口的缺省VLAN将被修改为untagged的授权VLAN。若不存在untagged的授权VLAN,则不修改端口的缺省VLAN。
¡ 端口将允许所有解析成功的授权VLAN通过。
该方式下,可以通过配置本地用户的授权属性指定下发给用户的授权VLAN信息,且只能指定一个授权VLAN。设备将此VLAN作为该本地用户的授权VLAN。关于本地用户的相关配置,请参见“安全配置指导”中的“AAA”。
设备根据用户接入的端口链路类型和授权的VLAN是否携带Tag,按如下情况将端口加入到下发的授权VLAN中。需要注意的是,仅远程AAA服务器支持授权携带Tag的VLAN。
授权VLAN未携带Tag的情况下:
· 若用户从Access类型的端口接入,则端口离开当前VLAN并加入第一个通过认证的用户的授权VLAN中。
· 若用户从Trunk类型的端口接入,则设备允许下发的授权VLAN通过该端口,并且修改该端口的缺省VLAN为第一个通过认证的用户的授权VLAN。
· 若用户从Hybrid类型的端口接入,则设备允许授权下发的授权VLAN以不携带Tag的方式通过该端口,并且修改该端口的缺省VLAN为第一个通过认证的用户的授权VLAN。需要注意的是,若该端口上使能了MAC VLAN功能,则设备将根据认证服务器/接入设备下发的授权VLAN动态地创建基于用户MAC地址的VLAN,而端口的缺省VLAN并不改变。
授权VLAN携带Tag的情况下:
· 若用户从Access类型的端口接入,则不支持下发带Tag的VLAN。
· 若用户从Trunk类型的端口接入,则设备允许授权下发的VLAN以携带Tag的方式通过该端口,但是不会修改该端口的缺省VLAN。
· 若用户从Hybrid类型的端口接入,则设备允许授权下发的VLAN以携带Tag的方式通过该端口,但是不会修改该端口的缺省VLAN。
授权VLAN并不影响端口的配置。但是,对于Access端口和Trunk端口,授权VLAN的优先级高于端口配置的VLAN,即通过认证后起作用的VLAN是授权VLAN,端口配置的VLAN在用户下线后生效。对于Hybrid端口,当授权VLAN携带Tag的情况与端口配置的VLAN情况不一致(例如授权VLAN携带Tag,而端口配置的VLAN不携带Tag)时,授权VLAN不生效,通过认证后起作用的VLAN仍为端口配置的VLAN(例如,授权VLAN为VLAN 30 untagged,而端口配置的为VLAN 30 tagged,则VLAN 30 tagged生效);当授权VLAN携带Tag的情况与端口配置的VLAN情况一致时,授权VLAN的优先级高于端口配置的VLAN。
· 对于Hybrid端口,如果认证用户的报文携带VLAN Tag,则应通过port hybrid vlan命令配置该端口在转发指定的VLAN报文时携带VLAN Tag;如果认证用户的报文不携带VLAN Tag,则应配置该端口在转发指定的VLAN报文时不携带VLAN Tag。否则,当服务器没有授权下发VLAN时,用户虽然可以通过认证但不能访问网络。
· 在授权VLAN未携带Tag的情况下,只有开启了MAC VLAN功能的端口上才允许给不同的用户MAC授权不同的VLAN。如果没有开启MAC VLAN功能,授权给所有用户的VLAN必须相同,否则仅第一个通过认证的用户可以成功上线。
· 在授权VLAN携带Tag的情况下,无论是否开启了MAC VLAN功能,设备都会给不同的用户授权不同的VLAN。
MAC地址认证的Guest VLAN功能允许用户在认证失败的情况下访问某一特定VLAN中的资源,比如获取客户端软件,升级客户端或执行其他一些用户升级程序。这个VLAN称之为Guest VLAN。
需要注意的是,这里的认证失败是认证服务器因某种原因明确拒绝用户认证通过,比如用户密码错误,而不是认证超时或网络连接等原因造成的认证失败。
如果接入用户的端口上配置了Guest VLAN,则该端口上认证失败的用户会被加入Guest VLAN,且设备允许Guest VLAN以不携带Tag的方式通过该端口,即该用户被授权访问Guest VLAN里的资源。用户被加入Guest VLAN之后,设备将以指定的时间间隔对该用户发起重新认证,若Guest VLAN中的用户再次发起认证未成功,则该用户将仍然处于Guest VLAN内;若认证成功,则会根据AAA服务器/接入设备是否下发授权VLAN决定是否将用户加入到下发的授权VLAN中,在AAA服务器/接入设备未下发授权VLAN的情况下,用户回到缺省VLAN中。若Guest VLAN中的用户再次发起认证时,认证服务器不可达,则该用户将仍然处于Guest VLAN内,并不会加入到Critical VLAN中。
MAC地址认证Critical VLAN功能允许用户在所有认证服务器都不可达的情况下访问某一特定VLAN中的资源,这个VLAN称之为Critical VLAN。在端口上配置Critical VLAN后,若该端口上有用户认证时,所有认证服务器都不可达,则端口将允许Critical VLAN通过,用户将被授权访问Critical VLAN里的资源。已经加入Critical VLAN的端口上有用户发起认证时,如果所有认证服务器不可达,则端口仍然在Critical VLAN内;如果服务器可达且认证失败,且端口配置了Guest VLAN,则该端口将会加入Guest VLAN,否则回到缺省VLAN中;如果服务器可达且认证成功,则会根据AAA服务器是否下发授权VLAN决定是否将用户加入到下发的授权VLAN中,在AAA服务器未下发授权VLAN的情况下,用户回到缺省VLAN中。
MAC地址认证的Critical Voice VLAN功能允许语音用户进行MAC地址认证时,若采用的ISP域中的所有认证服务器都不可达,则访问端口上已配置的Voice VLAN中的资源,这个VLAN也被称为MAC地址认证的Critical Voice VLAN。已经加入Critical Voice VLAN的端口上有用户发起认证时,如果所有认证服务器不可达,则端口仍然在Critical Voice VLAN内;如果服务器可达且认证失败,且端口配置了Guest VLAN,则该端口将会加入Guest VLAN,否则回到缺省VLAN中;如果服务器可达且认证成功,则会根据AAA服务器是否下发授权VLAN决定是否将用户加入到下发的授权VLAN中,在AAA服务器未下发授权VLAN的情况下,用户回到缺省VLAN中。
由远程AAA服务器/接入设备下发给用户的ACL被称为授权ACL,它为用户访问网络提供了良好的过滤条件设置功能。当用户通过MAC地址认证后,如果远程AAA服务器/接入设备上为用户指定了授权ACL,则设备会根据下发的授权ACL对用户所在端口的数据流进行控制,与授权ACL规则匹配的流量,将按照规则中指定的permit或deny动作进行处理。
MAC地址认证支持下发静态ACL和动态ACL,两种类型的ACL的区别如下:
· 静态ACL可由RADIUS服务器或设备本地授权,且授权的内容是ACL编号。因此,设备上需要创建该ACL并配置对应的ACL规则。管理员可以通过改变授权的ACL编号或设备上对应的ACL规则来改变用户的访问权限。
· 动态ACL只能由RADIUS服务器授权,且授权的内容是ACL名称和对应的ACL规则。设备收到下发的动态ACL信息后,会自动根据该授权ACL的名称和规则创建一个同名的动态ACL。如果设备上已存在相同名称的静态ACL,则动态ACL下发失败,用户上线失败。当匹配该ACL的用户都下线后,设备自动删除该ACL。服务器下发的动态ACL只能通过display mac-authentication connection或display acl命令查看,不能进行任何修改,也不能手工删除。
MAC地址认证可成功授权的ACL类型为基本ACL(ACL编号为2000~2999)、高级ACL(ACL编号为3000~3999)、二层ACL(ACL编号为4000~4999)和用户自定义ACL(ACL编号为5000~5999)。但当下发的ACL不存在、未配置ACL规则或ACL规则配置了counting、established、fragment、source-mac、cos、dest-mac、lsap或logging参数时,授权ACL不生效。有关ACL规则的具体介绍,请参见“ACL和QoS命令参考”中的“ACL”。
用户通过MAC地址认证后,设备会根据RADIUS服务器下发的重定向URL属性,将用户的HTTP或HTTPS请求重定向到指定的Web认证页面。Web认证通过后,RADIUS服务器记录用户的MAC地址信息,并通过DM报文强制MAC地址认证用户下线。此后该用户再次进行MAC地址认证,由于RADIUS服务器上已记录该用户和其MAC地址的对应信息,用户可以成功上线。
设备对HTTPS报文进行重定向的内部侦听端口号缺省为6654。如果需要修改该端口号,具体配置请参见“三层技术-IP业务配置指导”中的“HTTP重定向”。
用户通过MAC地址认证后,如果收到服务器通过COA报文授权当前用户MAC地址为黑洞MAC,设备将强制该MAC地址认证用户下线,并添加该用户为静默用户(可通过display mac-authentication查看),静默时间固定为10分钟。在静默时间内,设备不对来自该MAC地址用户的报文进行认证处理,直接丢弃。静默期后,如果设备再次收到该用户的报文,则可以对其进行认证处理。
MAC地址重认证是指设备周期性对端口上在线的MAC地址认证用户发起重认证,以检测用户连接状态的变化、确保用户的正常在线,并及时更新服务器下发的授权属性(例如ACL、VLAN等)。
认证服务器可以通过下发RADIUS属性(session-timeout、Termination-action)来指定用户会话超时时长以及会话中止的动作类型。认证服务器上如何下发以上RADIUS属性的具体配置以及是否可以下发重认证周期的情况与服务器类型有关,请参考具体的认证服务器实现。
设备作为RADIUS DAE服务器,认证服务器作为RADIUS DAE客户端时,后者可以通过COA(Change of Authorization)Messages向用户下发重认证属性,这种情况下,无论设备上是否开启了周期性重认证功能,端口都会立即对该用户发起重认证。关于RADIUS DAE服务器的详细内容,请参见“安全配置指导”中的“AAA”。
MAC地址认证用户认证通过后,端口对用户的重认证功能具体实现如下:
· 当认证服务器下发了用户会话超时时长,且指定的会话中止的动作类型为要求用户进行重认证时,则无论设备上是否开启周期性重认证功能,端口均会在用户会话超时时长到达后对该用户进行重认证;
· 当认证服务器下发了用户会话超时时长,且指定的会话中止的动作类型为要求用户下线时:
¡ 若设备上开启了周期性重认证功能,且设备上配置的重认证定时器值小于用户会话超时时长,则端口会以重认证定时器的值为周期向该端口在线MAC地址认证用户发起重认证;若设备上配置的重认证定时器值大于等于用户会话超时时长,则端口会在用户会话超时时长到达后强制该用户下线;
¡ 若设备上未开启周期性重认证功能,则端口会在用户会话超时时长到达后强制该用户下线。
· 当认证服务器未下发用户会话超时时长时,是否对用户进行重认证,由设备上配置的重认证功能决定。
· 对于已在线的MAC地址认证用户,要等当前重认证周期结束并且认证通过后才会按新配置的周期进行后续的重认证。
· MAC地址重认证过程中,重认证服务器不可达时端口上的MAC地址认证用户状态由端口上的配置决定。在网络连通状况短时间内不良的情况下,合法用户是否会因为服务器不可达而被强制下线,需要结合实际的网络状态来调整。若配置为保持用户在线,当服务器在短时间内恢复可达,则可以避免用户频繁上下线;若配置为强制下线,当服务器可达性在短时间内不可恢复,则可避免用户在线状态长时间与实际不符。
· 在用户名不改变的情况下,端口允许重认证前后服务器向该用户下发不同的VLAN。
存在哑终端(如打印机)的组网环境中,哑终端在没有业务报文触发的情况下,不会主动向网络中发送报文。当对哑终端提供接入认证的设备或接口板发生重启、接口故障等原因而造成哑终端下线后,由于哑终端不会主动触发MAC认证上线,将会导致很长一段时间内哑终端用户处于不在线(无服务)状态。为了解决这一问题,引入MAC地址认证恢复用户功能。
MAC地址认证恢复用户功能可以实现,设备或接口板重启后哑终端用户恢复在线,以及接口故障后哑终端用户保持在线。
本功能的运行过程中,涉及到如下关键角色:
· 哑终端用户:触发MAC地址认证的实体,如打印机、电表等。
· 设备:为用户提供MAC地址认证接入服务的网络设备。
· 认证服务器:为用户提供认证、授权服务的服务器。为了配合本功能,认证服务器上还需要根据一定的规则识别出哑终端用户,并对这类在线用户进行标识,以及为其设置较大的会话超时时长,避免设备故障时间过长导致哑终端下线。
· RESTful服务器:与设备交互,为其提供哑终端用户信息的服务器。
哑终端用户上线时,如上各角色的交互过程如下:
(1) 设备与认证服务器交互,对哑终端用户进行MAC地址认证处理。
(2) 哑终端用户认证通过后,认证服务器为其下发相应的授权属性,其中包含私有属性shutdown-keep-online,用于告知设备该用户为哑终端。
(3) 设备允许哑终端用户上线,并对哑终端在线用户进行标记。
当设备或接口发生故障时,对哑终端用户的处理如下:
· 若设备或接口板重启、接口故障恢复,设备会在与指定的RESTful服务器之间路由可达后,主动与其建立连接,并从该服务器上获取相关接口上的MAC地址认证用户账户信息,然后根据收到的这些信息自动为哑终端用户发起认证请求。
· 若哑终端所在接口的物理状态变为Down,则保持接口上的哑终端用户在线,不强制其下线。
在接口下配置MAC地址认证功能时需要注意:
· 仅支持在二层以太网接口上配置MAC地址认证功能。
· 当端口上配置的MAC地址认证的Guest VLAN、Critical VLAN中存在用户时,不允许切换该端口的链路类型。
若配置的静态MAC或者当前认证通过的MAC地址与静默MAC相同,则MAC地址认证失败后的MAC静默功能将会失效。
M-LAG场景下,在设备上开启RADIUS DAE服务后,设备不支持通过COA请求报文关闭/重启MAC地址认证用户的接入端口或重认证用户。关于RADIUS DAE服务的详细信息请参见“安全配置指导”中的“AAA”。
当用户认证成功后被授权重定向URL时,用户报文进入的VLAN里必须有三层接口(比如VLAN接口)存在,否则将导致HTTPS重定向失败。
MAC地址认证配置任务如下:
(1) 开启MAC地址认证
(2) 配置MAC地址认证基本功能
¡ (可选)配置MAC地址认证定时器
¡ (可选)配置MAC地址认证的重认证
(3) (可选)配置MAC地址认证授权VLAN功能
¡ 配置MAC地址认证的Critical Voice VLAN
(4) (可选)配置MAC地址认证其它功能
允许用户在相同端口的不同VLAN间迁移时无须重认证。
¡ 配置允许触发MAC地址认证URL重定向的Web代理服务器端口
· 配置MAC地址认证之前,请保证端口安全功能关闭,具体配置请参见“安全配置指导”中的“端口安全”。
· 配置MAC地址认证之前,需完成配置ISP域和认证方式,具体配置请参见“安全配置指导”中的“AAA”。
¡ 若采用本地认证方式,还需创建本地用户并设置其密码,且本地用户的服务类型应设置为lan-access。
¡ 若采用远程RADIUS认证方式,需要确保设备与RADIUS服务器之间的路由可达,并添加MAC地址认证用户账号。
只有全局和端口的MAC地址认证均开启后,MAC地址认证配置才能在端口上生效。
如果设备上ACL资源全部被占用,则进行如下操作时,对应接口上的MAC地址认证功能不能生效:
· 系统视图下使能了MAC地址认证时,接口下的MAC地址认证由未使能改为使能。
· 接口下使能了MAC地址认证时,系统视图下的MAC地址认证由未使能改为使能。
(1) 进入系统视图。
system-view
(2) 开启全局MAC地址认证。
mac-authentication
缺省情况下,全局的MAC地址认证处于关闭状态。
(3) 进入接口视图。
interface interface-type interface-number
(4) 开启端口MAC地址认证。
mac-authentication
缺省情况下,端口的MAC地址认证处于关闭状态。
当通过RADIUS服务器进行MAC地址认证时,MAC地址认证支持两种类型的认证方法:
· PAP认证方法通过用户名和密码来对用户进行验证,其特点是在网络上以明文方式传送用户名和密码,仅适用于对网络安全要求相对较低的环境。
· CHAP认证方法使用客户端与服务器端交互挑战信息的方式来验证用户身份,其特点是在网络上以明文方式传送用户名,以密文方式传输密码。与PAP相比,CHAP认证保密性较好,更为安全可靠。
设备上配置的认证方法必须和RADIUS服务器上采用的认证方法保持一致。
(1) 进入系统视图。
system-view
(2) 配置MAC地址认证采用的认证方法。
mac-authentication authentication-method { chap | pap }
缺省情况下,设备采用PAP认证方法进行MAC地址认证。
为了便于接入设备的管理员更为灵活地部署用户的接入策略,设备支持指定MAC地址认证用户使用的认证域,可以通过以下两种配置实现:
· 在系统视图下指定一个认证域,该认证域对所有开启了MAC地址认证的端口生效。
· 在接口视图下指定该端口的认证域,不同的端口可以指定不同的认证域。
端口上接入的MAC地址认证用户将按照如下顺序选择认证域:端口上指定的认证域 > 系统视图下指定的认证域 > 系统缺省的认证域。关于认证域的相关介绍请参见“安全配置指导”中的“AAA”。
(1) 进入系统视图。
system-view
(2) 指定MAC地址认证用户使用的认证域。
¡ 配置全局MAC地址认证用户使用的认证域。
mac-authentication domain domain-name
¡ 配置接口上MAC地址认证用户使用的认证域。
interface interface-type interface-number
mac-authentication domain domain-name
缺省情况下,未指定MAC地址认证用户使用的认证域,使用系统缺省的认证域。
mac-authentication mac-range-account命令的优先级高于mac-authentication user-name-format命令。
设备最多允许配置16个MAC地址范围,但不允许指定的MAC地址重叠。如果新配置命令的MAC地址范围与已有的MAC地址范围完全相同,则后配置的命令会覆盖已有的命令。
配置指定MAC地址范围的MAC地址认证用户名和密码功能仅对单播MAC地址范围有效。若配置的MAC地址范围仅包含组播地址,则配置失败;若既包含组播地址,也包含单播地址,则仅单播地址范围部分有效,组播地址范围部分无效。其中,全零MAC地址也不属于有效MAC地址,一个全零的MAC地址用户不能通过MAC地址认证。
(1) 进入系统视图。
system-view
(2) 配置全局MAC地址认证用户的账号格式。
¡ 配置MAC地址账号。
mac-authentication user-name-format mac-address [ { with-hyphen | without-hyphen } [ lowercase | uppercase ] ] [ password { cipher | simple } string ]
¡ 配置固定用户名账号。
mac-authentication user-name-format fixed [ account name ] [ password { cipher | simple } string ]
缺省情况下,使用用户的MAC地址作为用户名与密码,其中字母为小写,且不带连字符“-”。
(3) 配置指定MAC地址范围的MAC地址认证用户名和密码。
mac-authentication mac-range-account mac-address mac-address mask { mask | mask-length } account name password { cipher | simple } string
缺省情况下,未对指定MAC地址范围的MAC地址认证用户设置用户名和密码,MAC地址认证用户采用mac-authentication user-name-format命令设置的用户名和密码接入设备。
可配置的MAC地址认证定时器包括以下几种:
· 下线检测定时器(offline-detect):用来设置用户空闲超时的时间间隔。若设备在一个下线检测定时器间隔之内,没有收到某在线用户的报文,将切断该用户的连接,同时通知RADIUS服务器停止对其计费。配置offline-detect时,需要将MAC地址老化时间配成相同时间,否则会导致用户异常下线。
· 静默定时器(quiet):用来设置用户认证失败以后,设备停止对其提供认证服务的时间间隔。在静默期间,设备不对来自认证失败用户的报文进行认证处理,直接丢弃。静默期后,如果设备再次收到该用户的报文,则依然可以对其进行认证处理。
· 服务器超时定时器(server-timeout):用来设置设备同RADIUS服务器的连接超时时间。在用户的认证过程中,如果到服务器超时定时器超时时设备一直没有收到RADIUS服务器的应答,则MAC地址认证失败。
· 临时MAC地址认证用户的老化定时器(temporary-user-aging):用来设置临时MAC地址认证用户的老化时间。在配置了端口安全模式为macAddressAndUserLoginSecureExt的端口上,用户MAC地址认证成功后为其启用该定时器。如果到达设定的老化时间后端口仍没有收到该MAC地址用户的802.1X协议报文,则临时MAC地址认证用户下线,用户认证失败。关于端口安全模式的详细介绍,请参见“安全配置指导”中的“端口安全”。
建议将server-timeout的值设定为小于或等于设备发送RADIUS报文的最大尝试次数(retry)与RADIUS服务器响应超时时间(timer response-timeout)之积。如果server-timeout的值大于retry与timer response-timeout之积,则可能在server-timeout设定的服务器超时时间到达前,用户被强制下线。
关于发送RADIUS报文的最大尝试次数、RADIUS服务器响应超时时间的具体配置请参见“安全配置指导”中的“AAA”。
(1) 进入系统视图。
system-view
(2) 配置MAC地址认证定时器。
mac-authentication timer { offline-detect offline-detect-value | quiet quiet-value | server-timeout server-timeout-value | temporary-user-aging aging-time-value }
缺省情况下,下线检测定时器为300秒,静默定时器为60秒,服务器超时定时器取值为100秒,临时MAC地址认证用户老化定时器为60秒。
· 对MAC地址认证用户进行重认证时,设备将按照如下由高到低的顺序为其选择重认证时间间隔:服务器下发的重认证时间间隔、接口视图下配置的周期性重认证定时器的值、系统视图下配置的周期性重认证定时器的值、设备缺省的周期性重认证定时器的值。
· 修改设备上配置的认证域、MAC地址认证的认证方法或MAC地址认证用户的账号格式,都不会影响在线用户的重认证,只对配置之后新上线的用户生效。
· 如果设备配置了周期性重认证功能,当重认证定时器超时时,设备不会对在线用户发起重认证,而是对用户进行同步操作。
(1) 进入系统视图。
system-view
(2) 在系统视图或接口视图下配置周期性重认证定时器。
¡ 系统视图下配置周期性重认证定时器。
mac-authentication timer reauth-period reauth-period-value
缺省情况下,周期性重认证定时器的值为3600秒。
¡ 依次执行以下命令在接口视图下配置周期性重认证定时器。
interface interface-type interface-number
mac-authentication timer reauth-period reauth-period-value
quit
缺省情况下,端口上未配置MAC地址周期性重认证定时器,端口使用系统视图下的MAC地址周期性重认证定时器的取值。
(3) 进入接口视图。
interface interface-type interface-number
(4) 开启周期性重认证功能
mac-authentication re-authenticate
缺省情况下,周期性重认证功能关闭。
(5) (可选)配置重认证服务器不可达时端口上的MAC地址认证用户保持在线状态。
mac-authentication re-authenticate server-unreachable keep-online
缺省情况下,端口上的MAC地址在线用户重认证时,若认证服务器不可达,则用户会被强制下线。
· 端口上生成的MAC地址认证Guest VLAN表项会覆盖已生成的阻塞MAC表项。开启了端口安全入侵检测的端口关闭功能时,若端口因检测到非法报文被关闭,则MAC地址认证的Guest VLAN功能不生效。关于阻塞MAC表项和端口的入侵检测功能的具体介绍请参见“安全配置指导”中的“端口安全”。
· MAC地址认证Guest VLAN功能的优先级高于MAC地址认证的静默MAC功能,即认证失败的用户可访问指定的Guest VLAN中的资源,且该用户的MAC地址不会被加入静默MAC。
配置MAC地址认证的Guest VLAN之前,需要进行以下配置准备,具体配置方法可参见“二层技术-以太网交换”中的“VLAN配置”:
· 创建需要配置为Guest VLAN的VLAN。
· 配置端口类型为Hybrid,并建议将指定的Guest VLAN修改为不携带Tag的方式。
· 通过mac-vlan enable命令开启端口上的MAC VLAN功能。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 配置端口的MAC地址认证Guest VLAN。
mac-authentication guest-vlan guest-vlan-id
缺省情况下,未配置MAC地址认证的Guest VLAN。
不同的端口可以指定不同的MAC地址认证 Guest VLAN,一个端口最多只能指定一个MAC地址认证Guest VLAN。
设备缺省开启Guest VLAN中用户的重新认证功能,并按照重新认证时间间隔对Guest VLAN中的用户定期进行重新认证。如果关闭Guest VLAN中用户的重新认证功能,则加入到Guest VLAN中的用户不会重新发起认证,在开启了非认证成功VLAN的用户老化功能(通过命令mac-authentication unauthenticated-user aging enable)时,用户可以在老化后退出Guest VLAN。
当Guest VLAN中的用户认证失败时,设备会输出相应的日志信息。当认证失败用户较多时,会导致日志信息过多。此时如需减少日志信息数量,可关闭Guest VLAN中用户的重新认证功能,并根据业务需求调整Guest VLAN用户的老化时间(通过mac-authentication timer user-aging guest-vlan aging-time-value命令)。
当端口上同时进行认证的用户数大于300时,建议将重新认证时间间隔设置为30秒以上。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 开启Guest VLAN中用户的重新认证功能。
mac-authentication guest-vlan re-authenticate
缺省情况下,Guest VLAN中用户的重新认证功能处于开启状态。
(4) 配置设备对MAC地址认证Guest VLAN中的用户进行重新认证的时间间隔。
mac-authentication guest-vlan auth-period period-value
缺省情况下,设备对Guest VLAN中的用户进行重新认证的时间间隔为30秒。
· 端口上生成的MAC地址认证Critical VLAN表项会覆盖已生成的阻塞MAC表项。开启了端口安全入侵检测的端口关闭功能时,MAC地址认证的Critical VLAN功能不生效。关于阻塞MAC表项和端口的入侵检测功能的具体介绍请参见“安全配置指导”中的“端口安全”。
· 当端口上的用户加入指定的Critical VLAN后,该用户的MAC地址不会被加入静默MAC。
· 当处于Guest VLAN的用户再次发起认证时,如果认证服务器不可达,则该用户仍然留在该Guest VLAN中,不会离开当前的VLAN而加入Critical VLAN。
配置MAC地址认证的Critical VLAN之前,需要进行以下配置准备:
· 创建需要配置为Critical VLAN的VLAN。
· 配置端口类型为Hybrid,且建议将指定的Critical VLAN修改为不携带Tag的方式。
· 通过mac-vlan enable命令开启端口上的MAC VLAN功能。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 配置端口的Critical VLAN。
mac-authentication critical vlan critical-vlan-id [ url-user-logoff ]
缺省情况下,未配置MAC认证的Critical VLAN。
不同的端口可以指定不同的MAC地址认证 Critical VLAN,一个端口最多只能指定一个MAC地址认证Critical VLAN。
配置MAC地址认证Critical Voice VLAN之前,需要进行以下配置准备:
· 全局和端口的LLDP(Link Layer Discovery Protocol,链路层发现协议)已经开启,设备通过LLDP来判断用户是否为语音用户。有关LLDP功能的详细介绍请参见“二层技术-以太网交换配置指导”中的“LLDP”。
· 端口的语音VLAN功能已经开启。有关语音VLAN的详细介绍请参见“二层技术-以太网交换配置指导”中的“VLAN”。
· 在该端口上配置了MAC地址认证的Critical VLAN。若端口上的语音用户在认证时所有认证服务器都不可达,且端口暂未将其识别为语音用户,则可以将其先加入Critical VLAN。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 配置指定端口的Critical Voice VLAN。
mac-authentication critical-voice-vlan
缺省情况下,端口下MAC地址认证的Critical Voice VLAN功能处于关闭状态。
非认证成功VLAN的用户是指,在端口上接入但由于未认证成功而加入到Critical VLAN或Guest VLAN的用户。
开启本功能后,当MAC地址认证用户加入到Critical VLAN或Guest VLAN时,设备启动对应VLAN的用户老化定时器。之后,当用户老化定时器到达老化时间(通过mac-authentication timer user-aging命令配置)时,用户离开对应的VLAN。
当端口上非认证成功VLAN中的用户需要迁移到其它端口接入时,请在当前接入端口开启本功能,使当前接入端口上的用户MAC地址可以按时老化。
当端口上非认证成功VLAN的用户不需要迁移到其它端口接入时,建议在当前接入端口上关闭本功能,以免用户老化退出后无法访问对应VLAN中的资源。
(1) 进入系统视图。
system-view
(2) 配置非认证成功VLAN的用户老化定时器。
mac-authentication timer user-aging { critical-vlan | guest-vlan } aging-time-value
缺省情况下,非认证成功的VLAN用户老化定时器的值为1000秒。
(3) 进入接口视图。
interface interface-type interface-number
(4) 开启端口的非认证成功VLAN的用户老化功能。
mac-authentication unauthenticated-user aging enable
缺省情况下,端口的非认证成功VLAN的用户老化功能处于开启状态。
开启端口的MAC地址认证下线检测功能后,若设备在一个下线检测定时器间隔之内,未收到此端口下某在线用户的报文,则将切断该用户的连接,同时通知RADIUS服务器停止对此用户进行计费。
关闭端口的MAC地址认证下线检测功能后,设备将不会对在线用户的状态进行检测。
设备缺省开启端口的MAC地址认证的下线检测,且缺省已配置下线检测定时器。通过配置指定MAC地址用户下线检测功能可以单独设置端口上某些用户的检查参数,或者设置不对某些用户进行下线检测:
· 对指定MAC地址用户设置下线检测定时器后,若设备在一个下线检测周期之内,未收到该在线用户的报文,或设备不存在该MAC地址对应的ARP Snooping或ND Snooping表项,则切断该用户的连接,同时通知RADIUS服务器停止对此用户进行计费。
· 关闭指定MAC地址用户下线检测的功能应用于哑终端的认证,避免哑终端用户因为MAC地址认证的下线检测功能开启导致哑终端下线后不能再次上线的问题,保证哑终端用户长期在线。
对指定MAC地址用户进行下线检测设置的优先级由高到低依次为:设备配置的指定MAC地址用户的下线检测设置、RADIUS服务器下发的下线检测设置、端口上的下线检测设置。其中,RADIUS服务器通过RADIUS属性为用户下发下线检测时间、是否检查ARP Snooping或ND Snooping表项,或是否进行下线检测。
如果关闭端口的MAC地址认证下线检测功能,则不会对端口上的MAC地址认证用户进行下线检测,此时配置指定MAC地址用户的下线检测功能不生效。
指定MAC地址用户的下线检测功能对在线用户立即生效。
(1) 进入系统视图。
system-view
(2) (可选)配置指定MAC地址用户的下线检测功能。
mac-authentication offline-detect mac-address mac-address { ignore | timer offline-detect-value [ check-arp-or-nd-snooping ] }
(3) 进入接口视图。
interface interface-type interface-number
(4) 开启端口的MAC地址认证下线检测功能。
mac-authentication offline-detect enable
缺省情况下,端口的MAC地址认证下线检测功能处于开启状态。
缺省情况下,当ISP域下所有RADIUS认证服务器均不可达时,如果此时设备上同时开启了MAC认证下线检测功能,若设备在一个下线检测定时器间隔内未收到接口下某MAC地址认证在线用户的报文,则将切断与该用户的连接,导致该MAC地址认证在线用户下线。
当RADIUS认证服务器可达时,用户需要使用MAC地址认证下线检测功能,同时又希望RADIUS认证服务器均不可达时,能够保持MAC地址认证用户的在线状态,可在设备上开启本功能。
配置本功能后,当RADIUS认证服务器不可达时,设备会自动关闭接口上的MAC地址认证下线检测功能,使得MAC地址认证用户保持在线状态。
本功能只适用于将RADIUS作为认证方法且不配置local/none作为备选认证方法的应用场景,否则可能导致用户通过备选认证方法上线后下线检测功能被自动关闭。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 开启RADIUS认证服务器不可达时,MAC地址认证在线用户逃生功能。
mac-authentication auth-server-unavailable escape
缺省情况下,RADIUS认证服务器不可达时,MAC地址认证在线用户逃生功能处于关闭状态
当使用iMC RADIUS服务器对用户进行MAC地址认证时,设备支持在线用户信息同步功能。开启本功能后,当通过RADIUS服务器探测功能探测到服务器由不可达变为可达后,设备便主动对端口上的所有在线用户依次向服务器发起认证请求,等到这些用户均通过认证后,达到服务器上的在线用户信息与该端口上的在线用户信息一致的目的。RADIUS服务器探测功能的配置步骤请参见“安全配置指导”中的“AAA”。
在设备向RADIUS服务器同步MAC地址认证在线用户过程中,特殊情况处理如下:
· 如果在RADIUS服务器可达情况下,某用户认证失败,则设备强制该用户下线。
· 如果在设备发起下一次RADIUS服务器探测前,RADIUS服务器变为不可达而导致用户认证失败,则用户仍然保持在线。
· 如果有新用户发起认证,则该认证用户的信息不会向RADIUS服务器进行同步。
MAC地址认证的在线用户信息同步功能只能与iMC服务器配合使用。
当RADIUS服务器从不可达变为可达时,处于Critical VLAN中的用户也会再次发起认证,在设备上MAC地址认证在线用户较多的情况下,如果配置了本功能,会因为同时进行认证的用户数量较大,而导致用户的上线时间变长。
本功能需要与RADIUS服务器探测功能配合使用。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 开启MAC地址认证的在线用户信息同步功能。
mac-authentication server-recovery online-user-sync
缺省情况下,MAC地址认证的在线用户信息同步功能处于关闭状态。
由于系统资源有限,如果当前端口下接入的用户过多,接入用户之间会发生资源的争用,因此适当地配置该值可以使端口上已经接入的用户获得可靠的性能保障。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 配置端口上最多允许同时接入的MAC地址认证用户数。
mac-authentication max-user max-number
缺省情况下,端口上最多允许同时接入的MAC地址认证用户数为4294967295。
MAC地址认证的端口可以工作在单VLAN模式或多VLAN模式。端口工作在不同模式下时,如果相同MAC地址的用户在同一端口下的不同VLAN(指不同于上一次发起认证时所在的VLAN)再次接入,设备对用户的处理方式如下:
· 端口工作在多VLAN模式下时,设备将能够允许用户的流量在新的VLAN内通过,且允许该用户的报文无需重新认证而在多个VLAN中转发。
· 端口工作在单VLAN模式下时,在用户已上线,且没有被下发授权VLAN情况下,设备将让原用户下线,使得该用户能够在新的VLAN内重新开始认证。
· 端口工作在单VLAN模式下时,如果已上线用户被下发了授权VLAN,对用户的处理与是否允许用户迁移到同一端口下其它VLAN接入(通过port-security mac-move permit命令)有关:
¡ 如果不允许用户迁移到同一端口下其它VLAN接入,则此用户在同一端口下的不同VLAN接入失败,原用户保持在线。
¡ 如果允许用户迁移到同一端口下其它VLAN接入,则用户在新的VLAN内需要重新认证,且在用户重新上线后,原用户下线。
对于接入IP电话类用户的端口,指定端口工作在MAC地址认证的多VLAN模式或为IP电话类用户授权VLAN,可避免IP电话终端的报文所携带的VLAN tag发生变化后,因用户流量需要重新认证而导致语音报文传输质量受干扰的问题。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 配置端口工作在MAC地址认证的多VLAN模式。
mac-authentication host-mode multi-vlan
缺省情况下,端口工作在MAC地址认证的单VLAN模式。
端口同时开启了MAC地址认证和802.1X认证的情况下,某些组网环境中希望设备对用户报文先进行802.1X认证。例如,有些客户端在发送802.1X认证请求报文之前,就已经向设备发送了其它报文,比如DHCP报文,因而触发了并不期望的MAC地址认证。这种情况下,可以开启端口的MAC地址认证延时功能。开启该功能后,端口就不会在收到用户报文时立即触发MAC地址认证,而是会等待一定的延迟时间,若在此期间该用户一直未进行802.1X认证或未成功通过802.1X认证,则延迟时间超时后端口会对之前收到的用户报文进行MAC地址认证。
开启了MAC地址认证延迟功能的端口上不建议同时配置端口安全的模式为mac-else-userlogin-secure或mac-else-userlogin-secure-ext,否则MAC地址认证延迟功能不生效。端口安全模式的具体配置请参见“安全配置指导”中的“端口安全”。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 开启MAC地址认证延迟功能,并指定延迟时间。
mac-authentication timer auth-delay time
缺省情况下,MAC地址认证延迟功能处于关闭状态。
在终端用户采用静态IP地址方式接入的组网环境中,如果终端用户擅自修改自己的IP地址,则整个网络环境中可能会出现IP地址冲突等问题。
为了解决以上问题,管理员可以在端口上开启MAC地址认证请求中携带用户IP地址的功能,用户在进行MAC地址认证时,设备会把用户的IP地址上传到iMC服务器。然后iMC服务器会把认证用户的IP地址和MAC地址与服务器上已经存在的IP与MAC的绑定表项进行匹配,如果匹配成功,则该用户MAC地址认证成功;否则,MAC地址认证失败。
配置本功能后,当有用户接入时,设备会检查用户报文中的IP地址是否合法,并进行相应处理:
· 当用户的IP地址合法时,设备携带用户IP地址向服务器发起MAC地址认证请求;
· 当用户报文未携带IP地址或用户的IP地址不合法时,设备不对用户进行MAC地址认证。
· 收到源IP为全0的DHCP报文时,设备会向服务器发起MAC地址认证请求,但认证报文中不携带IP地址。认证是否通过取决于认证服务器侧的配置。
iMC服务器上IP与MAC地址信息绑定表项的生成方式如下:
· 如果在iMC服务器上创建用户时手工指定了用户的IP地址和MAC地址信息,则服务器使用手工指定的IP和MAC信息生成该用户的IP与MAC地址的绑定表项。
· 如果在iMC服务器上创建用户时未手工指定用户的IP地址和MAC地址信息,则服务器使用用户初次进行MAC地址认证时使用的IP地址和MAC地址生成该用户的IP与MAC地址的绑定表项。
终端用户采用静态IP地址接入时,实际组网应用中会出现用户报文中携带的IP地址并非用户实际IP地址的情况,例如在IPv4静态地址组网中,用户报文携带的IP地址为以fe80开头的IPv6链路本地地址。配置本功能后,设备会携带非用户实际的IP地址向服务器发起MAC地址认证请求,此种情况会导致服务器为用户绑定错误的IP地址或IP地址与MAC地址匹配失败。为避免上述情况发生,可以在配置本功能时指定exclude-ip acl参数,不允许ACL中指定网段(上述举例中需指定fe80网段)的用户进行MAC地址认证。
· 在开启了MAC地址认证的端口上,不建议将本命令与mac-authentication guest-vlan命令同时配置;否则,加入Guest VLAN的用户无法再次发起MAC地址认证,用户会一直停留在Guest VLAN中。
配置exclude-ip acl时,支持配置基本ACL,且仅根据规则中配置的源IP地址进行过滤。建议ACL中配置deny规则来拒绝指定网段的用户进行MAC地址认证。如果ACL中仅配置了permit规则,则表示允许指定网段的用户进行MAC地址认证,这样的配置并没有实际意义。如果希望只允许某个网段用户进行MAC地址认证,可在ACL中同时配置一条指定网段的permit规则和一条deny all规则来实现。
通过exclude-ip acl指定ACL后,设备对于IPv4报文按照对应编号的IPv4 ACL规则进行处理;对于IPv6报文则按照对应编号的IPv6 ACL规则进行处理。例如,当配置了mac-authenication carry user-ip exclude-ip acl 2000时,如果用户报文为IPv4报文,则按照IPv4 ACL 2000的规则进行处理;如果用户报文为IPv6报文,则按照IPv6 ACL 2000的规则进行处理。
若通过exclude-ip acl指定的ACL为用户自定义ACL(ACL编号为5000~5999),设备仅支持匹配ipv4、 ipv6或any类型的ACL规则,不支持匹配其他类型的规则,且为自定义ACL配置的规则必须只包含源IP地址。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 配置MAC地址认证请求中携带用户IP地址。
mac-authentication carry user-ip [ exclude-ip acl acl-number ]
缺省情况下,MAC地址认证请求中不携带用户IP地址。
端口采用802.1X和MAC地址组合认证,且端口所连接的用户有不能主动发送EAP报文触发802.1X认证的情况下,如果端口配置了802.1X单播触发功能,则端口收到源MAC地址未知的报文,会先进行802.1X认证处理,完成后再进行MAC地址认证处理。
配置端口的MAC地址认证和802.1X认证并行处理功能后,在上述情况下,端口收到源MAC地址未知的报文,会向该MAC地址单播发送EAP-Request帧来触发802.1X认证,但不等待802.1X认证处理完成,就同时进行MAC地址认证的处理。
在某些组网环境下,例如用户不希望端口先被加入802.1X的Guest VLAN中,接收到源MAC地址未知的报文后,先触发MAC地址认证,认证成功后端口直接加入MAC地址认证的授权VLAN中,那么需要配置MAC地址认证和802.1X认证并行处理功能和端口延迟加入802.1X Guest VLAN功能。关于端口延迟加入802.1X Guest VLAN功能的详细介绍,请参见“安全配置指导”中的“802.1X”。
端口采用802.1X和MAC地址组合认证功能适用于如下情况:
· 端口上同时开启了802.1X和MAC地址认证功能,并配置了802.1X认证的端口的接入控制方式为MAC-based。
· 开启了端口安全功能,并配置了端口安全模式为userlogin-secure-or-mac或userlogin-secure-or-mac-ext。端口安全模式的具体配置请参见“安全命令参考”中的“端口安全”。
为保证MAC地址认证和802.1X认证并行处理功能的正常使用,不建议配置端口的MAC地址认证延迟功能,否则端口触发802.1X认证后,仍会等待一定的延迟后再进行MAC地址认证。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 配置端口的MAC地址认证和802.1X认证并行处理功能。
mac-authentication parallel-with-dot1x
缺省情况下,端口在收到源MAC地址未知的报文触发认证时,按照802.1X完成后再进行MAC地址认证的顺序进行处理。
若设备或接口板重启、接口故障恢复,当设备和Profile中指定的RESTful服务器之间路由可达时,设备将从配置的MAC地址认证user-recovery Profile中指定的服务器上获取相关接口上的哑终端用户MAC地址认证账户信息,并使用这些信息为用户重新进行认证,达到不需要用户干预的情况下为其恢复在线状态的目的。同时,设备也支持通过命令行手工恢复用户功能,满足用户恢复的灵活性。
MAC地址认证的user-recovery Profile中定义了RESTful服务器的相关参数,主要包括服务器的IP地址、用户资源URI和登录到该服务器所需的用户名和密码。
目前,MAC地址认证恢复用户功能只能与iMC的RESTful服务器配合使用,该服务器也是用户的认证服务器。
设备最多可以配置16个MAC地址认证user-recovery Profile。
系统最多支持为16个user-recovery Profile开启恢复用户功能。通常,不同的Profile对应不同的RESTful服务器以及服务器上的用户信息。
RADIUS的accounting-on功能与MAC地址认证恢复用户功能互斥,不建议同时开启。关于accounting-on功能详细介绍,请参见“安全配置指导”中的“AAA”。
MAC地址用户认证上线时,设备会记录用户的MAC地址、IP地址等信息。如果未配置MAC地址认证请求中携带用户IP地址功能,则服务器端不会获取到用户的IP地址信息。如果希望设备恢复静态IP地址的哑终端用户的同时,设备也能够从服务器端获取到用户的IP地址信息,请配置MAC地址认证请求中携带用户IP地址功能。
(1) 进入系统视图。
system-view
(2) 配置MAC地址认证user-recovery Profile。
a. 创建MAC地址认证user-recovery Profile,并进入user-recovery Profile视图。
mac-authentication user-recovery-profile profile-name
b. 配置RESTful服务器的IP地址参数。
server-address { ip ipv4-address | ipv6 ipv6-address } [ port port-number ] [ vpn-instance vpn-instance-name ]
缺省情况下,未配置RESTful服务器的IP地址参数。
c. 配置登录到RESTful服务器所需的用户名和密码。
login-name username [ password { cipher | simple } string ]
缺省情况下,未配置登录到RESTful服务器所需的用户名和密码。
d. 配置设备和RESTful服务器交互时使用的NAS-IP地址。
nas-ip { ipv4-address | ipv6 ipv6-address }
缺省情况下,未配置设备和RESTful服务器交互时使用的NAS-IP地址。
e. 指定RESTful服务器的URI。
uri uri-string
缺省情况下,未指定RESTful服务器的URI。
支持指定的RESTful服务器的URI为imcrs/uam/online/notAgingMuteTerminal,指定为其他URI时,本配置不生效。
(3) 退回系统视图。
quit
(4) 开启MAC地址认证自动恢复用户功能。
mac-authentication auto-recover-user profile profile-name
缺省情况下,MAC地址认证的自动恢复用户功能处于关闭状态。
(5) 退回用户视图。
quit
(6) (可选)手动恢复MAC地址认证用户。
mac-authentication recover-user profile profile-name [ interface interface-type interface-number
缺省情况下,MAC地址认证通过后,RADIUS服务器下发的重定向URL指定的Web服务器状态一直为active,设备并不能感知到Web服务器的真实状态。通过对重定向URL关联Track项,MAC地址认证模块能够根据Track项的状态及时确定Web服务器的可达性,以便在Web服务器不可达时,快速执行相应的逃生功能。
通过将被关联的Track项与HTTP类型的NQA测试组联动,由NQA测试组来判断Web重定向服务器的连通性及性能。有关Track项的详细介绍,请参见“可靠性配置指导”中的“Track”。有关NQA的详细介绍,请参见“网络管理和监控配置指导”中的“NQA”。
(1) 进入系统视图。
system-view
(2) 配置需要探测状态的Web服务器的重定向URL。
mac-authentication redirect-url url-string track track-entry-number
缺省情况下,未配置需要探测状态的Web服务器的重定向URL。
设备默认只允许未配置Web代理服务器的用户浏览器发起的HTTP/HTTPS请求才能触发MAC地址认证的URL重定向。若用户使用配置了Web代理服务器的浏览器,则用户在通过MAC地址认证之后发送的HTTP/HTTPS请求报文将被丢弃。这种情况下,网络管理员可以通过在设备上添加Web代理服务器的TCP端口号,来允许使用Web代理服务器的浏览器发起的HTTP/HTTPS请求能够触发MAC地址认证的URL重定向。
设备最多可以添加64个允许触发MAC地址认证URL重定向功能的Web代理服务器端口。
HTTP和HTTPS请求的允许触发MAC地址认证URL重定向功能的Web代理服务器端口不能相同。
在有MAC地址认证用户在线的情况下,通过本功能新增或者删除Web代理端口号时,设备会强制让所有授权了重定向URL的MAC地址认证用户下线。
(1) 进入系统视图。
system-view
(2) 配置允许触发MAC地址认证URL重定向的Web代理服务器端口。
mac-authentication web-proxy { http | https } port port-number
缺省情况下,未配置允许触发MAC地址认证URL重定向的Web代理服务器端口。
强制MAC地址认证用户下线后,设备会删除对应的用户信息,用户再次上线时,需要重新进行MAC地址认证。
请在用户视图下执行本命令,强制MAC地址认证用户下线。
reset mac-authentication access-user [ interface interface-type interface-number | mac mac-address | username username | vlan vlan-id ]
MAC地址认证接入用户日志信息是为了满足网络管理员维护的需要,对MAC地址认证用户的接入信息进行记录。设备生成的MAC地址认证接入用户日志信息会交给信息中心模块处理,信息中心模块的配置将决定日志信息的发送规则和发送方向。关于信息中心的详细描述请参见“网络管理和监控配置指导”中的“信息中心”。
为了防止设备输出过多的MAC地址认证接入用户日志信息,一般情况下建议关闭此功能。
(1) 进入系统视图。
system-view
(2) 开启MAC地址认证接入用户日志信息功能。
mac-authentication access-user log enable [ failed-login | logoff | successful-login ] *
缺省情况下,MAC地址认证接入用户日志信息功能处于关闭状态。
配置本命令时,如果未指定任何参数,将同时开启所有参数对应的日志功能。
在完成上述配置后,在任意视图下执行display命令可以显示配置后MAC地址认证的运行情况,通过查看显示信息验证配置的效果。
在用户视图下,执行reset命令可以清除相关信息。
表1-1 MAC地址认证的显示和维护
操作 |
命令 |
显示MAC地址认证的相关信息 |
display mac-authentication [ interface interface-type interface-number ] |
显示MAC地址认证连接信息 |
display mac-authentication connection [ open ] [ [ m-lag [ local | peer ] ] interface interface-type interface-number | [ m-lag [ local | peer ] ] slot slot-number | user-mac mac-addr | [ m-lag [ local | peer ] ] user-name user-name ] |
显示非认证成功VLAN中的MAC地址认证用户的MAC地址信息 |
display mac-authentication mac-address { critical-vlan | guest-vlan } [ interface interface-type interface-number ] |
清除MAC地址认证的统计信息 |
reset mac-authentication statistics [ interface interface-type interface-number ] |
清除Critical VLAN内MAC地址认证用户 |
reset mac-authentication critical vlan interface interface-type interface-number [ mac-address mac-address ] |
清除Critical Voice VLAN内MAC地址认证用户 |
reset mac-authentication critical-voice-vlan interface interface-type interface-number [ mac-address mac-address ] |
清除Guest VLAN内MAC地址认证用户 |
reset mac-authentication guest-vlan interface interface-type interface-number [ mac-address mac-address ] |
如图1-4所示,某子网的用户主机与设备的端口Ten-GigabitEthernet1/0/1相连接。
· 设备的管理者希望在端口Ten-GigabitEthernet1/0/1上对用户接入进行MAC地址认证,以控制它们对Internet的访问。
· 要求设备每隔180秒就对用户是否下线进行检测;并且当用户认证失败时,需等待180秒后才能对用户再次发起认证。
· 所有用户都属于ISP域bbb,认证时使用本地认证的方式。
· 使用用户的MAC地址作用户名和密码,其中MAC地址带连字符、字母小写。
图1-4 启动MAC地址认证对接入用户进行本地认证
# 添加网络接入类本地接入用户。本例中添加Host A的本地用户,用户名和密码均为Host A的MAC地址08-00-27-12-34-56,服务类型为lan-access。
<Device> system-view
[Device] local-user 08-00-27-12-34-56 class network
[Device-luser-network-08-00-27-12-34-56] password simple 08-00-27-12-34-56
[Device-luser-network-08-00-27-12-34-56] service-type lan-access
[Device-luser-network-08-00-27-12-34-56] quit
# 配置ISP域,使用本地认证方法。
[Device] domain bbb
[Device-isp-bbb] authentication lan-access local
[Device-isp-bbb] quit
# 开启端口Ten-GigabitEthernet1/0/1的MAC地址认证。
[Device] interface ten-gigabitethernet 1/0/1
[Device-Ten-GigabitEthernet1/0/1] mac-authentication
[Device-Ten-GigabitEthernet1/0/1] quit
# 配置MAC地址认证用户所使用的ISP域。
[Device] mac-authentication domain bbb
# 配置MAC地址认证的定时器。
[Device] mac-authentication timer offline-detect 180
[Device] mac-authentication timer quiet 180
# 配置MAC地址认证用户的账号格式:使用带连字符的MAC地址作为用户名与密码,其中字母小写。
[Device] mac-authentication user-name-format mac-address with-hyphen lowercase
# 开启全局MAC地址认证。
[Device] mac-authentication
# 当用户接入端口Ten-GigabitEthernet1/0/1之后,可以通过如下显示信息看到Host A成功通过认证,处于上线状态,Host B没有通过认证,它的MAC地址被加入静默MAC列表。
<Device> display mac-authentication
Global MAC authentication parameters:
MAC authentication : Enabled
Authentication method : PAP
M-LAG member configuration conflict : Unknown
User name format : MAC address in lowercase(xx-xx-xx-xx-xx-xx)
Username : mac
Password : Not configured
Offline detect period : 180 s
Quiet period : 180 s
Server timeout : 100 s
Reauth period : 3600 s
User aging period for critical VLAN : 1000 s
User aging period for guest VLAN : 1000 s
Authentication domain : bbb
HTTP proxy port list : Not configured
HTTPS proxy port list : Not configured
Online MAC-auth wired users : 1
Silent MAC users:
MAC address VLAN ID From port Port index
00e0-fc11-1111 8 XGE1/0/1 1
Ten-GigabitEthernet1/0/1 is link-up
MAC authentication : Enabled
Carry User-IP : Disabled
Authentication domain : Not configured
Auth-delay timer : Disabled
Periodic reauth : Disabled
Re-auth server-unreachable : Logoff
Guest VLAN : Not configured
Guest VLAN reauthentication : Enabled
Guest VLAN auth-period : 30 s
Critical VLAN : Not configured
Critical voice VLAN : Disabled
Host mode : Single VLAN
Offline detection : Enabled
Authentication order : Default
User aging : Enabled
Server-recovery online-user-sync : Enabled
URL user logoff : No
Auto-tag feature : Disabled
VLAN tag configuration ignoring : Disabled
Max online users : 4294967295
Auth-server-unavaliable escape :Enabled
Authentication attempts : successful 1, failed 0
Current online users : 1
MAC address Auth state
0800-2712-3456 Authenticated
如图1-5所示,用户主机Host通过端口Ten-GigabitEthernet1/0/1连接到设备上,设备通过RADIUS服务器对用户进行认证、授权和计费。
· 设备的管理者希望在端口Ten-GigabitEthernet1/0/1上对用户接入进行MAC地址认证,以控制其对Internet的访问。
· RADIUS服务器和设备上均采用CHAP认证方法。
· 要求设备每隔180秒就对用户是否下线进行检测;并且当用户认证失败时,需等待180秒后才能对用户再次发起认证。
· 所有用户都属于域2000,认证时采用固定用户名账号,用户名为aaa,密码为123456。
图1-5 启动MAC地址认证对接入用户进行RADIUS认证
(1) 配置RADIUS服务器,添加接入用户账户:用户名为aaa,密码为123456,并保证用户的认证/授权/计费功能正常运行(略)
(2) 配置使用RADIUS服务器进行MAC地址认证
# 配置RADIUS方案。
<Device> system-view
[Device] radius scheme 2000
[Device-radius-2000] primary authentication 10.1.1.1 1812
[Device-radius-2000] primary accounting 10.1.1.2 1813
[Device-radius-2000] key authentication simple abc
[Device-radius-2000] key accounting simple abc
[Device-radius-2000] user-name-format without-domain
[Device-radius-2000] quit
# 配置MAC地址认证的认证方法为CHAP。
[Device] mac-authentication authentication-method chap
# 配置ISP域的AAA方法。
[Device] domain bbb
[Device-isp-bbb] authentication default radius-scheme 2000
[Device-isp-bbb] authorization default radius-scheme 2000
[Device-isp-bbb] accounting default radius-scheme 2000
[Device-isp-bbb] quit
# 开启端口Ten-GigabitEthernet1/0/1的MAC地址认证。
[Device] interface ten-gigabitethernet 1/0/1
[Device-Ten-GigabitEthernet1/0/1] mac-authentication
[Device-Ten-GigabitEthernet1/0/1] quit
# 配置MAC地址认证用户所使用的ISP域。
[Device] mac-authentication domain bbb
# 配置MAC地址认证的定时器。
[Device] mac-authentication timer offline-detect 180
[Device] mac-authentication timer quiet 180
# 配置MAC地址认证使用固定用户名账号:用户名为aaa,密码为明文123456。
[Device] mac-authentication user-name-format fixed account aaa password simple 123456
# 开启全局MAC地址认证。
[Device] mac-authentication
# 显示MAC地址认证配置信息。
<Device> display mac-authentication
Global MAC authentication parameters:
MAC authentication : Enabled
Authentication method : CHAP
M-LAG member configuration conflict : Unknown
Username format : Fixed account
Username : aaa
Password : ******
Offline detect period : 180 s
Quiet period : 180 s
Server timeout : 100 s
Reauth period : 3600 s
User aging period for critical VLAN : 1000 s
User aging period for guest VLAN : 1000 s
Authentication domain : bbb
HTTP proxy port list : Not configured
HTTPS proxy port list : Not configured
Online MAC-auth wired users : 1
Silent MAC users:
MAC address VLAN ID From port Port index
Ten-GigabitEthernet1/0/1 is link-up
MAC authentication : Enabled
Carry User-IP : Disabled
Authentication domain : Not configured
Auth-delay timer : Disabled
Periodic reauth : Disabled
Re-auth server-unreachable : Logoff
Guest VLAN : Not configured
Guest VLAN reauthentication : Enabled
Guest VLAN auth-period : 30 s
Critical VLAN : Not configured
Critical voice VLAN : Disabled
Host mode : Single VLAN
Offline detection : Enabled
Authentication order : Default
User aging : Enabled
Server-recovery online-user-sync : Enabled
URL user logoff : No
Auto-tag feature : Disabled
VLAN tag configuration ignoring : Disabled
Max online users : 4294967295
Auth-server-unavaliable escape :Enabled
Authentication attempts : successful 1, failed 0
Current online users : 1
MAC address Auth state
0800-2712-3456 Authenticated
如图1-6所示,用户主机Host通过端口Ten-GigabitEthernet1/0/1连接到设备上,设备通过RADIUS服务器对用户进行认证、授权和计费,Internet网络中有一台FTP服务器,IP地址为10.0.0.1。现有如下组网需求:
· 在端口Ten-GigabitEthernet1/0/1上对用户接入进行MAC地址认证,以控制其对Internet的访问。认证时使用用户的源MAC地址做用户名和密码,其中MAC地址带连字符、字母小写。
· 当用户认证成功上线后,允许用户访问除FTP服务器之外的Internet资源。
图1-6 下发ACL典型配置组网图
(1) 配置RADIUS服务器,保证用户的认证/授权/计费功能正常运行
# 由于该例中使用了MAC地址认证的缺省用户名和密码,即使用用户的源MAC地址做用户名与密码,因此还要保证RADIUS服务器上正确添加了接入用户账户:用户名为08-00-27-12-34-56,密码为08-00-27-12-34-56。
# 指定RADIUS服务器上的授权ACL为设备上配置的ACL 3000。
(2) 配置授权ACL
# 配置ACL 3000,拒绝目的IP地址为10.0.0.1的报文通过。
<Device> system-view
[Device] acl advanced 3000
[Device-acl-ipv4-adv-3000] rule 0 deny ip destination 10.0.0.1 0
[Device-acl-ipv4-adv-3000] quit
(3) 配置使用RADIUS服务器进行MAC地址认证
# 配置RADIUS方案。
[Device] radius scheme 2000
[Device-radius-2000] primary authentication 10.1.1.1 1812
[Device-radius-2000] primary accounting 10.1.1.2 1813
[Device-radius-2000] key authentication simple abc
[Device-radius-2000] key accounting simple abc
[Device-radius-2000] user-name-format without-domain
[Device-radius-2000] quit
# 配置ISP域的AAA方法。
[Device] domain bbb
[Device-isp-bbb] authentication default radius-scheme 2000
[Device-isp-bbb] authorization default radius-scheme 2000
[Device-isp-bbb] accounting default radius-scheme 2000
[Device-isp-bbb] quit
# 配置MAC地址认证用户所使用的ISP域。
[Device] mac-authentication domain bbb
# 配置MAC地址认证用户的账号格式:使用带连字符的MAC地址做用户名与密码,其中字母小写。
[Device] mac-authentication user-name-format mac-address with-hyphen lowercase
# 开启端口Ten-GigabitEthernet1/0/1上的MAC地址认证。
[Device] interface ten-gigabitethernet 1/0/1
[Device-Ten-GigabitEthernet1/0/1] mac-authentication
[Device-Ten-GigabitEthernet1/0/1] quit
# 开启全局MAC地址认证。
[Device] mac-authentication
# 显示MAC地址认证配置信息。
<Device> display mac-authentication
Global MAC authentication parameters:
MAC authentication : Enable
Authentication method : PAP
M-LAG member configuration conflict : Unknown
Username format : MAC address in lowercase(xx-xx-xx-xx-xx-xx)
Username : mac
Password : Not configured
Offline detect period : 300 s
Quiet period : 60 s
Server timeout : 100 s
Reauth period : 3600 s
User aging period for critical VLAN : 1000 s
User aging period for guest VLAN : 1000 s
Authentication domain : bbb
HTTP proxy port list : Not configured
HTTPS proxy port list : Not configured
Online MAC-auth wired users : 1
Silent MAC users:
MAC address VLAN ID From port Port index
Ten-GigabitEthernet1/0/1 is link-up
MAC authentication : Enabled
Carry User-IP : Disabled
Authentication domain : Not configured
Auth-delay timer : Disabled
Periodic reauth : Disabled
Re-auth server-unreachable : Logoff
Guest VLAN : Not configured
Guest VLAN reauthentication : Enabled
Guest VLAN auth-period : 30 s
Critical VLAN : Not configured
Critical voice VLAN : Disabled
Host mode : Single VLAN
Offline detection : Enabled
Authentication order : Default
User aging : Enabled
Server-recovery online-user-sync : Enabled
URL user logoff : No
Auto-tag feature : Disabled
VLAN tag configuration ignoring : Disabled
Max online users : 4294967295
Auth-server-unavaliable escape :Enabled
Authentication attempts : successful 1, failed 0
Current online users : 1
MAC address Auth state
0800-2712-3456 Authenticated
用户认证上线后,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保留在没有任何通知或提示的情况下对资料内容进行修改的权利!