访问控制列表ACL在校园网中的应用初探

桂林电子科技大学职业技术学院

毕业设计(论文)

访问控制列表ACL在校园网中的应用初

学院(系):电子信息工程系

专业名称:通信技术

学号:

学生姓名:

指导教师:

桂林电子科技大学职业技术学院

毕业设计(论文)任务书

系别:电子信息工程系学号:

姓名:指导教师:

设计(论文)题目:访问控制列表ACL在校园网中的应用初探

设计(论文)主要内容:

(1)、ACL的发展,现状和将来,详细介绍ACL的概念,原理,工作流程,分类和局限性。

(2)、详细说明ACL的匹配顺序,创建出一个控制访问列表的简单示例,并详细说明控制访问列表的配置任务和放置控制访问列表的正确位置。

(3)、配置各种类型的访问控制列表,比如基本访问控制列表,高级访问控制列表,基于接口的访问控制列表,基于以太网MAC地址的访问控制列表……并完成删除控制列表的操作。

(4)、完成时间段的控制访问列表配置,访问控制列表的显示和调试。

(5)、简述校园网的特点及其所面临的安全问题及解决办法。

(6)、搭建配置校园网的环境,配置校园网的控制访问列表实例。

(7)、对配置好控制访问列表的校园网的安全性能进行测试。

要求完成的主要任务:

1、查阅不少于5篇相关资料,完成开题报告。

2、根据进度按时完成毕业论文初稿。

3、按时参加论文中审和后期答辩。

4、完成校园网络安全的分析与策略研究论文设计

必读参考资料:

[1] 莫林利使用ACL技术的网络安全策略研究及应用华东交通大学学报2009(12)

[2]唐子蛟,李红蝉基于ACL的网络层访问权限控制技术研究四川理工学院学报2009(01)

[3] 周星,张震等.网络层访问控制列表的应用[J].河南大学学报,2004,20(5)

[4] 斯桃枝,姚驰甫.路由与交换技术[M].北京:北京大学出版社,2008年5月

[5] 谢希仁. 计算机网络第五版[M].北京:电子工程出版社,2008

[6] 邢彦辰,范立红等计算机网络与通信. 人民邮电出版社; 第1版 (2008年10月1日)

[7] [美] Bob Vachon Rick Graziani 思科网络技术学院教程人民邮电出版社 2009年3月第1版

指导教师签名:

系主任签名:

桂林电子科技大学职业技术学院毕业设计(论文)开题报告

目录

摘要 (2)

关键字 (2)

前言 (2)

1 ACL的概述 (2)

1.1基本原理 (2)

1.2功能 (3)

1.3配置基本原则 (3)

1.4局限性 (4)

1.5ACL的作用 (4)

1.6ACL的分类 (4)

1.7ACL的执行顺序 (4)

2 ACL的创建和配置 (5)

2.1 ACL的创建 (5)

2.2 ACL的创建位置 (7)

2.3 ACL的配置 (7)

2.3.1 配置标准的ACL (7)

2.3.2 配置扩展的ACL (8)

2.3.3 配置命名ACL (8)

2.3.4 删除ACL (10)

2.4 基于时间的ACL (10)

2.5 ACL的显示和调试 (11)

3 ACL在校园网中的应用实例 (12)

3.1实现网络访问的单向控制 (12)

3.2禁止或允许部分网络服务 (13)

3.3禁止某台主机的通信 (14)

3.4保护重要端口免受病毒攻击 (14)

3.5小结 (14)

摘要

随着网络的高速发展,网络的普及也越来越平民化,在人们的学习和生活的方方面面,网络无孔不入,给人们的学习和生活带来了极大的便利,但随之而来的网络安全问题也越来越引起人们的重视。高校校园网的安全是一个庞大的系统工程,需要全方位的防范。防范不仅是被动的,更要主动进行。本文基于ACL为主,建立ACL列表控制和保障整个校园网的安全运行,使校园网运作在一个安全稳定的环境下。

