安全技术(五):MAC地址认证

集中式MAC地址认证简介:

集中式MAC地址认证是一种基于端口和MAC地址对用户访问网络的权限进行控制的认证方法,它不需要用户安装任何客户端软件,交换机在首次检测到用户的MAC地址以后,即启动对该用户的认证操作。
集中式MAC地址认证有两种方式:
1.MAC地址方式:使用用户的MAC地址作为认证时的用户名和密码。
2.固定方式:使用在交换机上预先配置用户名和密码进行认证。此时,要求所有用户都和交换机上配置的用户名和密码一一对应。
S2000-HI系列以太网交换机支持通过RADIUS服务器或通过本地进行集中式MAC地址认证。
(1) 当采用RADIUS服务器进行认证时,交换机作为RADIUS客户端,与RADIUS服务器配合完成集中式MAC地址认证操作:
1.对于MAC地址方式,交换机将检测到的用户MAC地址作为用户名和密码发送给RADIUS服务器,其余处理过程与普通RADIUS认证相同。
2.对于固定方式,交换机将已经在本地配置的用户名和密码作为待认证用户的用户名和密码,发送给RADIUS服务器,并将RADIUS报文的calling-station-id属性更改为用户的MAC地址,其余处理过程与普通RADIUS认证相同。
3.RADIUS服务器完成对该用户的认证后,认证通过的用户可以访问网络。
(2) 当采用本地认证时,直接在交换机上完成对用户的认证。在交换机上配置本地用户名和密码时请注意:
1. 对于MAC地址方式,用户可以通过命令设置输入作为用户名、密码的MAC地址时是否使用分隔符“-”,输入的格式要与命令设置的格式相同,否则会导致认证失败。
2.对于固定方式,本地用户的用户名和密码配置成固定方式的用户名和密码即可。

3.本地用户的服务类型应设置为lan-access。

MAC 地址认证定时器:

MAC 地址认证过程受以下定时器的控制:
(1)下线检测定时器(offline-detect):用来设置交换机检查用户是否已经下线的时间间隔。当检测到用户下线后,交换机立即通知RADIUS 服务器,停止对该用户的计费。
(2)静默定时器(quiet):用来设置用户认证失败以后,该用户需要等待的时间间隔。在静默期间,交换机不处理该用户的认证功能,静默之后交换机再重新对用户发起认证。
(3)服务器超时定时器(server-timeout):用来设置交换机同RADIUS 服务器的连接超时时间。在用户的认证过程中,如果服务器超时定时器超时,则此次认证失败。

静默MAC:
当一个MAC 地址认证失败后,此MAC 就被设置为静默MAC。在静默定时器时长之内,对来自此MAC 地址的数据报文,交换机直接做丢弃处理。静默MAC 的功能主要是防止非法MAC 短时间内的重复认证。

MAC 地址认证基本功能配置:

image

image

注意:

1.如果端口开启了MAC 地址认证,则不能配置该端口的最大MAC 地址学习个数(通过命令mac-address max-mac-count 配置),反之,如果端口配置了最大MAC 地址学习个数,则禁止在该端口上开启MAC 地址认证。
2.如果开启了 MAC 地址认证,则不能配置端口安全(通过命令port-security enable 配置),反之,如果配置了端口安全,则禁止在该端口上开启MAC 地址认证。
3.各端口的 MAC 地址认证状态在全局开启之前可以配置,但不会生效;在全局MAC 地址认证开启后,已使能MAC 地址认证的端口将立即开始进行认证操作。

MAC 地址认证增强功能配置:

 

image

配置端口下MAC 地址认证用户的最大数量:

image

MAC 地址认证配置显示和维护:

image

MAC 地址认证配置举例:

组网需求

如 图1-1所示,某用户的工作站与以太网交换机的端口Ethernet1/0/2 相连接。
1.交换机的管理者希望在端口 Ethernet1/0/2 上对用户接入进行MAC 地址认证,以控制用户对Internet 的访问。
2.所有用户都属于域:aabbcc.net,认证时使用本地认证的方式。用户名和密码都为PC 的MAC地址:00-0d-88-f6-44-c1

组网图:

image

配置步骤:

# 开启指定端口Ethernet 1/0/2 的MAC 地址认证特性。
<Sysname> system-view
[Sysname] mac-authentication interface Ethernet 1/0/2
# 配置采用MAC 地址用户名进行认证,并指定使用带有分隔符的小写形式的MAC 地址作为验证的用户名和密码。
[Sysname] mac-authentication authmode usernameasmacaddress usernameformat with-hyphen
lowercase
# 添加本地接入用户。
配置本地用户的用户名和密码。
[Sysname] local-user 00-0d-88-f6-44-c1
[Sysname-luser-00-0d-88-f6-44-c1] password simple 00-0d-88-f6-44-c1
设置本地用户服务类型为 lan-access。
[Sysname-luser-00-0d-88-f6-44-c1] service-type lan-access
[Sysname-luser-00-0d-88-f6-44-c1] quit
# 创建MAC 地址认证用户所使用的域aabbcc.net。
[Sysname] domain aabbcc.net

