基于ACL校园网络安全的实现_第1页
基于ACL校园网络安全的实现_第2页
基于ACL校园网络安全的实现_第3页
基于ACL校园网络安全的实现_第4页
基于ACL校园网络安全的实现_第5页
已阅读5页,还剩43页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

人力资源管理的趋势与创新 南阳理工学院本科生毕业设计(论文)学院(系): 软件学院专业: 网络工程学生: 指导教师: 完成日期2012年04月南阳理工学院本科生毕业设计(论文)基于ACL的校园网络安全策略的设计与实现BasedonDesignandImplementationofth

ecampusnetworksecuritypolicyinACL总计:毕业设计(论文)21页表格:3个图片:6个基于ACL的校园网络安全策略的设计与实现南阳理工学院本科毕业设计(论文)基于ACL的校园网络安全策略的设计与实现BasedonDesignandImplementationofth

ecampusnetworksecuritypolicyinACL学院(系): 软件学院专业: 网络工程学生姓名: 学号: 指导教师(职称): 讲师评阅教师: 完成日期: 2012年04月14日南阳理工学院NanyangInstituteofTechnology基于ACL的校园网络安全策略的设计与实现网络工程随着网络的高速发展,网络的普及也越来越平民化,在人们的学习和生活的方方面面,网络无孔不入,给人们的学习和生活带来了极大的便利,但随之而来的网络安全问题也越来越引起人们的重视。高校校园网的安全是一个庞大的系统工程,需要全方位的防范。防范不仅是被动的,更要主动进行。ACL(访问控制列表)是网络安全防范和保护的主要策略,网络管理员通常首选ACL策略来完成对所管理网络的安全配置。由此可见ACL在网络中的重要性。本文通过在校园网中配置ACL实现对网络安全策略的应用,论文首先论述了ACL的发展和应用,详细介绍ACL的概念、作用、工作流程、分类和局限性,然后介绍了各种类型的访问控制列表的具体配置,最后搭建配置校园网的环境,具体配置校园网的控制访问列表,实现校园网运作在一个安全稳定的环境中。ACL;校园网;网络安全策略BasedonDesignandImplementationofth

ecampusnetworksecuritypolicyinACLNetEngineeringMajor Withtherapiddevelopmentofthenetwork,thepopularityofthenetworkmoreandmorecivilianspervasiveinpeople'slearningandallaspectsoflife,thenetworkhasbroughtgreatconveniencetopeople'slearningandlife,buttheaccompanyingnetworkthesecurityissuehasdrawnincreasingattention.CampusNetworksecurityisahugeproject,afullrangeofprevention.Preventionisnotonlypassive,butalsototaketheinitiative.ACL(AccessControlList)isthemainstrategyofpreventionandprotectionofnetworksecurity,networkadministratorsoftenpreferredtheACLpolicytocompletethesecurityconfigurationonthemanagementnetwork.ThisshowstheimportanceofACLinthenetwork.ThisarticlethroughinthecampusnetworkconfigurationACLtoachieveintheapplicationofnetworksecuritypolicy,thispaperfirstdiscussesthedevelopmentandapplicationoftheACL,detailedintroducestheconcept,function,ACLworkingprocess,andtheclassificationandlimitations,andthenintroducesvarioustypesofaccesscontrollistofthespecificconfiguration,buildenvironmentofcampusnetworklastconfiguration,andthespecificconfigurationofthecampusnetworkaccesscontrollist,realizecampusnetworkoperatinginasafeandstableenvironmentACL;CampusNetwork;NetworkSecurityPolicy目录1.ACL的发展和应用 11.1ACL发展 11.2ACL的应用 12.ACL的概述 22.1ACL的定义 22.2ACL的作用 22.3ACL基本原理 22.4ACL的工作过程 32.5ACL的分类 42.6ACL的局限性 42.7ACL的匹配顺序 42.8通配符掩码 52.9正确放置ACL 53.ACL的各种应用配置 63.1标准ACL的配置 63.2扩展ACL的配置 73.3命名ACL 83.4基于时间段的ACL配置 93.5ACL的显示调试和删除 104.校园网ACL应用实例 114.1搭建配置环境 124.2ACL在院系机构的应用 124.3ACL在教学机房中作用 144.3.1屏蔽特定端口防范病毒与攻击 144.3.2通过ACL限制上网行为 154.4ACL对校园网P2P流量的控制 164.4.1P2P工作原理 164.4.2抓包位置的部署 164.4.3索引服务器地址收集 164.4.4ACL的组成 164.4.5创建ACL策略 16结束语 17参考文献 18附录 19致谢 21PAGE41ACL的发展和应用ACL发展ACL(AccessControlList)的全称是控制访问列表,控制访问起源于20世纪60年代,是一种重要的信息安全技术。所谓访问控制,就是通过某种途径显示地准许或限制访问能力及范围,从而限制对关键资源的访问,防止非法用户入侵或者合法用户的不慎操作造成破坏。网络中常说的ACL是CISCOIOS所提供的一种访问控制技术,初期仅在路由器上支持,近些年来已经扩展到三层交换机,部分最新的二层交换机如2950之类也开始开始提供ACL的支持。只不过支持的特性不是那么完善而已。在其他厂商的路由器或多层交换机上也提供类似的技术,不过名称和配置方法都可能有细微的差别。CISCO路由器中有两种常用的控制访问列表,一种是标准访问列表,另一种是扩展访问列表。标准ACL可以阻止来自某一网络的所有通信流量,或者允许来自某一特定网络的所有通信流量,或者拒绝某一协议簇(比如IP)的所有通信流量。扩展ACL比标准ACL提供了更广泛的控制范围。例如,网络管理员如果希望做到“允许外来的Web通信流量通过,拒绝外来的FTP和Telnet等通信流量”,那么,他可以使用扩展ACL来达到目的,标准ACL不能控制这么精确。在标准与扩展访问控制列表中均要使用表号,而在命名访问控制列表中使用一个字母或数字组合的字符串来代替前面所使用的数字。使用命名访问控制列表可以用来删除某一条特定的控制条目,这样可以让我们在使用过程中方便地进行修改。在使用命名访问控制列表时,要求路由器的IOS在11.2以上的版本,并且不能以同一名字命名多个ACL,不同类型的ACL也不能使用相同的名字。随着网络的发展和用户要求的变化,从IOS12.0开始,思科(CISCO)路由器新增加了一种基于时间的访问列表。通过它,可以根据一天中的不同时间,或者根据一星期中的不同日期,或二者相结合来控制网络数据包的转发。这种基于时间的访问列表,就是在原来的标准访问列表和扩展访问列表中,加入有效的时间范围来更合理有效地控制网络。首先定义一个时间范围,然后在原来的各种访问列表的基础上应用它。ACL的应用ACL(AccessControlList,访问控制列表)是用来实现流识别功能的。网络设备为了过滤报文,需要配置一系列的匹配条件对报文进行分类,这些条件可以是报文的源地址、目的地址、端口号等。通过在路由器以及交换机上配置相关规则即可实现对数据包的过滤,而不需要添加额外的防火墙等过滤设备既能够实现对数据包的过滤。由于实现方式简单,效果明显,并且成本低廉,适合校园网、小型企业等节约网络成本的网络中用于数据包的控制[1]。同时其他网络技术结合ACL配置也能够实现相应的功能,例如NAT、IPSEC、路由策略、QOS等,由此可见ACL的重要性。ACL的概述ACL的定义访问控制列表(AccessControlList,ACL)是路由器和交换机接口的指令列表,用来控制端口进出的数据包。ACL适用于所有的被路由协议,如IP、IPX、AppleTalk等。这张表中包含了匹配关系、条件和查询语句,表只是一个框架结构,其目的是为了对某种访问进行控制。ACL的作用访问控制列表(AccessControlList,ACL)是管理者加入的一系列控制数据包在路由器中输入、输出的规则。ACL可以限制网络流量、提高网络性能。ACL可以根据数据包的协议,指定数据包的优先级。ACL可以限定或简化路由更新信息的长度,从而限制通过路由器某一网段的通信流量。ACL是提供网络安全访问的基本手段,ACL允许主机A访问网络,而拒绝主机B访问。ACL适用于所有的被路由协议,如IP、IPX、AppleTalk等。ACL是路由器接口的指令列表,用来控制端口进出的数据包,ACL可以在路由器端口处决定哪种类型的通信流量被转发或被阻塞。例如,用户可以允许E-mail通信流量被路由,拒绝所有的Telnet通信流量。ACL基本原理网络中的节点资源节点和用户节点两大类,其中资源节点提供服务或数据,用户节点访问资源节点所提供的服务与数据。ACL的主要功能就是一方面保护资源节点,阻止非法用户对资源节点的访问,另一方面限制特定的用户节点所能具备的访问权限。ACL中规定了两种操作,所有的应用都是围绕这两种操作来完成的:允许、拒绝