[关键词]ACL;校园网;网络安全策略;访问控制列表

前言

自从产生了网络,随之而来的就是网络的安全问题。任何连接上网络的企业、单位、个人都要时刻注意自己的网络安全问题。既要防止未经授权的非法数据从外部侵入内部Intranet,也要防止内部各主机之间的相互攻击,一旦网络瘫痪或者信息被窃取,将会带来巨大的损失。路由器作为Intranet和Internet的网间互连设备,是保证网络安全的第一关,而在路由器上设置控制访问列表(ACL)可以很好的解决这些网络安全问题。访问控制列表适用于所有的路由协议,通过灵活地增加访问控制列表,ACL可以当作一种网络控制的有力工具。一个设计良好的访问控制列表不仅可以起到控制网络流量、流量的作用,还可以在不增加网络系统软、硬件投资的情况下完成一般软、硬件防火墙产品的功能。

1、ACL的概述

ACL全称访问控制列表:Access Control List ,往里走常说的ACL 是Cisco IOS 所提供的一种访问控制技术。初期仅在路由器上支持,近些年来已经扩展到三层交换机,部分最新的二层交换机如2950之类也开始提供ACL的支持。只不过支持的特性不是那么的完善而已。在其他厂商的路由器或者多层交换机上也提供类似的技术,不过名称和配置方式都可能有妈稍微的差别。

1.1基本原理

ACL使用包过滤技术,在路由器上读取第三次及四层包头中的信息如源地址、目的地址、源端口、目的端口等,根据预先定义好的规则、对包进行过滤。从而达到访问控制的

目的。

图1 ACL工作原理

入站数据包进入路由器内,路由器首先判断数据包是否从可路由的源地址而来,否的话放入数据包垃圾桶中,是的话进入下一步;路由器判断是否能在路由选择表内找到入口,不能找到的话放入数据垃圾桶中,能找到的话进入下一步。接下来选择路由器接口,进入接口后使用ACL。ACL使用包过滤技术,在路由器上读取第三层及第四层包头中的信息如源地址、目的地址、源端口、目的端口等,根据预先定义好的规则对包进行过滤,从而达到访问控制的目的。其中标准控制列表只读取数据包中的源地址信息,而扩展访问控制列表则还会读取数据包中的目的地址、源端口、目的端口和协议类型等信息。ACL判断数据包是否符合所定义的规则,符合要求的数据包允许其到达目的地址进入网络内部,不符合规则的则丢弃,同时通知数据包发送端,数据包未能成功通过路由器。通过ACL,可以简单的将不符合规则要求的危险数据包拒之门外,使其不能进入内部网络。

1.2功能

网络中的节点资源节点和用户节点两大类,其中资源节点提供服务或数据,用户节点访问资源节点所提供的服务与数据。ACL的主要功能就是一方面保护资源节点,阻止非法用户对资源节点的访问,另一方面限制特定的用户节点所能具备的访问权限。

1.3配置ACL的基本原则

在实施ACL的过程中,应当遵循如下三个基本原则:

①最小特权原则:只给受控对象完成任务的最小权限。

②最靠近受控对象原则:所有的网络层访问权限控制尽可能离受控对象最近。

③默认丢弃原则:在Cisco设备中,每个访问控制列表的最后一个隐藏规则为deny any

any。

而在华为3COM设备中,最后一个隐藏规则是Permit any any。因此不同的厂商支持的ACL 技术在配置上有一些差别,这些差别在网络安全策略的配置是很重要的。

1.4局限性

由于ACL是使用包过滤技术来实现的,过滤的依据又仅仅只是第三层和第四层包头中的部分信息,这种技术具有一些固有的局限性,如无法识别到具体的人,无法识别到应用内部的权限级别等。因此,要达到end to end的权限控制目的,需要和系统级及应用级的访问权限控制结合使用。

1.5 ACL的作用

1. ACL可以限制网络流量、提高网络性能。

2. ACL提供对通信流量的控制手段。

3. ACL是提供网络安全访问的基本手段。

