原理篇 :局域网安全的实现
Port security 端口安全、
端口安全是对接入行为的一中控制,一般情况下,一个交换机的端口连接一台主机,即一个端口就应该对一个mac地址,如果一个端口上出现了2个mac地址,我们可以通过端口安全来限制一个接口上最大容纳多少mac地址以及声明哪个主机的mac可以连接这个接口。
交换机可以对非法接入端口的处理方式有三种:
protect:当已经超过所允许学习的最大mac地址数时,交换机将继续工作,但是会把来自新主机的数据帧丢弃,不发任何警告信息。
restrict :当发生安全违规时,交换机将继续工作,非法的数据通信仍然可以继续,但是回向控制台发告警信息。
shutdown:是指关闭端口为err-disable状态,除非管理员可以再全局配置模式下使用errdisable recovery将接口从错误状态中恢复过来,也可以直接进入接口重新激活接口。
注意:因为安全违规造成端口被关闭后,管理员可以再全局配置模式下使用errdisable recovery 将接口从错误状态中恢复过来,也可以直接进入接口重新激活接口。
静态学习Mac:静态方式,通过命令配置,存储在mac地址表中,增加到交换机的running config中。
动态学习Mac:动态学习Mac地址,这些地址仅存放在Mac地址表中,交换机重启或接口shutdown时会被移除。
sticky方式学习Mac:可以动态或者是手动配置,存储在mac地址表中,同时会增加到running config中,交换机重启时接口不需要动态的重新配置。
交换机的某个接口连接了一台电脑,这台电脑的主人是一个attacker,它可以用某些软件
发了好多的帧,里面包含了10000个mac地址,而交换机的mac地址表是有限的,可以通过show sdm prefer 可以查看交换机的可接收的单播mac地址才5000个,此时mac地址表满了之后,不能再有新的帧进来了,其实mac地址表空间满了和空的mac地址表没什么区别,空的时候来一个帧就会范洪,网络带宽都被占用了,此时你的交换机的CPU利用率会很高<通过show process cpu查看>。此时你交换机就变成了hub了,那这种情况怎么阻止呢?
命令:
interface f0/1
switchport mode access
switchport port-security
switchport port-security maximum 1
switchport port-security mac-address sticky
switchport port-security violation shutdown
交换机的端口安全属于数据链路层安全策略,也是企业网络接入控制方案中的一种,他可以有效的限制非法桌面计算机的接入,也可以有效的防御mac地址泛洪攻击。主要的功能是:限制一个交换机物理端口的最大mac数据,设定合法的接入主机的mac地址,制定违反端口安全策略后的行为。需要注意的是在配置交换机的端口安全之前必须声明端口的模式,比如:switchport mode access,端口安全不能被应用到动态协商的端口模式中。
看一下拓扑:
测试连通性
2950交换机的端口安全配置情况
interface f0/1
switchport mode access
switchport port-security
switchport port-security maximum 4
switchport port-security mac-address 0060.5cc6.aab4
switchport port-security violation shutdown
intface f0/2
switchpport mode access
switchport port-security maximum 4
switchport port-security mac-address sticky
switchport port-security violation restrict
查看show run 信息 ,发现没有f0/1的违规策略,只有f0/2的违规策略
因为f0/1的违规策略是shutdwon,是默认的策略,所以在show run信息中没有体现,可以查看show Port-security
这样就可以查看到了。
也可以通过以下方式查看端口的安全配置
更改PC7的mac地址,查看交换机f0/1的情况,接口进入down状态,
提示f0/1接口已经down了,违规记录为:1
在HUB上再连接一台pc ,配置iP地址,会发现PC8与其他主机的通信是没有问题的,会向控制台发送违规记录。