校园网内部网络安全.docx
《校园网内部网络安全.docx》由会员分享,可在线阅读,更多相关《校园网内部网络安全.docx(10页珍藏版)》请在冰点文库上搜索。
校园网内部网络安全
校园网内部网络安全
摘要:
外部网络威胁尽管形势严峻,但来自内部网络本身的威胁有时却更难防范。
该文探讨如何发掘内部网络设备(主要为二三层交换机)的功能,防范来自内部网络的威胁。
这些威胁主要为非法DHCP服务器、ARP欺骗、用户私设IP地址、用户私接交换机、用户连接失误造成的网络环路等。
从网络设备层面杜绝这些威胁,会使内部网络本身更加“安静”,从而也更安全稳定流畅。
关键词:
网络设备安全;交换机;DHCP-SNOOPING;ARP-DETECTION;IP;MSTP
中图分类号:
TP393文献标识码:
A文章编号:
1009-3044(2014)17-4004-05
计算机网络对来自外部(internet)网络威胁的防范工作,主要由路由防火墙来完成。
不可否认,防范外部网络的威胁非常重要。
如何配置路由防火墙(及入侵检测系统等)来防范这些威胁,也已经形成很多固定的模式,介绍探讨这方面的文章书籍也不在少数。
不过来自内部网络的威胁同样不可小视,俗话说,堡垒最容易从内部攻破。
内部网络的威胁主要包括非法DHCP服务器、ARP欺骗、用户私设IP地址、用户私接交换机、用户连接失误造成的网络环路等。
有些是用户无意识的行为(例如ARP攻击,用户主机可能中了ARP病毒),但有些却有可能是有意为之(例如私设DHCP服务器,造成其他用户获取到错误的IP地址)。
这些威胁都能造成内部网络的不稳定,使用户的网络使用体验变差。
对于这些威胁的防范,路由防火墙通常无能为力。
但是,有一点,因为这些威胁是通过内部网络设备(主要为交换机)在用户主机之间形成干扰的,所以如果网络设备支持对这些威胁的防范(具有相应的功能),我们就能在用户级别掐灭这些干扰因素。
该文主要是基于此交换机层面,来对如何防范这些威胁作一些探讨。
我校校园网初期的网络设备主要来自北电(Nortel),因为是其较早时期的设备(2004年左右),所以基本上不具备对此类威胁的防范(尽管也可网管,但不具备这些功能)。
不过,于2011年1月份期间,我校将所有的网络设备都进行了更换,品牌主要为H3C。
当时厂商的技术人员仅仅是将校园网络调通,设备的很多安全功能并没有启用。
我在仔细阅读了相关的技术文档之后,发现这些设备均可对上述威胁做到有效防范,于是逐渐启用了这些功能。
该文也是对此过程中的一些心得体会,做一个归纳总结。
本校校园网络大致拓扑图如图1所示。
因为这些功能的启用主要是在交换机上进行,所以本文以核心交换机至1号楼主教学楼之间的交换机为例描述即可,如图2所示,图中以主教学楼中的5台交换机作为代表,其中s-build-1为汇聚层,另外4台为接入层,其余尚有十几台未在图中显示的也属于接入层。
其他楼层交换机相关的配置大致相同。
图1本校校园网络大致拓扑图
1防范非法DHCP服务器
用户如果私设DHCP服务器(不管是因为学习DHCP而无意的造成,还是有意的搞破坏),将会对其端口所属VLAN段中所有用户主机形成干扰。
我校在更换网络设备以前,常有这样的情况发生。
通过逐一查找交换机中的mac-address表,或许可以将其“抓住”,但这样太麻烦,严重增加管理工作量,而且是一种事后被动的防范措施。
而启用交换机的dhcp-snooping功能,可以轻松地实现对非法DHCP服务器的主动防范。
1.1Dhcp-snooping简要原理分析
Dhcp-snooping的原理比较简单。
客户端在与DHCP服务器获取IP地址的过程中,总共有4个阶段。
如果有非法DHCP服务器存在,客户端就可能接收到非法DHCP服务器的“DHCP-Offer”及“DHCP-ACK”消息,从而获取到错误的IP地址。
配置交换机的dhcp-snooping功能时,一般是将接入层和汇聚层交换机的上行端口设置为trust端口,其余端口默认为非trust,这样非法DHCP服务器的“DHCP-Offer”及“DHCP-ACK”消息将被隔离,不会被客户端接收到,从而起到了防范非法DHCP服务器的作用。
1.2配置交换机的dhcp-snooping功能
对应到本校图2中所示交换机的dhcp-snooping配置如下:
1)在系统视图模式下,启用主教学楼中所有接入层交换机的dhcp-snooping功能:
system-view//进入系统视图
dhcp-snooping//开启dhcp-snooping功能
2)将这些交换机的上行端口设置为trust端口,以s-teac-2交换机为例,配置如下:
interfaceGigabitEthernet1/1/1
dhcp-snoopingtrust//设置该端口为可信端口
启用dhcp-snooping功能是本文后续其他防范措施的前提和基础,这也是首先描述该功能的原因。
2防范ARP欺骗
曾经一段时期,防范ARP欺骗是一件令网络管理员非常头疼的事情。
一台中了ARP病毒的主机,常常会搅得整个网段中的主机不得安宁。
典型表现是用户感觉上网缓慢,且时断时续。
2.1防范ARP欺骗的原理分析
开启ARP入侵检测功能后,如果ARP报文中的源MAC地址、源IP地址、接收ARP报文的端口编号以及端口所在VLAN与DHCPSnooping表或手工配置的IP静态绑定表表项一致,则认为该报文是合法的ARP报文,进行转发,否则认为是非法ARP报文,直接丢弃。
2.2实施ARP欺骗防范的过程步骤
1)开启交换机ARP入侵检测功能
开启交换机ARP入侵检测功能的步骤如下(以图2中s-tea-2交换机为例,其余接入层交换机配置与之相似,汇聚层交换机s-build-1不作此配置):
?
开启dhcp-snooping功能(这是前提)
?
vlan11//进入到VLAN视图模式中
?
arpdetectionenable
注:
对属于该VLAN的所有端口启用ARP入侵检测。
如果交换机中还有有他vlan,则重复上述命令即可。
?
interfaceg1/1/1
?
arpdetectiontrust
注:
将上行接口设置为arp可信任端口,不对进入此接口的arp报文进行arp检测。
因为交换机要将ARP报文(不论是request还是reponse类型的)与dhcp-snooping表比较,所以这也意味着客户端主机需要设置为自动获取IP地址,否则不会在dhcp-snooping表中形成自己的记录,自身将无法正常通信。
这从另一个方面也可以起到防止用户私设IP地址的功效。
如果某端口下所接主机必需设置为静态IP地址(如电子显示屏、网络打印机等),只需将该端口设置为“arpdetectiontrust”即可。
2)保护网关
ARP欺骗的各种行为中,最喜欢的莫过于欺骗网关了。
这样同网段中被欺骗主机的流量都会统统流向自己,以方便盗取其他主机的隐私,这也正是其他主机感觉上网缓慢并时断时续的原因所在。
开启交换机ARP网关防护功能的步骤如下(以图2中s-tea-2交换机为例,其余同):
?
interfaceg1/1/1//进入接口视图模式(上行接口)
?
arpfilterbinding192.168.12.13ce5-a680-a342
?
arpfilterbinding192.168.28.13ce5-a680-a342
?
arpfilterbinding192.168.32.13ce5-a680-a342
注:
上述命令表明,凡进入该接口的ARP报文,其源IP地址及源MAC地址不符合上述绑定的,均将被丢弃。
经过实验证实,一个接口可以同时绑定最多8条。
注意H3C核心交换机为其所有VLAN虚接口IP地址(即为各网段主机的网关)提供的对应MAC地址都是一样的(此处为3ce5-a680-a342),也许它认为这样足够了,反正又不是属于同一个网段。
?
interfacee1/0/1//进入接口视图模式(各下行接口)
?
arpfiltersource192.168.12.1
注:
上述命令表明,进入接口e1/0/1的ARP报文,如果其源IP地址为192.168.12.1,则被认为是欺骗网关ARP报文,并被丢弃,因为该接口下不可能出现源IP地址为192.168.12.1的ARP报文。
对各接口均运行上述命令,注意命令中IP地址要与该接口所属的VLAN的虚接口IP地址相一致。
3)ARP报文限速
如果攻击者恶意构造大量ARP报文发往交换机的某一端口,会导致CPU负担过重,从而造成其他功能无法正常运行甚至设备瘫痪(类似DDOS)。
此时可以启用交换机的端口ARP报文限速功能,使受到攻击的端口暂时关闭,来避免此类攻击对CPU的冲击。
其配置步骤如下(以图2中s-tea-2交换机为例,其余同):
?
interfacee1/0/1//进入接口视图模式(各下行接口)
?
arprate-limitenable//启用arp限速
?
arprate-limit15//接口每秒接收的arp报文若超过15个,则丢弃后续的
注:
如果是汇聚层交换机的下行接口,可适当调高rate-limit的值(例如150,默认值为15)。
对各下行接口均运行上述命令
?
system-view//退回至系统视图模式
?
arpprotective-downrecoverenable
?
arpprotective-downrecoverinterval300
注:
上述命令表明,如果接口接收到的arp报文的速率超过rate-limit指定的值,该接口将自动关闭,并在300秒后自动开启。
当开启此功能后,校园网内确实有少数用户受到影响,这些用户的感觉是,电脑会莫名其妙地断网一段时间(其实大约就是5分钟了),然后又能连接上,然后又断开,如此反复。
经检查其系统确实有问题,经过杀毒等措施处理后,就正常了。
说明交换机此功能确实有效,并没有“冤枉”用户。
4)防御ARP洪泛攻击
此防范主要在三层核心交换机的vlan-interface上实施。
通过配置允许学习动态ARP表项的最大个数。
当该VLAN接口动态学习到的ARP表项超过限定的最大值后,将不进行动态地址表项的学习,从而防止某一VLAN内的恶意用户发动ARP泛洪攻击造成的危害。
开启交换机防御ARP洪泛攻击功能的步骤如下(此配置只在图2的核心交换机上进行):
?
interfaceVlan-interface11//进入到vlan-interface接口模式
?
arpmax-learning-num256//配置最大ARP学习表项为256
注:
如果与VLAN相应的IP段为C类(或更小),则学习表项最大值取256就足够了。
在核心交换机中对所有的vlan-interface运行上述命令。
5)开启ARP报文源MAC一致性检查
这是防范ARP欺骗报文的另一种有效措施。
在以太网中(绝大部分的局域网),ARP报文毕竟是要封装在以太网帧(ethernet-frame)中传递的。
正常ARP报文的源MAC地址应该与其外包裹的ethernet-frame中的源MAC地址相同,否则就是ARP欺骗报文。
这就是ARP报文源MAC一致性检查的原理。
其配置过程如下(以图2中s-tea-2交换机为例,其余同):
?
System-view//进入系统视图模式
?
arpanti-attackvalid-checkenable//开启ARP报文源MAC一致性检查
对于防范ARP欺骗,还有一种情况值得考虑,即接入层交换机属于非网管型交换机(或不支持上述功能),那么上述防范ARP欺骗的措施都无法施行了。
机房是这样的一个典型例子。
机房中的交换机大部分是简易不具备网管功能的。
事实上机房是被ARP欺骗骚扰最多的区域。
我对此的应对措施是:
多划分VLAN。
尽量每个机房分别对应一个VLAN(当然要在核心交换机上配置相应虚接口的IP地址)。
这样的话,即便出现ARP欺骗,也顶多影响到一个机房,其他机房不受影响,毕竟ARP伪造报文是按OSI第二层原理运行的。
缩小了范围,寻找ARP欺骗的源主机也不再是难事。
3防止用户私设IP地址
用户私设静态IP地址的后果可能是:
(1)造成IP地址冲突;
(2)破坏IP地址的分配原则;(3)IP地址设置错误,用户上不了网。
3.1原理简要分析
配置交换机,使其对进入其接口的任何数据包,都要与dhcp-snooping表相对比,若不符则丢弃。
用户主机若不设置自动获取IP,则不会在dhcp-snooping表中形成自身的IP地址表记录,因而数据报文肯定被丢弃!
3.2配置步骤
只在接入层交换机中实施,以图2中s-tea-2交换机为例,其余同:
?
开启dhcp-snooping功能(这是前提)
?
interfaceEthernet1/0/1//进入接口模式
?
ipchecksourceip-addressmac-address//启用源IP及MAC地址检查
注:
在所有需要启用的接口上运行上述命令。
若接口下所接主机需要静态IP地址,则不要启用。
4防止用户误操作形成环路
在图2中,主机pc-tea-1与主机pc-tea-5有可能在一个办公室,而且其主人可能就隔了一张办公桌。
如果一条网线就在这办公桌下,一端在pc-tea-1主人的办公桌处,另一端刚好在pc-tea-5主人的办公桌处,两位主人都以为那个网线头是自己主机的,于是都插入到自己办公桌的网线模块座中。
过了一会,所有老师的办公电脑都断网了!
用户很正常的一个不经意的动作,就可导致网络瘫痪,这是让人无法接受的。
这是本人所经历并解决的一次网络事故。
那时我认识到,网络设备即便没有设计为环状(以提供冗余),仅仅只是单一的树状分枝,也是有必要启用STP的(这可能就是思科交换机默认已启用了STP的原因吧)。
H3C交换机默认并没有启用STP!
4.1实施步骤
将图2主教学楼中所有的交换机启用MSTP,并配置为一个MSTP区域(zone),每个VLAN分别对应一个instance。
配置如下:
?
system-view
?
stpenable
?
stpregion-configuration//进入region-configuration模式
?
region-namebuilding-1
?
revision-level0
?
instance1vlan11
?
instance2vlan28
?
instance3vlan32
?
activeregion-configuration
在图2所示主教学楼中所有的交换机上运行上述相同命令。
然后在s-build-1中运行下述命令(system-view模式下),将其指定为该区域内所有instance的主根。
?
stpinstance0rootprimary
?
stpinstance1rootprimary
?
stpinstance2rootprimary
?
stpinstance3rootprimary
如果你不想麻烦,在所有交换机上只运行一句“stpenable”也是可以的。
5防止用户私接交换机
实现此目的比较容易,启用交换机的port-security可达到目的。
配置如下(只需在接入层交换机中实施,以图2中s-tea-2交换机为例,其余同):
?
system-view
?
port-securityenable//启用portsecurity
?
port-securitytimerdisableport300//若有违反,临时禁用端口300秒
在所有要防止用户私接交换机的端口上运行下述命令。
?
interfacee1/0/1
?
port-securitymax-mac-count1//只允许一台主机接入
?
port-securityport-modeautolearn ?
port-securityintrusion-modedisableport-temporarily
6网络设备本身的安全
校园网中,任何一台主机运行“telnet自己主机网关”,都能得到响应。
这个响应当然是来自核心交换机。
H3C交换机默认情况下响应任何对自己的telnet请求。
用户尽管不知道用户名和密码,但让恶意用户这样无休止的尝试是不能让人接受的。
可以使用访问控制列表来防范这种威胁,配置如下(以图2的核心交换机配置为例,其余同):
首先创建合适的ACL,只响应来自合法IP地址telnet,如下所示。
?
aclnumber2000namelimit-telnet-access
?
step10
?
rule0permitsource192.168.100.00.0.0.255
?
rule10permitsource192.168.12.1810
?
rule20deny
然后在vty接口上实施该规则,如下所示。
?
user-interfacevty015
?
acl2000inbound
?
authentication-modescheme
?
idle-timeout300
7结束语
自从在校园网内部网络的交换机层面实施本文前述的各种规则之后,效果确实是不错。
合理发掘网络设备本身的功能,充分发挥其最大效能,将使你的网络更加稳健流畅。
以上所述是本人在管理校园内部网络时的心得体会,希望能够得到同行的指教或对同行有所帮助。
参考文献:
[1]华三通信技术有限公司.S7500E系列以太网交换机操作手册-Release6600系列(V1.00)[M].华三通信技术有限公司,2009,5.
[2]华三通信技术有限公司.E126/E126A以太网交换机操作手册[M].华三通信技术有限公司,2010,4.
[3]cisco.CCNPBSCIStudentGuideVersion3.0Vol.1(2006)[M].cisco,2006,6.
[4]CharlesM.Kozierok.TCP/IP指南(卷I):
底层核心协议[M].北京:
人民邮电出版社,2008,5.
[5]DouglasE.Comer.用TCP/IP进行网际互联第I卷-原理、协议与结构[M].5版.北京:
电子工业出版社,2008,11.