4. ACL可以在路由器端口处决定哪种类型的通信流量被转发或被阻塞。

1.6访问控制列表的分类

目前有两种主要的ACL:标准ACL和扩展ACL。标准ACL只检查数据包的源地址;扩展ACL既检查数据包的源地址,也检查数据包的目的地址,同时还可以检查数据包的特定协议类型、端口号等。

·IP标准访问控制列表编号:1~99或1300~1999

·IP扩展访问控制列表编号:100~199或2000~2699

1.7访问控制列表的执行顺序

ACL的执行顺序是从上往下执行,Cisco IOS按照各描述语句在ACL中的顺序,根据各描述语句的判断条件,对数据包进行检查。一旦找到了某一匹配条件,就结束比较过程,不再检查以后的其他条件判断语句。

在写ACL时,一定要遵循最为精确匹配的ACL语句一定要卸载最前面的原则,只有这样才能保证不会出现无用的ACL语句

图2 ACL的匹配顺序

2、ACL的创建与配置

2.1ACL的创建

·标准ACL命令的详细语法

1.创建ACL定义

例如:Router(config)#access-list 1 permit 10.0.0.0 0.255.255.255

2.应用于接口

例如:Router(config-if)#ip access-group 1 out

·扩展ACL命令的详细语法

1.创建ACL定义

例如:accell-list101 permit host 10.1.6.6 any eq telnet

2.应用于接口

例如:Router(config-if)#ip access-group 101 out

·下面更详细的介绍扩展ACL的各个参数:

Router(config)# access-list access-list-number

{ permit | deny } protocol source source-wildcard [operator port]destination destination-wildcard [ operator port ] [ established ] [log]

表1 扩展ACL参数描述

参数参数描述

access-list-number访问控制列表表号

permit|deny 如果满足条件,允许或拒绝后面指定特定地址的通信流

protocol 用来指定协议类型,如IP、TCP、UDP、ICMP等

分别用来标识源地址和目的地址

Source and

destination

source-mask 通配符掩码,跟源地址相对应

destination-mask 通配符掩码,跟目的地址相对应

operator lt,gt,eq,neq(小于,大于,等于,不等于)

operand 一个端口号

established 如果数据包使用一个已建立连接,便可允许TCP信息通

·标准ACL与扩展ACL的比较:

3 标准ACL与扩展ACL的比较

2.2 ACL的创建位置

ACL通过制定的规则过滤数据包,并且丢弃不希望抵达目的地址的不安全数据包来达到控制通信流量的目的。但是网络能否有效地减少不必要的通信流量,同时达到保护内部网络的目的,将ACL放置在哪个位置也十分关键。

图4 正确位置创建ACL

2.3 ACL的配置

2.3.1 配置标准的ACL

以下是标准访问列表的常用配置命令。

跳过简单的路由器和PC的IP地址设置

1.配置路由器R1的标准访问控制列表

R1(config)#access-list 1 deny 172.16.1.0 0.0.0.255

R1(config)#access-list 1 permit any

R1(config)#access-list 2 permit 172.16.3.1 0.0.0.255

2.常用实验调试命令

在PC1网络所在的主机上ping 2.2.2.2,应该通,在PC2网络所在的主机上ping 2.2.2.2,应该不通,在主机PC3上Telnet 2.2.2.2,应该成功。

……

Outgoing access list is not set

Inbound access list is 1

……

以上输出表明在接口S2/0的入方向应用了访问控制列表1。

2.3.2 配置扩展访问控制列表

相比基本访问控制列表,扩展访问控制列表更加复杂,不仅需要读取数据包的源地址,还有目的地址、源端口和目的端口。

图5 用扩展ACL检查数据包

扩展访问控制列表的常见配置命令。

1.配置路由器R1

R1(config)#access-list 100 permit tcp 172.16.1.0 0.0.0.255 host 2.2.2.2 eq www

2.常用调试命令

分别在访问路由器R2的Telnet和WWW服务,然后查看访问控制列表100:

