端口安全(Port-Security

 
1 Cisco29系列交换机可以做基于2层的端口安全,即mac地址与端口进行绑定。
2 Cisco3550以上交换机均可做基于2层和3层的端口安全,即mac地址与端口绑定以及mac地址与ip地址绑定。
3、以cisco3550交换机为例
 做mac地址与端口绑定的可以实现两种应用:
a、设定一端口只接受第一次连接该端口的计算机mac地址,当该端口第一次获得某计算机mac地址后,其他计算机接入到此端口所发送的数据包则认为非法,做丢弃处理。

  b、设定一端口只接受某一特定计算机mac地址,其他计算机均无法接入到此端口。

   4、破解方法:网上前辈所讲的破解方法有很多,主要是通过更改新接入计算机网卡的mac地址来实现,但本人认为,此方法实际应用中基本没有什么作用,原 因很简单,如果不是网管,其他一般人员平时根本不可能去注意合法计算机的mac地址,一般情况也无法进入合法计算机去获得mac地址,除非其本身就是该局 域网的用户。
 
5、实现方法:
针对第3条的两种应用,分别不同的实现方法
a、  接受第一次接入该端口计算机的mac地址:
Switch#config terminal
Switch(config)#interface interface-id 进入需要配置的端口
Switch(config-if)#switchport mode access 设置为交换模式
Switch(config-if)#switchport port-security 打开端口安全模式
Switch(config-if)#switchport port-security violation {protect | restrict | shutdown }
//针对非法接入计算机,端口处理模式{丢弃数据包,不发警告 | 丢弃数据包,在console发警告 | 关闭端口为err-disable状态,除非管理员手工激活,否则该端口失效。
b、  接受某特定计算机mac地址:
Switch#config terminal
Switch(config)#interface interface-id
Switch(config-if)#switchport mode access
Switch(config-if)#switchport port-security
Switch(config-if)#switchport port-security violation {protect | restrict | shutdown }
//以上步骤与a
Switch(config-if)#switchport port-security mac-address sticky
Switch(config-if)#switchport port-security aging static //打开静态映射
Switch(config-if)#switchport port-security mac-address sticky XXXX.XXXX.XXXX
//为端口输入特定的允许通过的mac地址
mac 地址与 ip 地址绑定基本原理:
在交换机内建立mac地址和ip地址对应的映射表。端口获得的ipmac地址将匹配该表,不符合则丢弃该端口发送的数据包。
实现方法:
Switch#config terminal
Switch(config)#ar p 1.1.1 .1 0001.0001.1111 arpa
该配置的主要注意事项:需要将网段内所有IP都建立MAC地址映射,没有使用的IP地址可以与0000.0000.0000建立映射。否则该绑定对于网段内没有建立映射的IP地址无效。
最常用的对端口安全的理解就是可根据MAC地址来做对网络流量的控制和管理,比如MAC地址与具体的端口绑定,限制具体端口通过的MAC地址的数量,或者 在具体的端口不允许某些MAC地址的帧流量通过。稍微引申下端口安全,就是可以根据802.1X来控制网络的访问流量。
首先谈一下MAC地址与端口绑定,以及根据MAC地址允许流量的配置。
1.MAC地址与端口绑定,当发现主机的MAC地址与交换机上指定的MAC地址不同时,交换机相应的端口将down掉。当给端口指定MAC地址时,端口模式必须为access或者Trunk状态。
3550-1#conf t
  
3550-1(config)#int f0/1
  3550-1(config-if)#switchport mode access /指定端口模式。

  3550-1(config-if)#switchport port-security mac-address 00-90-F 5-10-79 -C1
/配置MAC地址。
  3550-1(config-if)#switchport port-security maximum 1
/限制此端口允许通过的MAC地址数为1
  3550-1(config-if)#switchport port-security violation shutdown
/当发现与上述配置不符时,端口down掉。
2.通过MAC地址来限制端口流量,此配置允许一接口最多通过100MAC地址,超过100时,但来自新的主机的数据帧将丢失。
  
3550-1#conf t
  
3550-1(config)#int f0/1
  
3550-1(config-if)#switchport mode  access
  3550-1(config-if)#switchport port-security maximum 100 /允许此端口通过的最大MAC地址数目为100

  3550-1(config-if)#switchport port-security violation protect /当主机MAC地址数目超过100时,交换机继续工作,但来自新的主机的数据帧将丢失。
 
上面的配置根据MAC地址来允许流量,下面的配置则是根据MAC地址来拒绝流量
1.此配置在Catalyst交换机中只能对单播流量进行过滤,对于多播流量则无效。
  
3550-1#conf t
  3550-1(config)#mac-address-table static 00-90-F 5-10-79 -C1 vlan 2 drop
/在相应的Vlan丢弃流量。
  
3550-1#conf t
  3550-1(config)#mac-address-table static 00-90-F 5-10-79 -C1 vlan 2 int f0/1
/在相应的接口丢弃流量。
 
 
你可以配置接口的三种违规模式:
·protect:
mac地址的数量达到了这个端口所最大允许的数量,带有未知的源地址的包就会被丢弃,直到删除了足够数量的mac地址,来降下最大数值之后才会不丢弃。
·restrict:
一个限制数据和并引起"安全违规"计数器的增加的端口安全违规动作。
·shutdown:
一个导致接口马上shutdown,并且发送SNMP陷阱的端口安全违规动作。当一个安全端口处在error-disable状态,你要恢复正常必须得 敲入全局下的errdisable recovery cause psecure-violation 命令,或者你可以手动的shutno shut端口。这个是端口安全违规的默认动作。
默认的端口安全配置:
以下是端口安全在接口下的配置 -
特性:port-sercurity  默认设置:关闭的。

特性:最大安全mac地址数目 默认设置: 1
特性:违规模式  默认配置:shutdown,这端口在最大安全mac地址数量达到的时候会shutdown,并发snmp陷阱。
配置向导:
下面是配置端口安全的向导 -
·
安全端口不能在动态的access口或者trunk口上做,换言之,敲port-secure之前必须的是switch mode acc之后。
·安全端口不能是一个被保护的口。
·
安全端口不能是SPAN的目的地址。
·
安全端口不能属于GECFEC的组。
·
安全端口不能属于802.1x端口。如果你在安全端口试图开启802.1x,就会有报错信息,而且802.1x也关了。如果你试图改变开启了802.1x的端口为安全端口,错误信息就会出现,安全性设置不会改变。
配置案例:
1.f0/12上最大mac地址数目为5的端口安全,违规动作为默认。
switch#config t
Enter configuration commands, one per line.  End with CNTL/Z.
switch(config)#int f0/12
switch(config-if)#swi mode acc
switch(config-if)#swi port-sec
switch(config-if)#swi port-sec max 5
switch(config-if)#end
switch#show port-sec int f0/12
Security Enabled:Yes, Port Status:SecureUp
Violation Mode:Shutdown
Max. Addrs:5, Current Addrs:0, Configure Addrs:0
 
2.
如何配置f0/12安全mac地址
switch(config)#int f0/12
switch(config-if)#swi mode acc
switch(config-if)#swi port-sec
switch(config-if)#swi port-sec mac-add 1111.1111.1111
switch(config-if)#end
switch#show port-sec add
 Secure Mac Address Table
------------------------------------------------------------
 
Vlan    Mac Address       Type                Ports
----    -----------       ----                -----
   1    1000.2000.3000    SecureConfigured     Fa0/12
3.配置端口安全超时时间两小时。
switch(config)#int f0/12
switch(config)#swi port-sec aging time 120
4.端口安全超时时间2分钟,给配置了安全地址的接口,类型为inactivity aging
switch(config-if)#swi port-sec aging time 2
switch(config-if)#swi port-sec aging type inactivity
switch(config-if)#swi port-sec aging static
show port-security interface f0/12可以看状态.
其他 show
show port-security
看哪些接口启用了端口安全
.
show port-security address
看安全端口mac地址绑定关系.