New Domain added.
# 配置域aabbcc.net 采用本地认证方式。
[Sysname-isp-aabbcc.net] scheme local
[Sysname-isp-aabbcc.net] quit
# 配置MAC 地址认证用户所使用的域名为aabbcc.net。
[Sysname] mac-authentication domain aabbcc.net
# 开启全局MAC 地址认证特性(接入控制相关特性一般将全局配置开启放在最后,否则相关参数未配置完成,会造成合法用户无法访问网络)。
[Sysname] mac-authentication
此时,MAC 地址认证生效,只允许MAC 地址为00-0d-88-f6-44-c1 的用户通过端口Ethernet1/0/2访问网络。

使用RADIUS 服务器进行MAC 地址认证:

组网需求:

如 图1-3所示,用户主机Host通过端口GigabitEthernet1/0/1 连接到设备上,设备通过RADIUS服务器对用户进行认证、授权和计费。
1.设备的管理者希望在端口 GigabitEthernet1/0/1 上对用户接入进行MAC 地址认证,以控制其对Internet 的访问。
2. 要求设备每隔 180 秒就对用户是否下线进行检测;并且当用户认证失败时,需等待180 秒后才能对用户再次发起认证。
3.所有用户都属于域 2000,认证时采用固定用户名格式,用户名为aaa,密码为123456。

image

配置步骤:

配置使用RADIUS 服务器进行MAC 地址认证
# 配置RADIUS 方案。
<Device> system-view
[Device] radius scheme 2000
[Device-radius-2000] primary authentication 10.1.1.1 1812
[Device-radius-2000] primary accounting 10.1.1.2 1813
[Device-radius-2000] key authentication abc
[Device-radius-2000] key accounting abc
[Device-radius-2000] user-name-format without-domain
[Device-radius-2000] quit
# 配置ISP 域的AAA 方法。
[Device] domain 2000
[Device-isp-2000] authentication default radius-scheme 2000
[Device-isp-2000] authorization default radius-scheme 2000
[Device-isp-2000] accounting default radius-scheme 2000
[Device-isp-2000] quit

# 开启全局MAC 地址认证特性。
[Device] mac-authentication
# 开启端口GigabitEthernet1/0/1 的MAC 地址认证特性。
[Device] mac-authentication interface gigabitethernet 1/0/1
# 配置MAC 地址认证用户所使用的ISP 域。
[Device] mac-authentication domain 2000
# 配置MAC 地址认证的定时器。
[Device] mac-authentication timer offline-detect 180
[Device] mac-authentication timer quiet 180
# 配置MAC 地址认证使用固定用户名格式:用户名为aaa,密码为123456。
[Device] mac-authentication user-name-format fixed account aaa password simple 123456


 

安全技术(六):arp地址解析

ARP简介:

ARP(Address Resolution Protocol,地址解析协议)用于将网络层的IP地址解析为数据链路层的物理地址(MAC地址)。

ARP地址解析的必要性:

网络设备进行网络寻址时只能识别数据链路层的MAC地址,不能直接识别来自网络层的IP地址。如果要将网络层中传送的数据报交给目的主机,必须知道该主机的MAC地址。因此网络设备在发送报文之前必须将目的主机的IP地址解析为它可以识别的MAC地址。

ARP地址解析的实现过程:

在主机启动时,主机上的ARP映射表为空;当一条动态ARP映射表项在规定时间没有使用时,主机将其从ARP映射表中删除掉,以便节省内存空间和ARP映射表的查找时间。具体过程可以参考图1-3。

(1)假设主机A和主机B在同一个网段,主机A的IP地址为IP_A,B的IP地址为IP_B,主机A要向主机B发送信息。主机A首先查看自己的ARP映射表,确定其中是否包含有IP_B对应的ARP映射表项。如果找到了对应的MAC地址,则主机A直接利用ARP映射表中的MAC地址,对IP数据包进行帧封装,并将数据发送给主机B。
(2)如果在ARP映射表中找不到对应的MAC地址,则主机A将该数据包放入发送等待队列,然后创建一个ARP request,并以广播方式在以太网上发送。ARP request数据包中包含有主机B的IP地址,以及主机A的IP地址和MAC地址。由于ARP request数据包以广播方式发送,该网段上的所有主机都可以接收到该请求,但只有被请求的主机(即主机B)会对该请求进行处理。