R1#show ip access-lists 100

Extended IP access list 100

permit tcp 172.16.1.0 0.0.0.255 host 2.2.2.2 eq www

……

2.3.3配置命名访问控制列表

命名ACL是IOS11.2以后支持的新特性。命名ACL允许在标准ACL和扩展ACL中使用字符串代替前面所使用的数字来表示ACL,命名ACL还可以被用来从某一特定的ACL中删除个别的控制条目,这样可以让网络管理员方便地修改ACL。它提供的两个主要优点是:

①解决ACL的号码不足问题;

②可以自由的删除ACL中的一条语句,而不必删除整个ACL。

命名ACL的主要不足之处在于无法实现在任意位置加入新的ACL条目。

语法为:

Router(config)#

ip access-list { standard | extended } name

·名字字符串要唯一

Router(config {std- | ext-}nacl)#

{ permit | deny } { ip access list test conditions }

{ permit | deny } { ip access list test conditions }

no { permit | deny } { ip access list test conditions }

·允许或拒绝陈述前没有表号

·可以用“NO”命令去除特定的陈述

Router(config-if)# ip access-group name { in | out }

·在接口上激活命名ACL

例如:

ip access-list extend server- protect

permit tcp 10.1.0.0 0.0.0.255 host 10.1.2.21 eq 1521

int vlan 2

ip access-group server- protect

命名ACL还有一个很好的优点就是可以为每个ACL取一个有意义的名字,便于日后的管理和维护。

最后是命名ACL常用配置命令。

1 在路由器R1上配置命名的标准ACL

R1(config)#ip access-list standard stand

R1(config-std-nacl)#deny 172.16.1.0 0.0.0.255

R1(config-std-nacl)#permit any

创建名为stand的标准命名访问控制列表

2 在路由器R1上查看命名访问控制列表

R1#show ip access-lists

Standard IP access list 1

deny 172.16.1.0 0.0.0.255

permit any (110 match(es))

……

3 在路由器R1配置命名的扩展ACL

R1(config)#ip access-list extended ext1

R1(config-ext-nacl)#permit tcp 172.16.1.0 0.0.0.255 host 2.2.2.2 eq www 创建名为ext1的命名扩展访问控制列表

4 在路由器R1和R3上查看命名访问控制列表

R1#show access-lists

Extended IP access list ext1

permit tcp 172.16.1.0 0.0.0.255 host 2.2.2.2 eq www

2.3.4 删除访问控制列表

删除ACL的方法十分简单,只需在ACL表号前加“NO”就可以了,例如:

R2(config)#no access-list 1

输入这个命令后,ACL表号为1和2的ACL内所有的条目都会被删除。标准和扩展的ACL只能删除整个ACL条目,不能删除个别条目。

命名ACL与标准和扩展ACL不同,它可以删除个别的控制条目。

例如:

no permit tcp 10.0.0.0 0.0.255.255 host 10.1.2.21 eq 1521

在“permit tcp 10.0.0.0 0.0.255.255 host 10.1.2.21 eq 1521”前加“no”

即可删除这条ACL语句条目,之后可以重新写入新的条目

2.4基于时间段的访问控制列表配置

使用标准访问控制列表和扩展访问控制列表就可以应付大部分过滤网络数据包的要求了。不过在实际的使用中总会有人提出一些较为苛刻的要求,这是就还需要掌握一些关于ACL的高级技巧。基于时间的访问控制类别就属于高级技巧之一。

·基于时间的访问控制列表的用途:

可能一些单位或者公司会遇到这样的情况,要求上班时间不能使用QQ或者浏览某些网站,或者不能在上班时间使用某些应用,只有在下班或者周末才可以。对于这种情况,仅仅通过发布通知不能彻底杜绝员工非法使用的问题,这时基于时间的访问控制列表就应运而生了。

·基于时间的访问控制列表的格式:

基于时间的访问控制列表由两部分组成,第一部分是定义时间段,第二部分是用扩展访问控制列表定义规则。这里主要解释下定义时间段,具体格式如下:

