背景
- 企业要求接入层交换机上每个连接终端设备的接口均只允许一台pc接入网络(限制MAC地址接入数量)。如果有员工试图在某个接口下级联一台交换机或者路由器,那么这种行为应该被发现或者禁止。
- 另一些企业还可能会要求只有MAC地址为可信任的终端发送的数据帧才允许被交换机转发到上层网络,员工不能私自更换位置(变更交换机的接入端口)。
- 通过交换机的端口安全(port security)特性可以解决这些问题。
端口安全概述
- 通过在交换机的特定接口上部署端口安全,可以限定接口的MAC地址学习数量,并且配置出现越限时的惩罚措施。
- 端口安全通过将接口学习到的动态MAC地址转换为安全MAC地址(包括安全动态MAC,安全静态MAC和sticky MAC),阻止非法用户通过接口和交换机通信,从而增强设备的安全性。
端口安全技术原理
端口安全配置命令
1、使能端口安全功能
接口模式下:port-security enable//缺省情况下,未使能端口安全功能
2、配置端口安全动态MAC学习限制数量
接口模式下:port-security max-max-num max-number //缺省情况下,接口学习的安全MAC地址限制数量为1
3、手工配置安全静态MAC地址表项
接口模式下:port-security mac-address mac-address vlan vlan-id
4、配置端口安全保护动作
端口模式下:port-security protect-action {protect|restrict|shutdown} //缺省情况下,端口安全保护动作为restrict
5、配接口学习到的安全动态MAC地址的老化时间
接口模式下:port-security aging-time time [type{absolute|inactivity}] //缺省情况下,接口学习的安全动态MAC地址不老化
6、使能接口Sticky MAC功能
接口模式下:port-security mac-address sticky //缺省情况下,接口未使能sticky MAC功能
7、配置接口Sticky MAC学习限制数量
接口模式下:port-security max-mac-num max-number //缺省数量为1
8、手工配置一条sticky-mac表项
接口模式下:port-security mac-address sticky mac-address vlan vlan-id
配置实例
[sw1]display current-configuration
#
sysname sw1
#
vlan batch 10 20
#
cluster enable
ntdp enable
ndp enable
#
drop illegal-mac alarm
#
dhcp enable
#
diffserv domain default
#
drop-profile default
#
ip pool dhcpvlan10
gateway-list 10.1.1.1
network 10.1.1.0 mask 255.255.255.0
dns-list 8.8.8.8
#
aaa
authentication-scheme default
authorization-scheme default
accounting-scheme default
domain default
domain default_admin
local-user admin password simple admin
local-user admin service-type http
#
interface Vlanif1
#
interface Vlanif10
ip address 10.1.1.1 255.255.255.0
dhcp select global
#
interface MEth0/0/1
#
interface GigabitEthernet0/0/1
port link-type access
port default vlan 10
port-security enable
port-security protect-action shutdown
port-security max-mac-num 5
#
interface GigabitEthernet0/0/2
port link-type access
port default vlan 10
#
interface GigabitEthernet0/0/3
port link-type access
port default vlan 10
#
interface GigabitEthernet0/0/4
#
interface GigabitEthernet0/0/5
#
interface GigabitEthernet0/0/6
#
interface GigabitEthernet0/0/7
#
interface GigabitEthernet0/0/8
#
interface GigabitEthernet0/0/9
#
interface GigabitEthernet0/0/10
#
interface GigabitEthernet0/0/11
#
interface GigabitEthernet0/0/12
#
interface GigabitEthernet0/0/13
#
interface GigabitEthernet0/0/14
#
interface GigabitEthernet0/0/15
#
interface GigabitEthernet0/0/16
#
interface GigabitEthernet0/0/17
#
interface GigabitEthernet0/0/18
#
interface GigabitEthernet0/0/19
#
interface GigabitEthernet0/0/20
#
interface GigabitEthernet0/0/21
#
interface GigabitEthernet0/0/22
#
interface GigabitEthernet0/0/23
#
interface GigabitEthernet0/0/24
#
interface NULL0
#
user-interface con 0
idle-timeout 0 0
user-interface vty 0 4
#
return
[sw1]