ACL访问控制列表

  • 格式:docx
  • 大小:137.18 KB
  • 文档页数:32

下载文档原格式

  / 32
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

•轻松学习理解ACL访问控制列表

【独家特稿】任何企业网络系统在为创造价值的同时,对安全性也有很高的要求。ACL(网络层访问控制列表)其实可以帮助企业实现网络安全策略,可以说ACL是一个很不错的解决工具或方案。

那什么是ACL呢?为了帮助企业网络运维人员深入理解ACL,可以根据以下几点看透ACL本质。

一、从名称解析ACL

ACL:Acess Control List,即访问控制列表。这张表中包含了匹配关系、条件和查询语句,表只是一个框架结构,其目的是为了对某种访问进行控制。

信息点间通信,内外网络的通信都是企业网络中必不可少的业务需求,但是为了保证内网的安全性,需要通过安全策略来保障非授权用户只能访问特定的网络资源,从而达到对访问进行控制的目的。简而言之,ACL可以过滤网络中的流量,控制访问的一种网络技术手段。

二、看透ACL的本质

通常,很多企业都在使用NAT技术进行地址转换,而NAT技术中就包含了ACL的应用。通过ACL,我们可以控制哪些私有地址能上外网(公网),哪些不能。然后把这些过滤好的数据,进行NAT转换。另外,企业也需要对服务器的资源访问进行控制,通过ACL过滤出哪些用户不能访问,哪些用户能访问。

从实际应用中,我们看到ACL能够区分不同的数据流。这也意味着ACL的本质其实是一种流量分类技术,它是人为定义的一组或几组规则,目的是通过网络设备对数据流分类,以便执行用户规定的动作。换句话说,ACL本身不能直接达到访问控制的目的,它间接辅助特定的用户策略,达到人们所需效果的一种技术手段。在笔者看来,ACL是一种辅助型的技术或者说是工具。

三、玩转基本的ACL

拓扑描述:某企业有100个信息点,分属五个部门。用一台二层交换机和一台路由器作为网络层设备;局域网内部有一台OA服务器。

组网需求:五个部门分属5个VLAN,VLAN间不能互通。要求所有终端都可以上公网,并访问OA服务器。

也就是说,有两个需求:

1、5个部门的终端不能互相通讯

2、5个部门都要求能够访问OA SERVER和公网。

根据这两种实际需求,怎么用ACL实现呢?

以Cisco路由器为例,在全局模式下进行如下配置:

access-list 100 permit ip any host OA的ip

access-list 100 deny? ip any ip网络号通配符

access-list 100 permit ip any any

然后在相应的子接口下绑定:

ip access-group 100 in

命令解释:第一条就是允许OA服务器上的数据进入,第二条就是拒绝其它四个部门的数据流进入,第三条是允许所有流量进入,然后最后在相应接口绑定并启用放通或丢弃的操作。

我们配置ACL都有几个配置原则,细化优先原则和最长匹配原则,不同的配置顺序影响不同的执行效果。通常都是按一个汇总的原则进行规划IP地址,所以第二条后面的IP网络号代表的是其它VLAN的子网汇总网络号。一般来说,思科的ACL最后都默认隐藏了一条deny 所有的语句,所以必须人为添加一条permit语句。

在边界路由器上配置上述的命令,就能满足需求了,当然还需要和其他配置命令相结合使用,比如划分VLAN,配置路由协议等。但无论是怎样的需求,只要记住ACL的核心,它是一种流量分类技术,可以用特定的方式标记和分类网络中的流量,配合其它操作策略一起完成某项任务。只要明白这点,我们就能够玩好基本的ACL了。

访问控制列表(Access Control List,ACL) 是路由器接口的指令列表,用来控制端口进出的数据包。ACL适用于所有的被路由协议,如IP、IPX、AppleTalk 等。

ACL的定义也是基于每一种协议的。如果路由器接口配置成为支持三种协议(IP、AppleTalk以及IPX)的情况,那么,用户必须定义三种ACL来分别控制这三种协议的数据包。

ACL的作用

ACL可以限制网络流量、提高网络性能。例如,ACL可以根据数据包的协议,指定数据包的优先级。

ACL提供对通信流量的控制手段。例如,ACL可以限定或简化路由更新信息的长度,从而限制通过路由器某一网段的通信流量。

ACL是提供网络安全访问的基本手段。ACL允许主机A访问人力资源网络,而拒绝主机B访问。

ACL可以在路由器端口处决定哪种类型的通信流量被转发或被阻塞。例如,用户可以允许E-mail通信流量被路由,拒绝所有的Telnet通信流量。

ACL的执行过程

一个端口执行哪条ACL,这需要按照列表中的条件语句执行顺序来判断。如果一个数据包的报头跟表中某个条件判断语句相匹配,那么后面的语句就将被忽略,不再进行检查。

数据包只有在跟第一个判断条件不匹配时,它才被交给ACL中的下一个条件判断语句进行比较。如果匹配(假设为允许发送),则不管是第一条还是最后一条语句,数据都会立即发送到目的接口。如果所有的ACL判断语句都检测完毕,仍没有匹配的语句出口,则该数据包将视为被拒绝而被丢弃。

这里要注意,ACL不能对本路由器产生的数据包进行控制。

ACL的分类

目前有两种主要的ACL:标准ACL和扩展ACL。

这两种ACL的区别是,标准ACL只检查数据包的源地址; 扩展ACL既检查数据包的源地址,也检查数据包的目的地址,同时还可以检查数据包的特定协议类型、端口号等。

网络管理员可以使用标准ACL阻止来自某一网络的所有通信流量,或者允许来自某一特定网络的所有通信流量,或者拒绝某一协议簇(比如IP)的所有通信流量。

扩展ACL比标准ACL提供了更广泛的控制范围。例如,网络管理员如果希望做到“允许外来的Web通信流量通过,拒绝外来的FTP和Telnet等通信流量”,那么,他可以使用扩展ACL来达到目的,标准ACL不能控制这么精确。

在路由器配置中,标准ACL和扩展ACL的区别是由ACL的表号来体现的,上表指出了每种协议所允许的合法表号的取值范围。

正确放置ACL

ACL通过过滤数据包并且丢弃不希望抵达目的地的数据包来控制通信流量。然而,网络能否有效地减少不必要的通信流量,这还要取决于网络管理员把ACL 放置在哪个地方。

假设在图3所示的一个运行TCP/IP协议的网络环境中,网络只想拒绝从RouterA的T0接口连接的网络到RouterD的E1接口连接的网络的访问,即禁止从网络1到网络2的访问。

根据减少不必要通信流量的通行准则,网管员应该尽可能地把ACL放置在靠近被拒绝的通信流量的来源处,即RouterA上。如果网管员使用标准ACL来进行网络流量限制,因为标准ACL只能检查源IP地址,所以实际执行情况为:凡是检查到源IP地址和网络1匹配的数据包将会被丢掉,即网络1到网络2、网络3和网络4的访问都将被禁止。由此可见,这个ACL控制方法不能达到网管员的目的。同理,将ACL放在RouterB和RouterC上也存在同样的问题。只有将ACL

放在连接目标网络的RouterD上(E0接口),网络才能准确实现网管员的目标。由此可以得出一个结论: 标准ACL要尽量靠近目的端。

网管员如果使用扩展ACL来进行上述控制,则完全可以把ACL放在RouterA 上,因为扩展ACL能控制源地址(网络1),也能控制目的地址(网络2),这样从网络1到网络2访问的数据包在RouterA上就被丢弃,不会传到RouterB、