time-range 时间段格式

absolute start [小时:分钟] [日月年] [end] [小时:分钟] [日月年]

例如:time-range softer

absolute start 0:00 1 may 2005 end 12:00 1 june 2005

意思是定义了一个时间段,名称为softer,并且设置了这个时间段的起始时间为2005年5月1日零点,结束时间为2005年6月1日中午12点。还可以定义工作日和周末,具

体要使用periodic命令。将在下面的配置实例中详细介绍。

基于时间的ACL配置常用命令

R1(config)#time-range time //定义时间范围

R1(config-time-range)#periodic weekdays 8:00 to 18:00

R1(config)#access-list 111 permit tcp host 172.16.3.1 host 2.2.2.2 eq telnet time-range time

常用实验调试命令

①用“clock set”命令将系统时间调整到周一至周五的8:00-18:00范围内,然后在Telnet路由器R1,此时可以成功,然后查看访问控制列表111:

R1#show access-lists

Extended IP access list 111

10 permit tcp host 172.16.3.1 host 2.2.2.2 eq telnet time-range time (active)

②用“clock set”命令将系统时间调整到8:00-18:00范围之外,然后Telnet路由器R1,此时不可以成功,然后查看访问控制列表111:

R1#show access-lists

Extended IP access list 111

10 permit tcp host 172.16.3.1 host 2.2.2.2 eq telnet time-range time (inactive)

③ show time-range:该命令用来查看定义的时间范围。

R1#show time-range

time-range entry: time (inactive)

periodic weekdays 8:00 to 18:00

used in: IP ACL entry

以上输出表示在3条ACL中调用了该time-range。

2.5 访问控制列表的显示和调试

在特权模式下,

使用“show access-lists ”可以显示路由器上设置的所有ACL条目;

使用“show access-list acl number”则可以显示特定ACL号的ACL条目;

使用“show time-range”命令可以用来查看定义的时间范围;

使用“clear access-list counters”命令可以将访问控制列表的计数器清零。

3、ACL在校园网中的应用实例

图6是某学校网络结构体的一部分,其中包括教师办公室,服务器机房和学生实验室若干。本网络中全部使用24位子网掩码。

图6.某学校的网络拓扑结构图

在图6中,路由器使用以太网端口E0连接到教师办公室(网段为192.168.1.0),使用以太网端口E1连接到学校的服务器机房(网段为192.168.2.0),使用以太网端口E2连接到你学生实验室(网段为192.168.3.0),使用串口S0连接到校园网。路由器E1、E1和E2端口的IP地址为192.168.1.1,192.168.2.1和195.168.3.1。计算机1的IP地址为192.168.1.11,计算机2的IP地址为192.168.1.12,计算机3的IP 地址为192.168.3.11,计算机4的IP地址为192.168.3.12.FTP服务器的IP地址为192.168.2.11,WWW服务器的IP地址为192.168.2.12。

根据教室办公室,服务器机房和学生实验室对网络及其数据安全的要求不同,利用ACL技术构建了以下的网络安全策略。

3.1实现网络访问的单向控制

教室办公室(网段为192.168.1.0)用于教师办公,主机上往往会存一些试卷等敏感数据,因此不能让学生实验室(网段为192.168.3.0)访问,但是教师办公室网段可以访问学生实验室的计算机,以便对学生做实验、上课等情况进行管理和监控。

首先在路由器上采用IP标准控制列表如下:

Router(config)#access-list 1 deny 192.168.3.0 0.0.0.255

Router(config)#access-list 1 permit any

Router(config)#int E0

Router(config)#ip access-group 1 out

在路由器上配置成功后,192.168.3.0网段不能访问192.16.1.0网段,但同时192.168.1.0网段也不能访问192.168.3.0网段,原因是在路由器E0端口的out方向上设置了访问控制策略deny 192.168.3.0 0.0.0.255它阻止了从192.168.3.0发给192.168.1.0的所以数据包,即使是192.168.3.0给192.168.1.0的回复数据包也一样阻止了。由此可见,简单的使用访问控制列表还不能解决这个问题。