(3)主机B首先把ARP request数据包中的请求发起者(即主机A)的IP地址和MAC地址存入自己的ARP映射表中。然后主机B创建ARP响应数据包,在数据包中填入主机B的MAC地址,发送给主机A。这个响应不再以广播形式发送,而是以单播形式直接发送给主机A。
(4)主机A收到响应数据包后,提取出主机B的IP地址及其对应的MAC地址,加入到自己的ARP映射表中,并把放在发送等待队列中的发往主机B的所有数据包都发送出去。

image

配置ARP:

image

手工添加静态ARP映射项:

image

配置动态ARP老化定时器的时间:

image

使能ARP表项的检查功能:

image

应用案例:

假设IP地址10.1.1.2;MAC地址0009.6bc4.d4bf

1、IP+MAC+端口绑定流程

三层交换机中目前只有S3526系列支持使用AM命令来进行IP地址和端口的绑定。并且如果S3526系列交换机要采用AM命令来实现绑定功能,则交换机必须是做三层转发(即用户的网关应该在该交换机上)。

2、采用DHCP-SECURITY来实现

1.配置端口的静态MAC地址

[SwitchA]mac-address static 0009.6bc4.d4bf interface e0/1 vlan 1

2.配置IP和MAC对应表

[SwitchA]dhcp-security 10.1.1.2 0009.6bc4.d4bf static

3.配置dhcp-server组号(否则不允许执行下一步,此dhcp-server组不用在交换机上创建也可)

[SwitchA-Vlan-interface1]dhcp-server 1

4. 使能三层地址检测

[SwitchA-Vlan-interface1]address-check enable

3、采用AM命令来实现

1.使能AM功能

[SwitchA]am enable

2.进入端口视图

[SwitchA]vlan 10

3. 将E0/1加入到vlan10

[SwitchA-vlan10]port Ethernet 0/1

4.创建(进入)vlan10的虚接口

[SwitchA]interface Vlan-interface 10

5.给vlan10的虚接口配置IP地址

[SwitchA-Vlan-interface10]ip add 10.1.1.1 255.255.255.0

6.进入E0/1端口

[SwitchA]interface Ethernet 0/1

7. 该端口只允许起始IP地址为10.1.1.2的10个IP地址上网

[SwitchA-Ethernet0/1]am ip-pool 10.1.1.2 10

 

ARP 防***配置举例:

1. 组网需求
Switch1 是S9500 系列交换机,通过端口Ethernet 1/1/1 和端口Ethernet 1/1/2连接低端交换机Switch2 和Switch3。Switch1 下挂PC1、Switch2 下挂PC2、PC3,且PC2、PC3 属于同一个网段;Switch3 下挂PC4、PC5,且PC4、PC5 同属于另外一个网段。PC1 中病毒后,会发出大量ARP ***报文,部分ARP 报文源IP 地址在本网段内不停变化,部分ARP 报文源IP 和网关IP 地址相同;PC4 用户构造大量源MAC 地址固定的ARP 报文对网络进行***。Switch1 能够防止PC1 和PC4的***。

组网图:

image

配置步骤:

# 进入系统视图。
<Switch1> system-view
# 配置ARP 地址欺骗防***方式为send-ack 方式,防止PC1 发起的ARP 地址欺骗。
[Switch1] arp entry-check send-ack
# 使能ARP 网关冲突防***功能,防止PC1 发起的伪造网关地址***。
[Switch1] anti-attack gateway-duplicate enable
# 使能ARP 报文防***功能,防止PC4 发起的大流量ARP 报文***。
[Switch1] anti-attack arp enable
# 配置ARP 报文防***报文的检测阈值为40pps。
[Switch1] anti-attack arp threshold 40
# 配置ARP 报文防***的表项老化时间为300 秒。
[Switch1] anti-attack arp aging-time 300
# 配置ARP 报文防***的保护MAC 地址为0-0-1。
[Switch1] anti-attack arp exclude-mac 0-0-1
配置完成后,可以通过display current 命令查询当前ARP 防***配置情况。同时,还可以通过display anti-attack 命令查看当前网络中存在的网关地址冲突***和源
MAC 地址固定的ARP 报文***的信息。
需要说明的是:

1.配置 ARP 地址欺骗防***功能后,在存在***的情况下,交换机的CPU 的占用率将升高,可能导致其处理速度变慢;

2.网关地址冲突防***可以防止在交换机某个端口收到网关地址冲突报文后不转发到其他端口,但是该端口下挂的用户依然存在被***的风险;
3.启用网关地址冲突防***和 ARP 报文防***功能后,交换机不但可以隔离***者,而且可以阻止其无法正常使用网络资源。