ACL是CISCOIOS中的一段程序,对于管理员输入的指令,有其自己的执行顺序,它执行指令的顺序是从上至下,一行行的执行,寻找匹配,一旦匹配则停止继续查找,如果到末尾还未找到匹配项,则执行一段隐含代码——丢弃DENY.所以在写ACL时,一定要注意先后顺序。

可以发现,在ACL的配置中的一个规律:越精确的表项越靠前,而越笼统的表项越靠后放置。当入站数据包进入路由器内时,路由器首先判断数据包是否从可路由的源地址而来,否的话放入数据包垃圾桶中,是的话进入下一步;路由器判断是否能在路由选择表内找到入口,不能找到的话放入数据垃圾桶中,能找到的话进入下一步。接下来选择路由器接口,进入接口后使用ACL。ACL使用包过滤技术,在路由器上读取第三层及第四层包头中的信息如源地址、目的地址、源端口、目的端口等,根据预先定义好的规则对包进行过滤,从而达到访问控制的目的[2]。其中标准控制列表只读取数据包中的源地址信息,而扩展访问控制列表则还会读取数据包中的目的地址、源端口、目的端口和协议类型等信息。ACL判断数据包是否符合所定义的规则,符合要求的数据包允许其到达目的地址进入网络内部,不符合规则的则丢弃,同时通知数据包发送端,数据包未能成功通过路由器。通过ACL,可以简单的将不符合规则要求的危险数据包拒之门外,使其不能进入内部网络。具体过程如下图所示:图STYLEREF1\s2–SEQ图\*ARABIC\s11ACL的工作过程无论在路由器上有无ACL,接到数据包的处理方法都是一样的:当数据进入某个入站口时,路由器首先对其进行检查,看其是否可路由,如果不可路由那么就丢弃,反之通过查路由选择表发现该路由的详细信息——包括AD,METRIC……及对应的出接口。这时,我们假定该数据是可路由的,并且已经顺利完成了第一步,找出了要将其送出站的接口,此时路由器检查该出站口有没有被编入ACL,如果没有ACL的话,则直接从该口送出。如果该接口编入了ACL,那么就比较麻烦[3]。第一种情况——路由器将按照从上到下的顺序依次把该数据和ACL进行匹配,从上往下,逐条执行,当发现其中某条ACL匹配,则根据该ACL指定的操作对数据进行相应处理(允许或拒绝),并停止继续查询匹配;当查到ACL的最末尾,依然未找到匹配,则调用ACL最末尾的一条隐含语句denyany来将该数据包丢弃。ACL的分类目前有两种主要的ACL:标准ACL和扩展ACL。标准ACL只检查数据包的源地址;扩展ACL既检查数据包的源地址,也检查数据包的目的地址,同时还可以检查数据包的特定协议类型、端口号等。这两种ACL的区别是,标准ACL只检查数据包的源地址;扩展ACL既检查数据包的源地址,也检查数据包的目的地址,同时还可以检查数据包的特定协议类型、端口号等。网络管理员可以使用标准ACL阻止来自某一网络的所有通信流量,或者允许来自某一特定网络的所有通信流量,或者拒绝某一协议簇(比如IP)的所有通信流量。扩展ACL比标准ACL提供了更广泛的控制范围。例如,网络管理员如果希望做到“允许外来的Web通信流量通过,拒绝外来的FTP和Telnet等通信流量”,那么,他可以使用扩展ACL来达到目的,标准ACL不能控制这么精确。在路由器配置中,标准ACL和扩展ACL的区别是由ACL的表号来体现的,上表指出了每种协议所允许的合法表号的取值范围。IP标准访问控制列表编号:1~99或1300~1999IP扩展访问控制列表编号:100~199或2000~2699标准访问控制列表和扩展访问控制列表的对比如下图所示。图STYLEREF1\s2–SEQ图\*ARABIC\s12标准ACL与扩展ACL对比ACL的局限性由于ACL是使用包过滤技术来实现的,过滤的依据又仅仅只是第三层和第四层包头中的部分信息,这种技术具有一些固有的局限性,如无法识别到具体的人,无法识别到应用内部的权限级别等[4]。因此,要达到endtoend的权限控制目的,需要和系统级及应用级的访问权限控制结合使用。ACL的匹配顺序ACL的执行顺序是从上往下执行,CiscoIOS按照各描述语句在ACL中的顺序,根据各描述语句的判断条件,对数据包进行检查。一旦找到了某一匹配条件,就结束比较过程,不再检查以后的其他条件判断语句。在写ACL时,一定要遵循最为精确匹配的ACL语句一定要卸载最前面的原则,只有这样才能保证不会出现无用的ACL语句图STYLEREF1\s2–SEQ图\*ARABIC\s13ACL匹配顺序通配符掩码通配符掩码是一个32位的数字字符串,0表示“检查相应的位”,1表示“不检查(忽略)相应的位”。IP地址掩码的作用:区分网络为和主机位,使用的是与运算。0和任何数相乘都得0,1和任何数相乘都得任何数。通配符掩码:把需要准确匹配的位设为0,其他位为1,进行或运算。1或任何数都得1,0或任何数都得任何数。特殊的通配符掩码:1.Any552.Host8Host8正确放置ACLACL通过制定的规则过滤数据包,并且丢弃不希望抵达目的地址的不安全数据包来达到控制通信流量的目的[5]。但是网络能否有效地减少不必要的通信流量,同时达到保护内部网络的目的,将ACL放置在哪个位置也十分关键。假设存在着一个简单的运行在TCP/IP协议的网络环境,分成4个网络,设置一个ACL拒绝从网络1到网络4的访问。根据减少不必要通信流量的准则,应该把ACL放置于被拒绝的网络,即网络1处,在本例中是图中的路由器A上。但如果按这个准则设置ACL后会发现,不仅是网络1与网络4不能连通,网络1与网络2和3也都不能连通。回忆标准ACL的特性就能知道,标准ACL只检查数据包的中的源地址部分,在本例子中,凡是发现源地址为网络1网段的数据包都会被丢弃,造成了网络1不能与其他网络联通的现象。由此可知,根据这个准则放置的ACL不能达到目的,只有将ACL放置在目的网络,在本例子中即是网络4中的路由器D上,才能达到禁止网络1访问网络4的目的。由此可以得出一个结论,标准访问控制列表应尽量放置在靠近目的端口的位置。在本例子中,如果使用扩展ACL来达到同样的要求,则完全可以把ACL放置在网络1的路由器A上。这是因为扩展访问控制列表不仅检查数据包中的源地址,还会检查数据包中的目的地址、源端口、目的端口等参数。放置在路由器A中的访问控制列表只要检查出数据包的目的地址是指向网络4的网段,则会丢弃这个数据包,而检查出数据包的目的地址是指向网络2和3的网段,则会让这个数据包通过。既满足了减少网络通信流量的要求,又达到了阻挡某些网络访问的目的。由此,可以得出一个结论,扩展访问控制列表应尽量放置在靠近源端口的位置。图STYLEREF1\s2–SEQ图\*ARABIC\s14正确设置ACL编辑原则:标准ACL要尽量靠近目的端,扩展ACL要尽量靠近源端。ACL的各种应用配置标准ACL的配置标准ACL命令的详细语法创建ACL定义例如:Router(config)#access-list1permit55将配置应用于接口:例如:Router(config-if)#ipaccess-group1out下面更详细的介绍扩展ACL的各个参数:以下是标准访问列表的常用配置命令。跳过简单的路由器和PC的IP地址设置配置路由器上的标准访问控制列表R1(config)#access-list1deny55R1(config)#access-list1permitanyR1(config)#access-list2permit55常用实验调试命令在PC1网络所在的主机上ping,应该通,在PC2网络所在的主机上ping,应该不通,在主机PC3上Telnet,应该成功。……OutgoingaccesslistisnotsetInboundaccesslistis1……以上输出表明在接口S2/0的入方向应用了访问控制列表1。扩展ACL的配置扩展ACL命令的详细语法创建ACL定义例如:accell-list101permithostanyeqtelnet应用于接口例如:Router(config-if)#ipaccess-group101outRouter(config)#access-listaccess-list-number{permit|deny}protocolsourcesource-wildcard[operatorport]destinationdestination-wildcard[operatorport][established][log]表格SEQ表格\*ARABIC1扩展ACL参数描述参数参数描述access-list-number访问控制列表表号permit|deny如果满足条件,允许或拒绝后面指定特定地址的通信流量protocol用来指定协议类型,如IP、TCP、UDP、ICMP等Sourceanddestination分别用来标识源地址和目的地址source-mask通配符掩码,跟源地址相对应destination-mask通配符掩码,跟目的地址相对应operatorlt,gt,eq,neq(小于,大于,等于,不等于)operand一个端口号established如果数据包使用一个已建立连接,便可允许TCP信息通过表格SEQ表格\*ARABIC2常见端口号端口号(PortNumber)