要实现192.168.1.0网段到192.168.3.0网段的单向访问控制,采用访问控制列表配置如下:

Router(config)#access-list 101 permit tcp 192.168.3.0 0.0.0.255 192.168.1.0 0.0.0.255 estaelished

Router(config)#access-list 101 permit tcp any any

Router(config)#int E2

Router(config)#ip access-group 101 in

该策略的原理是当TCP连接已经建立时,在路由器E2端口的in方向上检查数据包,如果它表示确认的数据包即可通过,而如果是192.168.3.0网段向192.168.1.0网段发起TCP连接数据包则它不表示确认数据包,因此拒绝通过。这样设置以后,学生在实验室就不能访问教师计算机上的试卷等敏感资料,而教室计算机依然可以管理学生实验室的上课和上机情况。

3.2禁止或允许部分网络服务

实验室一旦连接了校园网,就可以访问很多资源,包括电影之类的。但是实验室是为学生提供做实验、学习的场所,在上课期间不允许学生下载电影或者在线观。在图6中,假设大部分电影之类的资源放在校园网的192.168.2.0网段的FTP服务器上,因此要禁止学生实验室192.168.3.0网段访问192.168.2.0网段的FTP服务,但依然可以正常访问WWW 服务。可以采用一下的ACL配置策略实现该要求:

Router(config)#access-list 102 permit tcp 192.168.3.0 0.0.0.255 192.168.2.0 0.0.0.255 eq wwww

Router(config)#access-list 102 deny tcp 192.168.3.0 0.0.0.255 192.168.2.0 0.0.0.255 eq ftp

Router(config)#access-list 102 permit ip any any

Router(config)#int E1

Router(config)#ip access-group 102 out

在学生实验室,像QQ游戏之类的网络应用也是不允许学生使用的,可以采用同样的原理来禁止该服务。首先需要查找到因特尔网上提供QQ游戏的服务器的IP地址,然后采用ACL命令来禁止学生实验室网段192.168.3.0和这些IP地址的服务器之间的网络连接。

3.3禁止某台主机的通信

局域网受病毒攻击是不可避免的,一旦局域网内有一台计算机感染病毒,就有可能影响整个外局域网内的通信,严重时可能导致网络瘫痪。虽然不能将病毒拒之门,但是可以在尽量防毒的基础上,及时检测病毒并对有毒主机采取隔离措施以保护网络。

假设学生实验室的计算机4(IP地址为192.168.3.12)主机感染了病毒,正在向局域网内的其他主机疯狂发数据包,那么可以采取一下ACL策略限制该主机的数据传输,从而阻断病毒向其他网段传播,将病毒对网络的影响降到最小:

Router(config)#access-list 2 deny 192.168.3.12 0.0.0.255

Router(config)#access-list 2 permit any

Router(config)#int E2

Router(config)#ip access-group 2 in

3.4保护重要端口免受病毒攻击

操作系统开放了一些端口,例如135,136,137,138,139,445等。病毒攻击原理就是向这些开放端口发送大量数据使所以操作系统资源和网络资源耗尽,最终使网络无法向合法用户提供正常的服务。使用ACL防范病毒攻击的策略如下:

Router(config)#access-list 103 deny tcp any any eq 135

Router(config)#access-list 103 deny udp any any eq 135

Router(config)#access-list 103 deny ip any any eq 135

Router(config)#int S0

Router(config)#ip access-group 103 in

以上策略是以135端口为例,其他端口配置策略相同。在路由器上限制了135端口基于TCP、UDP和IP协议的访问,从而禁止病毒从135端口攻击内网。当然,该策略也禁止了135端口的其他正常功能。

3.5小结

通过对路由器配置以上策略,对内部网络构建了基本的网络安全体系,在一定程度上可以提高网络的安全性。但是ACL是用包过滤技术来实现的,过滤的依据仅仅是第3层和

相关文档
最新文档