07-端口安全配置
本章节下载: 07-端口安全配置 (290.20 KB)
目 录
端口安全通过对已有的802.1X认证和MAC地址认证进行融合和扩充,在端口上为使用不同认证方式的用户提供基于MAC地址的网络接入控制。
· 通过检测端口收到的数据帧中的源MAC地址来控制非授权设备或主机对网络的访问。
· 通过检测从端口发出的数据帧中的目的MAC地址来控制对非授权设备的访问。
· 通过定义各种端口安全模式,控制端口上的MAC地址学习或定义端口上的组合认证方式,让设备学习到合法的源MAC地址,以达到相应的网络管理效果。
Need To Know特性通过检测从端口发出的数据帧的目的MAC地址,保证数据帧只能被发送到已经通过认证或被端口学习到的MAC所属的设备或主机上,从而防止非法设备窃听网络数据。
入侵检测特性对端口接收到的数据帧进行检测,源MAC地址未被端口学习到的报文或未通过认证的报文,被认为是非法报文,如果发现非法报文,则对接收非法报文的端口采取相应的安全策略,包括端口被暂时断开连接、永久断开连接或MAC地址被过滤(默认3分钟,不可配),以保证端口的安全性。
端口安全模式分为两大类:控制MAC学习类和认证类。
· 控制MAC学习类:无需认证,包括端口自动学习MAC地址和禁止MAC地址学习两种模式。
· 认证类:利用MAC地址认证和802.1X认证机制来实现,包括单独认证和组合认证等多种模式。
配置了安全模式的端口上收到用户报文后,首先查找MAC地址表,如果该报文的源MAC地址已经存在于MAC地址表中,则端口转发该报文,否则根据端口所采用的安全模式进行MAC地址学习或者触发相应的认证,并在发现非法报文后触发端口执行相应的安全防护措施(Need To Know、入侵检测)或发送Trap告警。缺省情况下,端口出方向的报文转发不受端口安全限制,若触发了端口Need To Know,则才受相应限制。关于各模式的具体工作机制,以及是否触发Need To Know、入侵检测的具体情况请参见表1-1。
端口安全采用方式 |
安全模式 |
触发的安全防护措施 |
|
关闭端口安全特性 |
noRestrictions(缺省情况) 表示端口的安全功能关闭,端口处于无限制状态 |
无 |
|
端口控制MAC地址学习 |
autoLearn |
NTK/入侵检测 |
|
secure |
|||
端口采用802.1X认证 |
userLogin |
无 |
|
userLoginSecure |
NTK/入侵检测 |
||
userLoginSecureExt |
|||
userLoginWithOUI |
|||
端口采用MAC地址认证 |
macAddressWithRadius |
NTK/入侵检测 |
|
端口采用802.1X和MAC地址认证组合认证 |
Or |
macAddressOrUserLoginSecure |
NTK/入侵检测 |
macAddressOrUserLoginSecureExt |
|||
Else |
macAddressElseUserLoginSecure |
||
macAddressElseUserLoginSecureExt |
由于安全模式种类较多,为便于记忆,部分端口安全模式的名称可按如下规则理解:
· “userLogin”表示基于端口的802.1X认证。userLogin之后,若携带“Secure”,则表示基于MAC地址的802.1X认证;若携带“Ext”,则表示可允许多个802.1X用户认证成功,否则表示仅允许一个802.1X用户认证成功。
· “macAddress”表示MAC地址认证。
· “Else”之前的认证方式先被采用,失败后根据请求认证的报文协议类型决定是否转为“Else”之后的认证方式。
· “Or”之后的认证方式先被采用,失败后转为“Or”之前的认证方式。
· autoLearn
该模式下,端口不会将自动学习到的MAC地址添加为MAC地址表中的动态MAC地址,而是将这些地址添加到安全MAC地址表中,称之为安全MAC地址。也可以通过port-security mac-address security命令手工配置端口下的安全MAC地址。
只有源MAC地址为安全MAC地址、通过命令mac-address static手工配置的MAC地址的报文,才能通过该端口。当端口下的安全MAC地址数超过端口安全允许学习的最大安全MAC地址数后,端口模式会自动转变为secure模式。之后,该端口停止添加新的安全MAC。
· secure
该模式下,禁止端口学习MAC地址,只有源MAC地址为端口上的安全MAC地址、通过命令mac-address static手工配置的MAC地址的报文,才能通过该端口。有关MAC地址的详细配置,请参见“网络互通配置指导”中的“MAC地址表”。
· userLogin
此模式下,端口对接入用户采用基于端口的802.1X认证方式。端口下支持接入多个802.1X用户,且第一个802.1X用户认证成功后,其它用户无须认证就可接入。
· userLoginSecure
此模式下,端口对接入用户采用基于MAC地址的802.1X认证方式,且最多只允许一个802.1X认证用户接入。
· userLoginSecureExt
该模式与userLoginSecure模式类似,但端口支持多个802.1X认证用户接入。
· userLoginWithOUI
该模式与userLoginSecure模式类似,但端口上除了允许一个802.1X认证用户接入之外,还额外允许一个特殊用户接入,该用户报文的源MAC的OUI与设备上配置的OUI值相符。
此模式下,报文首先进行OUI匹配,OUI匹配失败的报文再进行802.1X认证,OUI匹配成功和802.1X认证成功的报文都允许通过端口。
OUI(Organizationally Unique Identifier,全球统一标识符)是MAC地址的前24位(二进制),是IEEE(Institute of Electrical and Electronics Engineers,电气和电子工程师学会)为不同设备供应商分配的一个全球唯一的标识符。
macAddressWithRadius:端口对对接入用户采用MAC地址认证,且允许多个用户接入。
· macAddressOrUserLoginSecure
端口同时处于userLoginSecure模式和macAddressWithRadius模式,且允许一个802.1X认证用户及多个MAC地址认证用户接入。
此模式下,802.1X认证优先级大于MAC地址认证:报文首先触发802.1X认证,默认情况下,如果802.1X认证失败再进行MAC地址认证。
· macAddressOrUserLoginSecureExt
与macAddressOrUserLoginSecure类似,但允许端口下有多个802.1X和MAC地址认证用户。
· macAddressElseUserLoginSecure
端口同时处于macAddressWithRadius模式和userLoginSecure模式,但MAC地址认证优先级大于802.1X认证。允许端口下一个802.1X认证用户及多个MAC地址认证用户接入。
非802.1X报文直接进行MAC地址认证。802.1X报文先进行MAC地址认证,如果MAC地址认证失败再进行802.1X认证。
· macAddressElseUserLoginSecureExt
与macAddressElseUserLoginSecure类似,但允许端口下有多个802.1X和MAC地址认证用户。
由于端口安全特性通过多种安全模式提供了802.1X和MAC地址认证的扩展和组合应用,因此在需要灵活使用以上两种认证方式的组网环境下,推荐使用端口安全特性。无特殊组网要求的情况下,无线环境中通常使用端口安全特性。而在仅需要802.1X、MAC地址认证特性来完成接入控制的组网环境下,推荐单独使用相关特性。关于802.1X、MAC地址认证特性的详细介绍和具体配置请参见“用户接入与认证配置指导”中的“802.1X”、“MAC地址认证”。
(1) 配置端口安全基本功能
¡ 使能端口安全
¡ 配置端口安全模式
¡ (可选)配置Need To Know特性
¡ (可选)配置入侵检测特性
(2) (可选)配置端口安全扩展功能
以上端口安全扩展功能,在未使能端口安全,但开启802.1X或MAC地址认证功能的情况下也适用。
(3) (可选)配置端口安全告警功能
· 当端口安全处于使能状态时,不能开启端口上的802.1X以及MAC地址认证,且不能修改802.1X端口接入控制方式和端口授权状态,它们只能随端口安全模式的改变由系统更改。
· 可以通过undo port-security enable命令关闭端口安全。但需要注意的是,在端口上有用户在线的情况下,关闭端口会导致在线用户下线。
· 执行使能或关闭端口安全的命令后,端口上的如下配置会被自动恢复为以下缺省情况:
¡ 802.1X端口接入控制方式为macbased;
¡ 802.1X端口的授权状态为auto。
有关802.1X认证配置的详细介绍可参见“用户接入与认证配置指导”中的“802.1X”。有关MAC地址认证配置的详细介绍可参见“用户接入与认证配置指导”中的“MAC地址认证”。
在使能端口安全之前,需要关闭全局的802.1X和MAC地址认证。
(1) 进入系统视图。
system-view
(2) 使能端口安全。
port-security enable
缺省情况下,端口安全功能处于关闭状态。
· 在端口安全未使能的情况下,端口安全模式可以进行配置但不会生效。
· 端口上有用户在线的情况下,改变端口的安全模式会导致在线用户会下线。
· 如果端口上已经配置了端口安全模式,则不允许开启802.1X认证和MAC地址认证。
· 当端口安全已经使能且当前端口安全模式不是noRestrictions时,若要改变端口安全模式,必须首先执行undo port-security port-mode命令恢复端口安全模式为noRestrictions模式。
在配置端口安全模式之前,端口上首先需要满足以下条件:
· 802.1X认证关闭。
· MAC地址认证关闭。
· 端口未加入聚合组。
· 对于autoLearn模式,还需要提前设置端口安全允许的最大安全MAC地址数。但是如果端口已经工作在autoLearn模式下,则无法更改端口安全允许的最大安全MAC地址数。
(1) 进入系统视图。
system-view
(2) 配置允许通过认证的用户OUI值。
port-security oui index index-value mac-address oui-value
缺省情况下,不存在允许通过认证的用户OUI值。
该命令仅在端口安全模式为userLoginWithOUI时必选。在这种情况下,端口除了可以允许一个802.1X的接入用户通过认证之外,仅允许一个与某OUI值匹配的用户通过认证。
(3) 进入接口视图。
interface interface-type interface-number
(4) 配置端口的安全模式。
port-security port-mode { autolearn | mac-authentication | mac-else-userlogin-secure | mac-else-userlogin-secure-ext | secure | userlogin | userlogin-secure | userlogin-secure-ext | userlogin-secure-or-mac | userlogin-secure-or-mac-ext | userlogin-withoui }
缺省情况下,端口处于noRestrictions模式。
端口安全允许某个端口下有多个用户接入,但是允许的用户数不能超过规定的最大值。
配置端口允许的最大安全MAC地址数有两个作用:
· 控制端口允许接入网络的最大用户数。对于采用802.1X、MAC地址认证或者两者组合形式的认证类安全模式,端口允许的最大用户数取本命令配置的值与相应模式下允许认证用户数的最小值;
· 控制autoLearn模式下端口能够添加的最大安全MAC地址数。
端口安全允许的最大安全MAC地址数与“网络互通配置指导/MAC地址表”中配置的端口最多可以学习到的MAC地址数无关,且不受其影响。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 配置端口安全允许的最大安全MAC地址数。
port-security max-mac-count max-count
缺省情况下,端口安全不限制本端口可保存的最大安全MAC地址数。
安全MAC地址是一种特殊的MAC地址,保存配置后重启设备,不会丢失。在同一个VLAN内,一个安全MAC地址只能被添加到一个端口上。
安全MAC地址可以通过以下两种途径生成:
· 由autoLearn安全模式下的使能端口安全功能的端口自动学习。
· 通过命令行手动添加。
缺省情况下,所有的安全MAC地址均不老化,除非被管理员通过命令行手工删除,或因为配置的改变(端口的安全模式被改变,或端口安全功能被关闭)而被系统自动删除。
表1-2 安全MAC地址相关属性列表
类型 |
生成方式 |
配置保存机制 |
老化机制 |
静态 |
手工添加 |
安全MAC地址在保存配置文件并重启设备后,仍然存在 |
不老化 |
当端口下的安全MAC地址数目超过端口允许学习的最大安全MAC地址数后,端口安全模式变为secure模式。该模式下,禁止端口学习MAC地址,只有源MAC地址为端口上的安全MAC地址或通过命令mac-address static手工配置的MAC地址的报文,才能通过该端口。
在配置安全MAC地址之前,需要完成以下配置任务:
· 设置端口安全允许的最大MAC地址数。
· 配置端口安全模式为autoLearn。
· 当前的接口必须允许指定的VLAN通过或已加入该VLAN,且该VLAN已存在。
(1) 进入系统视图。
system-view
(2) 在系统视图或接口视图下配置安全MAC地址。
¡ 在系统视图下配置安全MAC地址。
port-security mac-address security mac-address interface interface-type interface-number vlan vlan-id
¡ 依次执行以下命令在接口视图下配置安全MAC地址。
interface interface-type interface-number
port-security mac-address security mac-address vlan vlan-id
缺省情况下,未配置安全MAC地址。
Need To Know特性用来限制认证端口上出方向的报文转发,可支持以下三种限制方式:
· ntkonly:仅允许目的MAC地址为已通过认证的MAC地址的单播报文通过。
· ntk-withbroadcasts:允许目的MAC地址为已通过认证的MAC地址的单播报文或广播地址的报文通过。
· ntk-withmulticasts:允许目的MAC地址为已通过认证的MAC地址的单播报文,广播地址或组播地址的报文通过。
配置了Need To Know的端口在以上任何一种方式下都不允许目的MAC地址未知的单播报文通过。
并非所有的端口安全模式都支持Need To Know特性,配置时需要先了解各模式对此特性的支持情况,具体请参见表1-1。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 配置端口Need To Know特性。
port-security ntk-mode { ntk-withbroadcasts | ntk-withmulticasts | ntkonly }
缺省情况下,端口没有配置Need To Know特性,即所有报文都可成功发送。
当设备检测到一个非法的用户通过端口试图访问网络时,入侵检测特性用于配置设备可能对其采取的安全措施,包括以下三种方式:
· blockmac:表示将非法报文的源MAC地址加入阻塞MAC地址列表中,源MAC地址为阻塞MAC地址的报文将被丢弃。此MAC地址在被阻塞3分钟(系统默认,不可配)后恢复正常。
· disableport:表示将收到非法报文的端口永久关闭。
· disableport-temporarily:表示将收到非法报文的端口暂时关闭一段时间。关闭时长可通过port-security timer disableport命令配置。
macAddressElseUserLoginSecure或macAddressElseUserLoginSecureExt安全模式下工作的端口,对于同一个报文,只有MAC地址认证和802.1X认证均失败后,才会触发入侵检测特性。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 配置入侵检测特性 。
port-security intrusion-mode { blockmac | disableport | disableport-temporarily }
缺省情况下,不进行入侵检测处理。
(4) (可选)依次执行以下命令配置系统暂时关闭端口的时间。
quit
port-security timer disableport time-value
缺省情况下,系统暂时关闭端口的时间为20秒。
802.1X用户或MAC地址认证用户通过本地认证或RADIUS认证时,本地设备或远程RADIUS服务器会把授权信息下发给用户。通过此配置可实现端口是否忽略这类下发的授权信息。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 配置当前端口不应用RADIUS服务器或设备本地下发的授权信息。
port-security authorization ignore
缺省情况下,端口应用RADIUS服务器或设备本地下发的授权信息。
允许MAC迁移功能是指,允许在线的802.1X用户或MAC地址认证用户移动到设备的其它端口上接入后可以重新认证上线。缺省情况下,如果用户从某一端口上线成功,则该用户在未从当前端口下线的情况下无法在设备的其它端口上(无论该端口是否与当前端口属于同一VLAN)发起认证,也无法上线。若开启了允许MAC地址迁移功能,则允许在线用户离开当前端口在设备的其它端口上(无论该端口是否与当前端口属于同一VLAN)发起认证。如果该用户在后接入的端口上认证成功,则当前端口会将该用户立即进行下线处理,保证该用户仅在一个端口上处于上线状态。如果服务器在线用户数已达到上限,将无法进行MAC地址迁移。
通常,不建议开启该功能,只有在用户漫游迁移需求的情况下建议开启此功能。
(1) 进入系统视图。
system-view
(2) 开启允许MAC迁移功能。
port-security mac-move permit
缺省情况下,允许MAC迁移功能处于关闭状态。
接口上开启授权失败用户下线功能后,当服务器下发的授权信息(目前仅支持ACL、User Profile)在设备上不存在或者设备下发授权信息失败时,设备将强制用户下线。该功能用于配合服务器上的用户授权控制策略,它仅允许接口上成功下发了授权信息的用户在线。
对于授权VLAN失败的情况,设备会直接让用户直接下线,与此功能无关。
(1) 进入系统视图。
system-view
(2) 开启授权失败用户下线功能。
port-security authorization-fail offline
缺省情况下,授权失败用户下线功能处于关闭状态,即授权失败后用户保持在线。
用户的接入VLAN可标识用户的接入位置,而在某些应用环境中,网络运营商需要使用接入设备发送给RADIUS服务器的NAS-Identifier属性值来标识用户的接入位置,因此接入设备上需要建立用户接入VLAN与指定的NAS-ID之间的绑定关系。这样,当用户上线时,设备会将与用户接入VLAN匹配的NAS-ID填充在RADIUS请求报文中的NAS-Identifier属性中发送给RADIUS服务器。
NAS-ID Profile可以在系统视图下或者接口视图下进行配置,接口上的配置优先,若接口上没有配置,则使用系统视图下的全局配置。
如果指定了NAS-ID Profile,则此Profile中定义的绑定关系优先使用;如果未指定NAS-ID Profile或指定的Profile中没有找到匹配的绑定关系,则使用设备名作为NAS-ID。
NAS-ID与VLAN的绑定关系的配置请参考“用户接入与认证配置指导”中的“AAA”。
(1) 进入系统视图。
system-view
(2) 在系统视图或接口视图下指定引用的NAS-ID Profile。
¡ 系统视图下指定引用的NAS-ID Profile。
port-security nas-id-profile profile-name
¡ 依次执行以下命令在接口视图下指定引用的NAS-ID Profile。
interface interface-type interface-number
port-security nas-id-profile profile-name
缺省情况下,未指定引用的NAS-ID Profile。
开启端口安全告警功能后,该模块会生成告警信息,用于报告该模块的重要事件。生成的告警信息将发送到设备的SNMP模块,通过设置SNMP中告警信息的发送参数,来决定告警信息输出的相关属性。有关告警信息的详细介绍,请参见“网络管理和监控配置指导”中的“SNMP”。
(1) 进入系统视图。
system-view
(2) 打开指定告警信息的开关。
snmp-agent trap enable port-security [ address-learned | dot1x-failure | dot1x-logoff | dot1x-logon | intrusion | mac-auth-failure | mac-auth-logoff | mac-auth-logon ] *
缺省情况下,所有告警信息的开关处于关闭状态。
在完成上述配置后,在任意视图下执行display命令可以显示配置后端口安全的运行情况,通过查看显示信息验证配置的效果。
操作 |
命令 |
显示端口安全的配置信息、运行情况和统计信息 |
display port-security [ interface interface-type interface-number ] |
显示安全MAC地址信息 |
display port-security mac-address security [ interface interface-type interface-number ] [ vlan vlan-id ] [ count ] |
显示阻塞MAC地址信息 |
display port-security mac-address block [ interface interface-type interface-number ] [ vlan vlan-id ] [ count ] |
无法设置端口的端口安全模式。
在当前端口的端口安全模式已配置的情况下,无法直接对端口安全模式进行设置。
首先设置端口安全模式为noRestrictions状态,再设置新的端口安全模式。
[Device-GigabitEthernet1/0/1] undo port-security port-mode
[Device-GigabitEthernet1/0/1] port-security port-mode autolearn
无法配置安全MAC地址。
端口安全模式为非autoLearn时,不能对安全MAC地址进行设置。
设置端口安全模式为autoLearn状态。
[Device-GigabitEthernet1/0/1] undo port-security port-mode
[Device-GigabitEthernet1/0/1] port-security max-mac-count 64
[Device-GigabitEthernet1/0/1] port-security port-mode autolearn
[Device-GigabitEthernet1/0/1] port-security mac-address security 1-1-2 vlan 1
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!