20文件传输协议(FTP)数据21文件传输协议(FTP)程序23远程登录(Telnet)25简单邮件传输协议(SMTP)69普通文件传送协议(TFTP)80超文本传输协议(HTTP)53域名服务系统(DNS)相比基本访问控制列表,扩展访问控制列表更加复杂,不仅需要读取数据包的源地址,还有目的地址、源端口和目的端口。图STYLEREF1\s3–SEQ图\*ARABIC\s11扩展访问控制列表的常见配置命令。配置路由器(config)#access-list100permittcp55hosteqwww常用调试命令分别在访问路由器的Telnet和WWW服务,然后查看访问控制列表100:R1#showipaccess-lists100ExtendedIPaccesslist100permittcp55hosteqwww……命名ACL命名ACL是IOS11.2以后支持的新特性。命名ACL允许在标准ACL和扩展ACL中使用字符串代替前面所使用的数字来表示ACL,命名ACL还可以被用来从某一特定的ACL中删除个别的控制条目,这样可以让网络管理员方便地修改ACL[6]。它提供的两个主要优点是:解决ACL的号码不足问题;可以自由的删除ACL中的一条语句,而不必删除整个ACL。命名ACL的主要不足之处在于无法实现在任意位置加入新的ACL条目。语法为:Router(config)#ipaccess-list{standard|extended}name名字字符串要唯一Router(config{std-|ext-}nacl)#{permit|deny}{ipaccesslisttestconditions}{permit|deny}{ipaccesslisttestconditions}no{permit|deny}{ipaccesslisttestconditions}允许或拒绝陈述前没有表号可以用“NO”命令去除特定的陈述Router(config-if)#ipaccess-groupname{in|out}在接口上激活命名ACL例如:ipaccess-listextendserver-protectpermittcp55host1eq1521intvlan2ipaccess-groupserver-protect命名ACL还有一个很好的优点就是可以为每个ACL取一个有意义的名字,便于日后的管理和维护。最后是命名ACL常用配置命令。在路由器上配置命名的标准ACLR1(config)#ipaccess-liststandardstandR1(config-std-nacl)#deny55R1(config-std-nacl)#permitany创建名为stand的标准命名ACL在路由器上查看命名ACLR1#showipaccess-listsStandardIPaccesslist1deny55permitany(110match(es))……在路由器配置命名的扩展ACLR1(config)#ipaccess-listextendedext1R1(config-ext-nacl)#permittcp55hosteqwww创建名为ext1的命名扩展访问ACL在路由器上查看命名访问ACLR1#showaccess-listsExtendedIPaccesslistext1permittcp55hosteqwww基于时间段的ACL配置使用标准访问控制列表和扩展访问控制列表就可以应付大部分过滤网络数据包的要求了。不过在实际的使用中总会有人提出一些较为苛刻的要求,这是就还需要掌握一些关于ACL的高级技巧[7]。基于时间的访问控制类别就属于高级技巧之一。基于时间的访问控制列表的用途:可能一些单位或者公司会遇到这样的情况,要求上班时间不能使用QQ或者浏览某些网站,或者不能在上班时间使用某些应用,只有在下班或者周末才可以。对于这种情况,仅仅通过发布通知不能彻底杜绝员工非法使用的问题,这时基于时间的访问控制列表就应运而生了。基于时间的访问控制列表的格式;基于时间的访问控制列表由两部分组成,第一部分是定义时间段,第二部分是用扩展访问控制列表定义规则。这里主要解释下定义时间段,具体格式如下:time-range时间段格式absolutestart[小时:分钟][日月年][end][小时:分钟][日月年]例如:time-rangesofterabsolutestart0:001may2005end12:001june2005意思是定义了一个时间段,名称为softer,并且设置了这个时间段的起始时间为2005年5月1日零点,结束时间为2005年6月1日中午12点。还可以定义工作日和周末,具体要使用periodic命令。将在下面的配置实例中详细介绍。基于时间的ACL配置常用命令R1(config)#time-rangetime//定义时间范围R1(config-time-range)#periodicweekdays8:00to18:00R1(config)#access-list111permittcphosthosteqtelnettime-rangetime常用实验调试命令用“clockset”命令将系统时间调整到周一至周五的8:00-18:00范围内,然后在Telnet路由器R1,此时可以成功,然后查看访问控制列表111:R1#showaccess-listsExtendedIPaccesslist11110permittcphosthosteqtelnettime-rangetime(active)用“clockset”命令将系统时间调整到8:00-18:00范围之外,然后Telnet路由器R1,此时不可以成功,然后查看访问控制列表111:R1#showaccess-listsExtendedIPaccesslist11110permittcphosthosteqtelnettime-rangetime(inactive)showtime-range:该命令用来查看定义的时间范围。R1#showtime-rangetime-rangeentry:time(inactive)periodicweekdays8:00to18:00usedin:IPACLentry以上输出表示在3条ACL中调用了该time-range。ACL的显示调试和删除访问控制列表的现实和调试都在特权模式下执行。使用“showaccess-lists”可以显示路由器上设置的所有ACL条目;使用“showaccess-listaclnumber”则可以显示特定ACL号的ACL条目;使用“showtime-range”命令可以用来查看定义的时间范围;使用“clearaccess-listcounters”命令可以将访问控制列表的计数器清零[8]。删除ACL的方法十分简单,只需在ACL表号前加“NO”就可以了,例如:R2(config)#noaccess-list1输入这个命令后,ACL表号为1和2的ACL内所有的条目都会被删除。标准和扩展的ACL只能删除整个ACL条目,不能删除个别条目。命名ACL与标准和扩展ACL不同,它可以删除个别的控制条目。例如:nopermittcp55host1eq1521在“permittcp55host1eq1521”前加“no”即可删除这条ACL语句条目,之后可以重新写入新的条目。校园网ACL应用实例校园网建设的目标简而言之是将校园内各种不同应用的信息资源通过高性能的网络设备相互连接起来,形成校园园区内部的Intranet系统,对外通过路由设备接入广域网。包过滤技术和代理服务技术是当今最广泛采用的网络安全技术,也就是我们通常称的防火墙技术[9]。防火墙可以根据网络安全的规则设置允许经过授权的数据包进出内部网络,同时将非法数据包挡在防火墙内外,最大限度地阻止黑客攻击。包过滤技术以访问控制列表的形式出现,一个设计良好的校园网络访问控制列表不仅可以起到控制网络流量、流量的作用,还可以在不增加网络系统软、硬件投资的情况下完成一般软、硬件防火墙产品的功能。针对校园网中各种网络攻击、网络病毒对教学和管理造成的一系列的影响,通过对校园网络拓扑结构的分析,在三层网络结构中的汇聚层设定相应的ACL策略,校园网络是典型的三层网络拓扑结构即接入层、汇聚层、核心层,接入层面对的是大量的学生PC、教师PC,通过划分VLAN来区分不同系别的学生,教师,同时能够减小广播域,保证网络安全等功能。通过设置基于MAC的ACL来完成对接入层网络的控制,避免由于任意接入网络对网络造成的潜在安全隐患。同时在接入层设备上设置限速ACL来限制迅雷等P2P软件的速度将网络流量控制在接入层从而保证网络出口的流畅,在汇聚层设置基于时间的ACL主要保证教师PC的网络带宽而在夜间自动将带宽分给学生。在核心层出口配置扩展ACL来完成数据包过滤、在入口上实现禁止外网访问指定的内部网站等。在出口配置NAT来解决IP不足问题,同时能够很好的隐藏内网IP,来防止网络的攻击。下面通过模拟CiscoPacketTracert5.3模拟器模拟校园网环境,配置校园网路由器及三层交换机上的ACL,达到模拟校园网络数据控制的目的。通过模拟环境的实验,还可以模拟各种网络攻击,模拟特定目的端口数据包的发送,从而检验配置的ACL命令的可行性。搭建配置环境校园网拓扑图如REF_Ref322154238图4–1所示图STYLEREF1\s4–SEQ图\*ARABIC\s11校园网的VLAN及IP地址规划VLAN号VLAN名称IP网段默认网关说明VLAN1-/24管理VLANVLAN10JWC/24教务处VLANVLAN20XSSS/24学生宿舍VLANVLAN30CWC/24财务处VLANVLAN40JGSS/24教工宿舍VLANVLAN50ZWX/24中文系VLANVLAN60WYX/24外语系VLANVLAN70JSJX/24计算机系VLANVLAN100FWQQ服务器群VLAN表STYLEREF1\s4–SEQ表\*ARABIC\s11具体的VLAN设置方法及网络联通设置在这里不在冗述,重点放在ACL的设置上。ACL在院系机构的应用首先是设置校园网内部三层交换机上的ACL。规定只有在财务处VLAN30内的主机可以访问财务处VLAN30,其他的教学单位部门可以互访;学生宿舍和教工宿舍VLAN可以互访,并且可以访问除了财务处和教务处外的其他教学单位。所有VLAN都可以访问服务器群VLAN。财务处ACL设置MultilayerSwitch1(config)#ipaccess-listextendedCWCMultilayerSwitch1(config-ext-nacl)#permittcp55any教工宿舍ACL设置与学生宿舍ACL设置同理在网络环境中还普遍存在着一些非常重要的、影响服务器群安全的隐患。接下来是对连接外网的路由器添加ACL。屏蔽简单网络管理协议(SNMP)利用这个协议,远程主机可以监视、控制网络上的其他网络设备。它有两种服务类型:SNMP和SNMPTRAP[10]。R1(config)#ipaccess-listextendednetR1(config-ext-nacl)#denyudpanyanyeq161……对外屏蔽远程登录协议TelnetR1(config-ext-nacl)#denytcpanyanyeq23对外屏蔽其他不安全的协议和服务这样的协议主要有SUNOS的文件共享协议端口2049,远程执行(rsh)、远程登录(rlogin)和远程命令(rcmd)端口512、513、514,远程过程调用(SUNRPC)端口111。R1(config-ext-nacl)#denytcpanyanyrange512514……防止DoS攻击DoS攻击(DenialofServiceAttack,拒绝服务攻击)是一种非常常见而且极具破坏力的攻击手段,它可以导致服务器、网络设备的正常服务进程停止,严重时会导致服务器操作系统崩溃[11]。R1(config-ext-nacl)#denyudpanyanyeq7……R1(config)#intf0/0R1(config-if)#noipdirected-broadcast最后一行的设置禁止子网内广播保护路由器安全作为内网、外网间屏障的路由器,保护自身安全的重要性也是不言而喻的。为了阻止黑客入侵路由器,必须对路由器的访问位置加以限制[12]。应只允许来自服务器群的IP地址使用Telnet访问并配置路由器,内部其他部分的主机都不能用Telnet访问和配置路由器。R1(config)#access-list1permit55R1(config)#linevty04R1(config-line)#access-class1inR1(config-line)#passwordciscoR1(config-line)#enablepasswordcisco系统测试当校园网环境建成后,应对校园网的整体运行情况做一下细致的测试和评估。大致包含以下测试:对相同VLAN内通信进行测试、对不同VLAN内的通信进行测试、对内部网的ACL进行测试、对广域网接入路由器上的ACL进行测试。测试相同VLAN内通信添加一台财务处VLAN30的主机,与VLAN30的用PING命令测试联通性。PC>ping00Pinging11with32bytesofdata:Replyfrom11:bytes=32time=47msTTL=128成功联通测试不同VLAN间通信使用VLAN30内的主机与学生宿舍VLAN20用PING命令测试联通性PC>ping00Pinging00with32bytesofdata:Requesttimedout.连接失败,证明ACL设置成功。使用学生宿舍内主机PING教务处主机PC>ping00Pinging00with32bytesofdata:Requesttimedout.连接失败,证明ACL设置成功。测试路由器ACL内部网络使用服务器群Telnet路由器PC>telnet00Trying00...OpenUserAccessVerificationPassword:Telnet成功使用其他VLAN主机Telnet路由器PC>telnet00Trying00...%ConnectionrefusedbyremotehostTelnet失败,路由器ACL设置成功。外部网络添加一台路由器,与校园网路由器的S2/0口相连,发送SNMP,Telnet等应用包。ExtendedIPaccesslistnetdenyudpanyanyeqsnmp(3match(es))denyudpanyanyeq162(1match(es))显示阻止成功。ACL在教学机房中作用屏蔽特定端口防范病毒与攻击由于机房通常与外网相连,容易遭受外部病毒的侵害和黑客的攻击。甚至,个别学生也利用机房机器进行非法扫描和监听[14]。对于机房管理人员来说,除了经常更新杀毒软件、病毒防火墙外,还可以使用ACL来屏蔽病毒入侵时经常通过的端口,以达到防范目的。例如:屏蔽某些特殊端口和服务denyudpanyanyeq135//屏蔽端口denyudpanyanyeq136denyudpanyanyeqnetbios-ns//关闭服务denyudpanyanyeqnetbios-dgm通过ACL访问控制列表限制上网时间机房管理人员可以根据在机房上课老师的具体要求,制定出一周内哪个机房哪个时间段需要上网的具体计划。然后,通过配置基于时间的访问控制列表来对机房的上网时间进行管理。在配置基于时间的访问控制列表时,最重要的一点就是设置一个time-range。例如:通过ACL,在每周一上午8:00至10:00这个时间段内(第一、二节课),禁止HTTP数据流:Switch(config)#time-rangenoweb//设置一个time-rangeSwiteh(config—time—range)#periodicmonday8:00to10:00Switeh(config)#endSwitch(config)#ipaccess-listextendedlimitwwwSwitch(config-ext-nacl)#denytcpanyanyeqwwwtime-rangenowebSwitch(config-ext-nacl)#permitipanyanySwitch(config)#endSwitch(config)#interfacefastethemet0/1Switch(config-if)#ipaccess—grouplimitwwwin下面为time—range的显示范例:Switch#showtime-rangetime—rangename:nowebperiodicmonday8:00to10:00通过ACL限制上网行为对于一些需要上网的上机课,个别学生常常不能自律,上课期间聊QQ、玩网络游戏。这些行为不仅影响课堂教学质量,更给机房网络安全带来隐患。对此,可以通过配置ACL屏蔽QQ和一些网络游戏的常用访问端口,来禁止学生聊QQ或玩网络游戏。例如,找出QQ软件所用的端口,配置ACL过滤这些端口的流量,然后把访问控制列表应用到机房相应的接口上:access—list101denyudpanyanyeq8000access—list101denytcpanyanyeq443access—list101denyudpanyanyeq443access—list101permittcpanyanyaccess—list101permituappermitanyanyaccess—list101ipanyanyinterfacerangefastethemet0/1—24ipaccess-group101inACL对校园网P2P流量的控制P2P工作原理P2P技术是P2S技术和P2P技术的结合体,是P2P技术的进一步延伸,它不需要文件资源服务器,充分利用了用户网络的“上行带宽”,实现用户间数据的传输[15]。通过多媒体检索数据库这个桥梁把原本孤立的服务器资源和P2P用户资源整合到了一起,利用服务器性能资源优势和用户上行带宽的优势,以达到下载速度更快、资源丰富、稳定性更强的目的。抓包位置的部署网络协议分析软件以嗅探方式工作,它必须要采集到网络中的原始数据包,才能准确分析网络故障。如安装的位置不当,采集到的数据包将存在较大的差别,从而影响分析的结果,无法反映网络真正存在的问题。校园网应用是网络应用中最活跃的分支,网络管理和维护也比较有代表性。在设计时,常采用经典的三层网络结构,对出口数据进行分析时,在核心交换机中将出口数据镜像到核心交换机的某一端口,此时协议分析软件可以捕获整个网络中转发的数据。索引服务器地址收集收集迅雷服务器地址可通过DNS解析、出口镜像抓包等方法来获取。如果使用DNS解析的方法来获取地址,将无法得出新增加或未进行域名绑定的资源索。ACL的组成ACL是应用在路由器、交换机、网关等网络设备接口的指令列表。它读取数据包第三及第四层包头中的信息,如源地址、目的地址、源端口、目的端口等;根据预先设定好的规则,设备接口对包进行过滤,从而达到访问控制的目的。交换机路由器中的ACL有标准ACL和扩展ACL,区别主要体现在匹配和过滤流量的条件上。标准ACL可检查IP包头的源IP地址,并以此为匹配条件对流量允许或拒绝;而扩展的ACL可基于包的目标地址、源地址和网络协议及其端口来匹配和过滤流量。随着网络的发展和用户要求的变化,各类网络设备支持基于时间的访问列表,它可以根据一天中的不同时间或者根据一周中的不同日期来控制对应类型数据包的转发,为网络的流量管理工作带来更大的便捷和灵活性。创建ACL策略基于P2P资源的下载方式是用户从网上获取资料的主要手段。P2P流量占据了近80%的出口带宽,利用ACL封迅雷资源索引服务器的方法将无条件地禁止了迅雷的下载。这种“一刀切”的流量管理策略不能满足用户的需求,我们应该结合实际应用及时间变化规律来制定校园网带宽管理策略。根据我校对带宽使用的具体情况,为保障教学及各项关键性应用的进行,规定在每周的星期一到五工作时间内,限制迅雷的下载;在周末以及其它休息时间开放P2P的应用带宽,这样以达到人性化的管理。结束语本文所介绍的校园网ACL设置满足了校园网用户的实际需要,保证了校园网内部的安全,并能达到防止了外部入侵的目的。同时通过扩展研究,对P2P的工作原理采取了ACL流量控制,这样在对保证校园网出口带宽起到一定的保护作用,对合理分配上网流量带宽,保证上网速度起到一定的帮助,同时还能保护学校网络设备,对延长网络设备的寿命起到一定的保护。本设计主要通过PacketTracer5.3进行模拟实验,由于模拟器的局限性,所以有些功能实现不了,主要通过文字语言来描述。通过最后的模拟和描述,通过ACL访问控制对校园网的安全和流量控制达到了初步的成效,希望能够将来对ACL更深的研究,达到更好的安全和流量控制效果。参考文献孙辉.《路由发展历程与趋势》,中国数据通讯2004王芳,韩国栋,李鑫.《路由器访问控制列表及其实现技术研究》.计算机工程与设计,2007(美)DayidHucaby,CCIE#4594著,王兆文译,《CCNPSWITCH(642-813)》.北京:人民邮电出版社易建勋,姜腊林,史长琼。《计算机网络设计(第二版)》北京邮电出版社2011DavidBarnes,BasirSakandar著刘大伟译.《Cisco局域网交换基础》.北京:人民邮电出版社,2005,9JustinMenga著李莉,高雪,周永生译.《CCNP实战指南:交换》.北京:人民邮电出版社,2005,1CiscoSystem著中山大学思科网络技术学院译.《CCNP1:高级路由》.北京:人民邮电出版社,2005,3谢希仁.《计算机网络(第五版)》.北京.电子工业出版社,2009.11斯桃枝,姚驰甫.《路由与交换技术[M]》.北京:北京大学出版社,2008谢希仁.《计算机网络第五版[M]》.北京:电子工程出版社,2008兰少华,杨余旺,吕建勇.《TCP/IP网络与协议[M]》.北京:清华大学出版社,2009王凤英,《访问控制原理与实践》.北京:邮电大学出版社,2010殷玉明,《交换机与路由器配置项目式教程》.电子工业出版社,2010郭自龙.访问控制列表在网络管理中的应用.[M].北京:清华大学出版社,2004周星,张震等.网络层访问控制列表的应用[J].河南大学学报,2004,20(5):56-58附录核心路由器interfaceFastEthernet0/0ipaddress5duplexautospeedauto!interfaceFastEthernet0/1noipaddressduplexautospeedautoshutdowninterfaceFastEthernet1/0ipaddressduplexautospeedautointerfaceFastEthernet1/1ipaddress52duplexautospeedautointerfaceVlan1noipaddressrouterospf1router-idlog-adjacency-changesnetwork55area0default-informationoriginaterouterripnetworkipclasslessiprouteFastEthernet1/1access-list101permittcp55host5eqtelnetlinecon0linevty04passwordciscologinprivilegelevel15核心交换机:interfaceFastEthernet0/1noswitchportipaddress6duplexautospeedauto!interfaceFastEthernet0/2noswitchportipaddressduplexautospeedauto!interfaceFastEthernet0/3noswitchportipaddressduplexautospeedautoipclasslessrouterospf1log-adjacency-changesnetwork55area0network55area1network55area1!routerripnetwork!ipclassless接入层交换机:hostnameSwitch!!spanning-treeportfastdefault!interfaceFastEthernet0/1switchporttrunkallowedvlan1,10,20switchportmodetrunk!interfaceFastEthernet0/2switchporttrunkallowedvlan1,10,20switchportmodetrunk!interfaceFastEthernet0/3switchportaccessvlan10switchportmodeaccess!interfaceFastEthernet0/4switchportaccessvlan20switchportmodeaccessinterfaceVlan1noipaddressshutdown!interfaceVlan10noipaddress!!access-list1deny55linecon0!linevty04loginlinevty515login致谢本论文的工作是在我的导师李相海老师的悉心指导下完成的,李相海老师严谨的治学态度和科学的工作方法给了我极大的帮助和影响。在此衷心感谢李相海老师对我的关心和指导。通过这一阶段的努力,我的毕业论文终于完成了,这意味着我的大学生活即将结束。在大学阶段,我在学习上和思想上都受益匪浅,住除了自身的努力外,与各位老师、同学和朋友的关心、支持和鼓励是分不开的。在工作及撰写论文期间,李庆伟、马杰超等同学对我论文中的配置研究工作给予了热情帮助,在此向他们表达我的感激之情。另外也感谢家人、学院领导、同事和朋友,他们的理解和支持使我能够完成我的学业。附录资料:不需要的可以自行删除C语言-INT10中断号视频服务程序00H(设置视频模式)输入:AH=00HAL=视频模式输出:无说明:视频服务程序00H用来设置视频配置为表10-l中列出之一。AL寄存器给定所需视频模式。若设置了新视频模式,则清除屏幕。视频服务程序0lH(设置光标大小)输入:AH=01HCH=光标开始扫描行CL=光标结束扫描行输出:无说明:该服务程序用于正文模式。在一个字符单元内由一行或几行组成的光标将在字符显示位置得闪烁。该服务程序定义光标的显示行数。对CGA模式,8扫描行(0~7)用于光标。对EGA模式,使用14行(0~13)。MCGA和VGA适配器,光标可具有16扫描行(0~15)高。缺省设置如下:CGA:CH=6,CL=7EGA:CH=ll,CL=12MCGA和VGA:CH量13,CL=1视频服务程序02H(设置光标位置)输入:AH=02HBH=光标页号DH=光标行号DL=光标列号输出:无说明:该服务器序用于将光标移到指定行和列位置。该服务程序即可用于正文模式也可用于图形模式;然而,仅在正文模式下才显示光标。屏幕左上角为坐标系统的原点。对支持多页的正文和图形模式,则必须指定页号,以保证光标位置正确。视频服务程序03H(读光标位置)输入:AH=03HBH=页号输出:CH=光标开始行CL=光标结束行DH=行号DL=列号说明:该服务程序用于获取光标大小和位置。BH给定了页号。CH中存放光标开始扫描行,而CL中为光标结束扫描行。DH中存放行位置,DL中为列位置。视频服务程序05H(设置活动显示页)输入:AH=05HAL=活动页号输出:无说明:该服务程序为正文和图形模式用来设置活动显示页号。AL指定所需页号。对多数正文模式,页号范围为0一7。对具有足够视频缓冲EGA和VGA适配器,可支持多页图形。对所有正文和图形模式,缺省为0页。视频服务程序06H(向上翻滚活动窗口)。输入:AH=06HAL=翻滚行数BH=空白行属性CH左上角行号CL=左上角列号DH=右下角行号Dl=右下角列号输出:无说明:该服务程序用来创建和翻滚一正文窗口。CH和CL中给出了正文窗口左上角坐标,DH和DL中给出了正文窗口右下角坐标。AL中定义了翻滚的行数。若AL=00H,则正文窗口为空白。当滚动窗口时,底部行是空白行,其属性由BH中指定。视频服务程序07H(向下翻滚窗口)输入:AH=07HAL=翻滚行数BH=空白行属性CH=左上角行号CL=左上角列号DH=右下角行号DL=右下角列号输出:无说明:该服务程序用来创建和翻滚一正文窗口。CH和CL中给出了正文窗口左上角坐标,DH和DL中给出了正文窗口右下角坐标。AL中定义了翻滚的行数。若AL=00H,则正文窗口为空白。当滚动窗口时,顶部行为空白,其属性由BH中指定。视频服务程序08H(读字符和属性)输入:AH=08HBH=活动页号输出:AH=字符属性AL=字符码说明:该服务程序用于读取正文或视频模式下,光标所在处字符。在图形模式下,获取的字符同图形模式下使用的字符生成表有关。在正文模式下,将获得字符的ASCII码。字符属性存放在AH中,字符ASCII码存放在AL中。图形模式下,AH中内容无意义.视频服务程序09H(写字符和属性)输入:AH=09HAL=写字符的ASCII码BL=写字符的属性BH=活动页号CX=重复写字符和属性次数输出:无说明:该服务程序写一个字符到屏幕当前光标处。AL中指定字符码。正文模式下,BL中指定字符属性。图形模式下,BL指定背景颜色。字符可重复写。CX为写字符及属性的次数。视频服务程序0FH(取当前视频模式)输入:AH=0FH输出:AH=每行字符数AL=当前显示模式BH=活动页号说明:该服务程序用来获取当前视频模式,屏幕宽(以字符计),以及活动显示页号;视频显示模式存放在AL中。屏幕宽度(以字符计)存放在AH中,活动页号存放在BH中。文件相关函数 函数名:fopen 功能:打开一个流 用法:FILE*fopen(char*filename,char*type); 函数名:fclose 功能:关闭一个流 用法:intfclose(FILE*stream); fopen()函数提供了几种打开文件的方式,这是由其字符指针参数type决定的。以下给出打开方式列表:参数作用R只读W新建、可写,如果文件存在则覆盖A存在则在文件后附加,如果不存在则新建后写r+更新一个存在的文件(读和写)w+增加一个新的文件更新(读和写),如果文件存在则覆盖a+存在则在文件后附加(读和写),如果不存在则新建后更新(读和写)*以文本模式打开一个存在或新建的文件,附加”t”在参数后(rt,w+t,etc.)。*以二进制模式打开一个存在或者新建的文件,附加”b”在参数后(wb,a+b,etc.)。函数名:fseek 功能:重定位流上的文件指针 用法:intfseek(FILE*stream,longoffset,intfromwhere);读取文件函数: 函数名:fread 功能:从一个流中读数据 用法:intfread(void*ptr,intsize,intnitems,FILE*stream);写入文件函数: 函数名:fwrite 功能:写内容到流中 用法:intfwrite(void*ptr,intsize,intnitems,FILE*stream);fseek()函数提供了文件指针的三个初始位置,这是由其参数fromwhere决定的,以下给出其列表:常量值文件定位SEEK_SET0从文件头开始寻找SEEK_CUR1从文件当前位置开始寻找SEEK_END2从文件最后开始寻找 函数名:fprintf 功能:传送格式化输出到一个流中 用法:intfprintf(FILE*stream,char*format[,argument,...]); 函数名:fscanf 功能:从一个流中执行格式化输入 用法:intfscanf(FILE*stream,char*format[,argument...]);发声函数 函数名:sound 功能:以指定频率打开PC扬声器 用法:voidsound(unsignedfrequency); 函数名:nosound 功能:关闭PC扬声器 用法:voidnosound(void);常规内存操作函数申请函数:malloc(),farmalloc(),calloc(),farcalloc(),realloc(),farealloc()函数名:malloc功能:内存分配函数用法:void*malloc(unsignedsize);函数名:farmalloc功能:从远堆中分配存储块用法:voidfar*farmalloc(unsignedlongsize);函数名:calloc功能:分配主存储器用法:void*calloc(size_tnelem,size_telsize);函数名:farcalloc功能:从远堆栈中申请空间用法:voidfar*farcalloc(unsignedlongunits,unsignedlingunitsz);函数名:realloc功能:重新分配主存用法:void*realloc(void*ptr,unsignednewsize);函数名:farrealloc功能:调整远堆中的分配块用法:voidfar*farrealloc(voidfar*block,unsignedlongnewsize);使用函数:memcpy(),memset(),memmove(),movedata()函数名:memcpy功能:从源source中拷贝n个字节到目标destin中用法:void*memcpy(void*destin,void*source,unsignedn);函数名:memset功能:设置s中的所有字节为ch,s数组的大小由n给定用法:void*memset(void*s,charch,unsignedn);函数名:memmove功能:移动一块字节用法:void*memmove(void*destin,void*source,unsignedn);函数名:movedata功能:拷贝字节用法:voidmovedata(intsegsrc,intoffsrc,intsegdest,intoffdest,unsignednumbytes);释放函数:free(),farfree()函数名:free功能:释放已分配的块用法:voidfree(void*ptr);函数名:farfree功能:从远堆中释放一块用法:voidfarfree(void);指针操作函数:MK_FP(),FP_OFF(),FP_SEG()函数名:MK_FP功能:设置一个远指针用法:voidfar*MK_FP(unsignedseg,unsignedoff);函数名:FP_OFF功能:获取远地址偏移量用法:unsignedFP_OFF(voidfar*farptr);函数名:FP_SEG功能:获取远地址段值用法:unsignedFP_SEG(voidfar*farptr);如果想知道还剩下多少常规内存,我们可以使用以下函数:函数名:coreleft()功能:获取空闲内存用法:unsignedcoreleft(void);函数名:farcoreleft()功能:获取远堆空闲内存用法:unsignedlongfarcoreleft(void);XMS功能调用索引表:功能号功能版本功能00H功能01H功能

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论