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地址对应的映射表。端口获得的ip和mac地址将匹配该表,不符合则丢弃该端口发送的数据包。

实现方法:

Switch#config terminal

Switch(config)#arp 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-F5-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地址来限制端口流量,此配置允许一接口最多通过100个MAC地址,超过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-F5-10-79-C1 vlan 2 drop

/在相应的Vlan丢弃流量。

  3550-1#conf t

  3550-1(config)#mac-address-table static 00-90-F5-10-79-C1 vlan 2 int f0/1

/在相应的接口丢弃流量。

你可以配置接口的三种违规模式

·protect:

当mac地址的数量达到了这个端口所最大允许的数量,带有未知的源地址的包就会被丢弃,直到删除了足够数量的mac地址,来降下最大数值之后才会不丢弃。

·restrict:

一个限制数据和并引起"安全违规"计数器的增加的端口安全违规动作。

·shutdown:

一个导致接口马上shutdown,并且发送SNMP陷阱的端口安全违规动作。当一个安全端口处在error-disable状态,你要恢复正常必须得敲入全局下的errdisable recovery cause psecure-violation 命令,或者你可以手动的shut再no shut端口。这个是端口安全违规的默认动作。

默认的端口安全配置:

以下是端口安全在接口下的配置-

特性:port-sercurity 默认设置:关闭的。

特性:最大安全mac地址数目 默认设置:1

特性:违规模式 默认配置:shutdown,这端口在最大安全mac地址数量达到的时候会shutdown,并发snmp陷阱。

配置向导:

下面是配置端口安全的向导-

·安全端口不能在动态的access口或者trunk口上做,换言之,敲port-secure之前必须的是switch mode acc之后。

·安全端口不能是一个被保护的口。

·安全端口不能是SPAN的目的地址。

·安全端口不能属于GEC或FEC的组。

·安全端口不能属于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地址绑定关系