诡秘的"端口安全"功能 端口安全原理


诡秘的"端口安全"功能 端口安全原理

文章插图
我们经常听说“端口安全”功能是如何强大,应用如何灵活,但我们很少人系统地对“端口安全”功能有一个比较系统的了解 。Cisco IOS交换机中的端口安全(Port security)功能可以使你限制在端口上使用的MAC地址(称之为“安全MAC地址”),或者MAC地址范围,或者最大安全地址数,以实现阻止未授权MAC地址的用户访问,当然它的应用方式很灵活 。本篇仅介绍其基本简介,详细的介绍参见《Cisco/H3C交换机高级醘与管理技术手册》一书 。
【说明】以下内容摘自笔者编著的 , 新市的《Cisco/H3C交换机高级配置与管理技术手册》一书 。其姊妹篇《Cisco/H3C交换机配置与管理完全手册》(第二版)(目前当当网和卓越网上最低为震撼的63折)实际时间仅用了三个多月就已实现重印,感谢各位的大力支持!!
15.3.1 端口安全功能简介
Cisco IOS交换机的端口安全功能允许你通过配置静态安全MAC地址实现仅允许固定设备连接,也允许你在一个端口上配置一个最大的安全MAC地址数,仅允许在此数之前识别到的设备连接在该端口上 。当超过了所设置的最大安全端口数 , 将触发一个安全违例事件,在端口上配置的一个基于违例行为模式的违例行为将被执行 。如果你在某个端口上配置的最大安全MAC地址数为1,则设备上的该安全端口仅允许与固定设备连接 。如果一个安全MAC地址在一个端口上进行了安全绑定,则这个MAC地址不能进入该端口加入的VLAN以外的任何其他端口 , 否则包将在硬件层被悄悄地丢弃 。
1. 端口安全功能支持的安全MAC地址类型
Cisco IOS交换机端口安全功能支持以下几种安全MAC地址类型:
l 动态或者学习类型:动态安全MAC地址是在接收到连接在安全端口上主机发来的包时学习到的 。在用户的MAC地址不固定时(如网络用户使用的经常移动的便携式电脑,如笔记本电脑),你可以使用此种类型 。
l 静态或配置类型:静态安全MAC地址是用户通过CLI或者SNMP配置的MAC地址 。在你的MAC地址保持固定时(如用户使用的是PC机),可以使用这种类型 。
l 粘性(Sticky)类型:粘性安全MAC地址也是像动态安全MAC地址一样,是通过学习得到的,但是它是交换机重启后仍然有效,又有点像静态安全MAC地址那样 。在存在大量固定MAC地址,而且你又不想手动配置这些安全MAC地址时,就可以使用这种类型 。
如果一个端口已达到了它最大的安全MAC地址数,而你又想配置一个静态安全MAC地址 , 此时会被拒绝的 , 并显示一个错误提示 。如果一个端口已达到了它最大的安全MAC地址数 , 而又添加了一个新的动态安全MAC地址,则会触发一个违例行为 。
你可以使用clear port-security命令清除动态安全MAC地址,你可以使用no switchport port-security mac-address命令一次性清除粘性和静态安全MAC地址 。
2. 安全MAC地址的最大数
一个安全端口默认有一个安全MAC地址 。你可以改变这个默认值在1~3000之间 。当你在一个端口上设置最大安全MAC数后,你可以以下任一方式在地址表中包括这些安全MAC地址:
l 你可以使用switchport port-security mac-address mac_address接口配置模式命令配置安全MAC地址 。
l 你可以通过port-security mac-address VLAN范围配置命令在中继端口上一个范围VLAN中配置所有安全MAC地址 。
l 你可以允许端口用所连接设备的MAC地址动态配置安全MAC地址 。
l 你可以静态配置一些安全MAC地址,而允许其余的安全MAC地址动态配置(如果端口链路关闭,则该端口上所有动态安全MAC地址将不再是安全的) 。
l 你可以MAC地址为粘性的(sticky) 。这些安全MAC地址可以动态学习,也可以手动配置,然后保存在MAC地址表中,并添加到运行配置文件中 。然后这些地址会保存在交换机的启动配置文件中 , 在交换机重启后,接口不用再重新学习 。虽然你可以手动配置粘性安全MAC地址,但这种做法是不建议的 。
【经验之谈】在一个中继端口上,最大的安全MAC地址数可以基于端口和基于端口VLAN来配置 。端口上配置的最大安全MAC地址数可以大于或等于(不能小于)端口VLAN上配置的最大安全MAC地址数 。如果端口上配置的最大安全MAC地址数小于端口VLAN上配置的最大安全MAC地址数(例如VLAN 10上设置的最大安全MAC地址为3,而端口的最大安全MAC地址数采用默认的1),则在端口VLAN上的安全MAC地址数超过端口上设置的最大安全MAC地址数时,端口就将被关闭 。

推荐阅读