2022年访问控制列表 2.pdf

上传人:H****o 文档编号:40319271 上传时间:2022-09-09 格式:PDF 页数:28 大小:1.72MB
返回 下载 相关 举报
2022年访问控制列表 2.pdf_第1页
第1页 / 共28页
2022年访问控制列表 2.pdf_第2页
第2页 / 共28页
点击查看更多>>
资源描述

《2022年访问控制列表 2.pdf》由会员分享,可在线阅读,更多相关《2022年访问控制列表 2.pdf(28页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、413 第 16 章访问控制列表(ACL)本章能帮助大家掌握以下技术要点:理解访问控制列表的基本原理掌握标准和扩展访问控制列表的配置方法利用访问控制列表对网络进行控制名师资料总结-精品资料欢迎下载-名师精心整理-第 1 页,共 28 页 -第 16 章 访问控制列表(ACL)414 在前面的所有章节中,我们学习的都是如何使网络连通,而在实际环境中网络管理员经常面临左右为难的困境:他们必须设法拒绝那些不希望的访问连接,同时又要允许正常的访问连接。虽然其他一些安全工具,例如设置密码、回叫信号设备以及硬件的保密装置等可以提供帮助,但它们通常缺乏基本通信流量过滤的灵活性和特定的控制手段,而这正是许多网

2、络管理员所需要的。例如,网络管理员或许允许局域网内的用户访问因特网,同时,他却不愿意局域网以外的用户通过因特网使用Telnet登录到本局域网。本章将讲解如何通过在路由器上配置访问控制列表(Access Control List,ACL),以提供基本的通信流量过滤能力,从而满足上面的要求;能够理解ACL的基本概念和工作原理。16.1 访问控制列表概述访问控制列表(ACL)是应用在路由器接口的指令列表(即规则)。具有同一个访问列表表号或名称的access-1ist语句便组成了一个逻辑序列或指令列表。这些指令列表用来告诉路由器,哪些数据包可以接收,哪些数据包需要拒绝。其基本原理是:ACL使用包过滤技

3、术,在路由器上读取OSI 7 层模型的第3 层及第 4 层包头中的信息,如源地址、目的地址、源端口、目的端口等,根据预先定义好的规则,对包进行过滤,从而达到访问控制的目的。首先,通过ACL对流量进行归类,使不同的流量类别对应不同的处理方式。然后,激活接口上的ACL命令,从而使通过该接口的所有通信流量都按照自身的类别接受不同的处理。ACL通过在路由器接口处控制数据包是转发还是丢弃,来过滤通信流量。路由器根据ACL中指定的条件来检测通过路由器的数据包,从而决定是转发,还是丢弃该数据包。ACL适用于所有的路由协议,如IP、IPX、AppleTalk。可以在路由器或多层交换机上配置 ACL来控制对特定

4、网络资源的访问。ACL 可分为两种基本类型:标准访问控制列表:检查被路由数据包的源地址。其结果基于源网络/子网/主机 IP 地址,来决定是允许还是拒绝转发数据包。它使用l 99 之间的数字作为表号。扩展访问控制列表:对数据包的源地址与目标地址均进行检查。它也能检查特定的协议、端口号以及其他参数。它使用100199 之间的数字作为表号。在过去的几年中,Cisco 公司大大增强了访问控制列表的能力,开发了诸如基于时间的访问控制列表、动态访问控制列表等新的类型,我们将在后面的章节讲述。ACL的定义是基于协议的。换言之,如果想控制某种协议的通信数据流,就要对该接口处的这种协议定义单独的ACL。例如,如

5、果路由器接口配置成支持3 种协议(IP、IPX 和AppleTalk),那么,至少要定义3 个访问控制列表。通过灵活地配置访问控制列表,ACL可以作为一种网络控制的有力工具来过滤流入、流出路由器接口的数据包。图 16.1 所示是使用ACL实现网络控制的图示。名师资料总结-精品资料欢迎下载-名师精心整理-第 2 页,共 28 页 -第 16 章 访问控制列表(ACL)415 图 16.1 使用 ACL 可以根据数据包的地址、类型等判断条件拒绝数据包16.1.1 访问控制列表的工作原理1访问控制列表的作用访问控制列表为网络控制提供了一个强有力的工具。访问控制列表能够为过滤通信量(即那些进出路由器接

6、口的数据包、增加灵活性。这样的控制有助于限定网络通信量和某些用户及设备对网络的使用。访问控制列表最常见的用途是作为数据包的过滤器。如果没有过滤器,那么,所有的数据包都能传输到网络的任一处。虽然访问控制列表经常与数据包过滤器联系在一起,但它还有许多其他用途。比如:可指定某种类型的数据包的优先级,以对某些数据包优先处理。访问控制列表还可以用来识别触发按需拨号路由选择(DDR)的相关通信量。访问控制列表也是路由映射的基本组成部分。总地来说,ACL 能够用来:提供网络访问的基本安全手段。例如,ACL允许某一主机访问某网络,而阻止另一主机访问同样的网络。如图16.2 所示,允许主机A 访问人力资源网络,

7、而拒绝主机B访问人力资源网络。如果没有在路由器上配置ACL,那么,通过路由器的所有数据包将畅通无阻地到达网络的所有部分。访问控制列表可用于QoS(Quality of Service,服务质量)对数据流量进行控制。例如,ACL可以根据数据包的协议,指定某类数据包具有更高的优先级,路由器可以优先处理。对于不感兴趣的数据包类型,可以赋予低优先级或直接拒绝。这样,ACL便起到了限制网络流量,减少网络拥塞的作用。名师资料总结-精品资料欢迎下载-名师精心整理-第 3 页,共 28 页 -第 16 章 访问控制列表(ACL)416 提供对通信流量的控制手段。例如,ACL可以限定路由选择更新信息的长度,这种

8、限定往往用来限制通过路由器的某一网段的通信流量。图 16.2 使用 ACL 阻止某指定网络访问另外一个指定网络通过访问控制列表,可以在路由器接口处决定哪种类型的通信流量被转发,哪种类型的通信流量被阻塞。例如,可以允许电子邮件通信流量被路由,同时却拒绝所有的Telnet通信流量。2路由器对访问控制列表的处理过程ACL是一组判断语句的集合,具体对下列数据包进行检测并控制:从入站接口进入路由器的数据包从出站接口离开路由器的数据包-提示:访问控制列表对路由器本身产生的数据包不起作用,如一些路由选择更新消息。-是否应用了访问控制列表,路由器对数据包处理过程是不一样的。路由器会检查接口上是否应用了访问控制

9、列表:(1)如果接口上没有ACL,就对这个数据包继续进行常规处理。(2)如果对接口应用了访问控制列表,与该接口相关的一系列访问控制列表语句组合将会检测它:若第一条不匹配,则依次往下进行判断,直到有任一条语句匹配,则不再继续判断,路由器将决定该数据包允许通过或拒绝通过。若最后没有任一条语句匹配,则路由器根据默认处理方式丢弃该数据包。名师资料总结-精品资料欢迎下载-名师精心整理-第 4 页,共 28 页 -第 16 章 访问控制列表(ACL)417 基于 ACL的测试条件,数据包要么被允许,要么被拒绝。如果数据包满足了ACL的 Permit的测试条件,数据包就可以被路由器继续处理。如果数据包满足了

10、ACL的 Deny 的测试条件,就简单地丢弃该数据包。一旦数据包被丢弃,某些协议将返回一个数据包到发送端,以表明目的地址是不可到达的。图 16.3 说明了路由器对访问控制列表的处理过程。图 16.3 ACL 对数据包进行检查,并通知不想要的那些数据包的发送端显然,根据路由器对访问控制列表的处理过程,在 ACL中,各描述语句的放置顺序是很重要的。一旦找到了某一匹配条件,就结束比较过程,不再检查以后的其他条件判断语句。因此,要确保是按照从具体到普遍的次序来排列条目。例如,如果把一条允许所有主机数据包通过的语句放在想要拒绝来自某具体主机的数据包的语句前面,那么,将永远不会执行到这条拒绝语句,所有的数

11、据包都将畅通无阻地通过。另外,要注意将较经常发生的条件放在较不经常发生的条件之前,以提高路由器的处理效率。要记住,只有在数据包与第一个判断条件不匹配时,它才交给 ACL中的下一个条件判断语句进行比较;在与某条语句匹配后,就结束比较过程,不再检查以后的其他条件判断语句;如果不与任一语句匹配,则它必与最后隐含的拒绝匹配。-提示:最后一个隐含的判断条件语句涉及到所有条件都不匹配的数据包。这个最后的测试条件与所有其他的数据包匹配,它的匹配结果是拒绝。如果要避免这种情况,那么,这个最后的隐含测试条件必须改为允许。一般隐含拒绝并不会出现在配置文件中。建议在配置文件中显示隐含拒绝条件判断语句,这样可以提高可

12、读性。-名师资料总结-精品资料欢迎下载-名师精心整理-第 5 页,共 28 页 -第 16 章 访问控制列表(ACL)418 3访问控制列表的入与出使用命令ip access-group,可把访问控制列表应用到某一接口上。其中,关键字in或 out 指明访问控制列表是对进来的(以接口为参考点),还是对出去的数据包进行控制:-提示:在接口的一个方向上,只能应用1 个 access-list。-入访问控制列表不处理从该接口离开路由器的数据包;而对于出访问控制列表而言,它不处理从该接口进入路由器的数据包。对入标准访问控制列表的处理过程如图16.4 所示。图 16.4 对入标准ACL 的处理过程(1)

13、当接收到一个数据包时,路由器检查数据包的源地址是否与访问控制列表中的条目相符。(2)如果访问控制列表允许该地址,那么,路由器将停止检查访问控制列表,继续处理该数据包。(3)如果访问控制列表拒绝了这个地址,那么,路由器将丢弃该数据包,并且返回一个因特网控制消息协议(ICMP)的管理性拒绝(administratively prohibited)消息。对外出标准访问控制列表的处理过程如图16.5 所示。名师资料总结-精品资料欢迎下载-名师精心整理-第 6 页,共 28 页 -第 16 章 访问控制列表(ACL)419 (1)在接收并将数据包转发到相应的受控制的接口后,路由器检查数据包的源地址是否与

14、访问控制列表中的条目相符。图 16.5 对外出标准访问控制列表的处理过程(2)如果访问控制列表允许该地址,那么路由器将传输该数据包。(3)如果访问控制列表拒绝了这个地址,那么路由器将丢弃该数据包,并且返回一个因特网控制消息协议(ICMP)的管理性拒绝(administratively prohibited)消息。上述两个处理过程的区别如下:路由器对进入的数据包先检查入访问控制列表,对允许传输的数据包才查询路由表。而对于外出的数据包先查询路由表,确定目标接口后才查看出访问控制列表。-提示:应该尽量把访问控制列表应用到入站接口,因为它比应用到出站接口效率更高:将要丢弃的数据包在路由器进行了路由表查

15、询处理之前就拒绝它。-对于扩展访问控制列表的处理过程是类似的,这里不再重复。4访问控制列表的deny 和 permit 在路由器对访问控制列表的处理过程中,提到了基于ACL的测试条件,数据包要么被允许,要么被拒绝。用于创建访问控制列表的全局access-list命令中的关键字permit/deny 可以实现上述功能。下列语法结构给出了全局access-list命令的通用形式:名师资料总结-精品资料欢迎下载-名师精心整理-第 7 页,共 28 页 -第 16 章 访问控制列表(ACL)420 这里的全局access-list语句中的“permit”或“deny”,指明了Cisco IOS软件如何

16、处理满足检测条件的数据包。permit意味着允许数据包通过应用了访问控制列表的接口(对入站接口来说,意味着被允许的数据包将继续处理;对出站接口来说,意味着被允许的数据包将直接发送出去)。deny 选项意味着路由器拒绝数据包通过:如果满足了参数是deny 的测试条件,就简单地丢弃该数据包。-提示:这里的语句通过访问列表表号来识别访问列表。此表号还指明了访问列表的类别。-Access-list语句中最后的参数指定了此语句所用的检测条件:检测可以很简单,只检测源地址(标准 ACL)。ACL也可以进行扩展,不仅仅是按照源地址进行检测,还可以包括更多个条件。我们将在16.2 节和 16.3 节中详细讲述

17、。下面是给标准ACL设置测试条件的实例。拓扑如图16.10 所示,在这个例子中,将利用deny 和 permit来设置访问控制列表。(1)创建访问控制列表:(2)应用到接口EO的出方向上:下面,简要介绍这几条命令的功能。第 1 条命令:拒绝来自主机172.16.4.13的数据包。其中的1 表明这是一个标准访问控制列表。第 2 条命令:允许网络172.16.0.0的所有流量通过。-提示:这两条命令的顺序不能颠倒。否则,就不会执行拒绝172.1 6.4.13的数据包的命令。-名师资料总结-精品资料欢迎下载-名师精心整理-第 8 页,共 28 页 -第 16 章 访问控制列表(ACL)421 第 3

18、 条命令:允许任何流量通过。如果没有这条命令,该列表将只允许172.16.0.0的流量通过。注意,在它之后是隐含拒绝所有流量。最后两条命令:把这个 ACL绑定到接口E0出的方向上。-提示:如果在访问控制列表的条目生成之前用ip access-group命令将其应用到接口上,结果将是permit anv(允许所有的数据包)。如果只输入一条允许行,则一旦输入,该列表将从“允许所有的数据包”变为“拒绝大多数数据包”语句(由于列表末端隐含的“拒绝所有的数据包”起作用)。因此,在把访问权限表应用到接口之前一定要创建它。-如果要删除一个访问控制列表,首先在接口模式下输入命令:并带有它的全部参数。然后再在全

19、局模式下输入命令:并带有它的全部参数。16.1.2 访问控制列表的通配符1使用通配符any 使用二进制反码的十进制表示方法相当单调乏味。最普遍的反码使用方式是使用缩写字。当网络管理员配置测试条件时,可用缩写字来代替冗长的反码字符串,它将大大减少输入量。假设网络管理员要在访问控制列表测试中允许访问任何目的地址。为了指出是任何IP地址,网络管理员将要输入0.0.0.0;然后还要指出访问控制列表将要忽略(允许步测试)任何值,相应的反码位是全1,即 255.255.255.255。不过,管理员可以使用缩写字any,把上述测试条件表达给Cisco IOS 软件。这样,管理员就不需要输入0.0.0.0 2

20、55.255.255.255,而只要使用通配符any 即可。名师资料总结-精品资料欢迎下载-名师精心整理-第 9 页,共 28 页 -第 16 章 访问控制列表(ACL)422 例如,对于下面的测试条件:可以用 any 改写成:2使用通配符host 当网络管理员想要与整个IP 主机地址的所有位相匹配时,Cisco IOS允许在访问控制列表的反码中使用缩写字host。假设网络管理员想要在访问控制列表的测试中拒绝特定的主机地址。为了表示这个主机IP 地址,管理员将要输入:172.30.16.29,然后指出这个访问控制列表将要测试这个地址的所有位,相应的反码位全为零:0.0.0.0。不过,管理员可以

21、使用缩写字host,来表达上面所说的这种测试条件。例如,下面的测试语句:可以改写成:16.1.3 访问控制列表的种类在本节中将学习两种类型的访问控制列表:标准访问控制列表和扩展访问控制列表(IP)。标准 IP 访问列表只对源IP 地址进行过滤。扩展访问控制列表不仅可以过滤源IP 地址,还可以对目的IP 地址、源端口、目的端口等进行过滤。当使用命名的访问控制列表时,还可以用名字来创建访问控制列表。对这两种基本的访问控制列表,后面会进行详细的阐述。而在实际应用中,访问控制列表的种类要丰富得多,包括按照时间对向内或向外的流量进行控制,根据第二层的MAC地址进行控制等新功能,以及增加了在标准和扩展访问

22、控制列表中插入动态条目的能力,还可以通过访问控制列表防止黑客攻击web 服务器和其他网络设备。有兴趣的学员可以查看相关资料。ACL通过过滤数据包,并且丢弃不希望抵达目的地的数据包来控制通信流量。最终能否有效地减少不必要的通信流量,取决于网络管理员把ACL 测试条件应用在哪个地方。设想某个企业的策略目标是,拒绝路由器A 的 E1端口通过路由器D的 EO端口到达内部网络的 Telnet和 FTP通信流量,同时允许其他的通信流量,如图 16.6 所示。有多种不同的途径可以实现本策略,使用扩展ACL,是比较好的一种。它既可以控制目的地址,也可以控制源地址。把配置好的ACL应用在路由器A 上,然后,数据

23、包就不能通过路由器A的以太网,也不能通过路由器B和 C 的串行接口,当然也不能进入路由器D。而具有其他不同的源地址和目的地址的数据包,仍可以通行无阻。名师资料总结-精品资料欢迎下载-名师精心整理-第 10 页,共 28 页 -第 16 章 访问控制列表(ACL)423 如下图 16.6 应把标准ACL放在离目的地近的地方,把扩展 ACL放在离源地址近的地方。图 16.6 要尽可能地把扩展ACL应用在距离要拒绝通信流量的来源最近的地方,以减少不必要的通信流量。而对于标准ACL,因为它只能指定源地址,如果通往远端目的地的通信流量被拒绝,那么,就不能通过此路由访问远端的网络资源,所以,最好把标准AC

24、L应用在离目的地最近的地方。例如,在图16.6 中,网络管理员应该在路由器D的 EO处应用一个标准ACL,或在路由器A的 El 处应用一个扩展ACL,来阻塞从路由器A来的流量。16.2 标准访问控制列表当管理员想要阻止来自某一特定网络的所有通信流量,或允许来自某一特定网络的所有通信流量时,可以使用标准访问列表实现这一目标。16.2.1 什么是标准访问控制列表标准 IP 访问控制列表根据数据包的源IP 地址来允许或拒绝数据包,访列表号是199。标准访问控制列表是针对源IP 地址而应用的一系列允许和拒绝条件。路由器逐条测试数据包的源IP 地址与访问控制列表的条件是否相符。一旦匹配,就将决定路由器是

25、接收还是拒绝数据包。因为只要匹配了某一个条件之后,路由器就停止继续测试剩余的条件,所以,条件的次序是非常关键的。如果所有的条件都不能够匹配,路由器将拒绝该数据包。图 16.7 标准 ACL 表只基于源地址进行过滤名师资料总结-精品资料欢迎下载-名师精心整理-第 11 页,共 28 页 -第 16 章 访问控制列表(ACL)424 对于单独的一个ACL,可以定义多个条件判断语句。每个条件判断语句都指向同一个固定的 ACL,以便把这些语句限制在同一个ACL之内。另外,ACL中条件判断语句的数量是无限的,其数量的大小只受内存的限制。当然,条件判断语句越多,该ACL的执行和管理就越困难。因此,合理地设

26、置这些条件判断语句将有效地防止出现混乱。图 16.8 说明了标准访问控制列表的处理过程。-提示:当访问控制列表中没有剩余条目时,所采取的行动是拒绝数据包。这非常重要:访问控制列表中的最后一个条目是众所周知的隐含拒绝一切。所有没有明确被允许的数据流都将被隐含拒绝。-图 16.8 对标准访问控制列表处理过程-提示:当配置访问控制列表时,顺序很重要。要确保按照从具体到普遍的次序来排列条目。例如,如果想要拒绝一个具体的主机地址并且允许所有其他主机,那么,要确保有关这个具体主机的条目最先出现。-16.2.2 标准访问控制列表的应用与配置标准ACL 检查可以被路由的数据包的源地址,从而允许或拒绝基于网络、

27、子网和主机IP 地址以及某一协议族的数据包通过路由器。例如,在图16.9 中,从E0 处进来的数据经过检查其源地址和协议类型,如果该数据包被允许通过,就从S0转发出去,如果该数据包没被允许,就简单地丢弃它。图 16.9 标准 ACL检查从 E0进来的数据包的源地址和协议类型名师资料总结-精品资料欢迎下载-名师精心整理-第 12 页,共 28 页 -第 16 章 访问控制列表(ACL)425 图 16.9 标准 ACL 检查从 E0 进来的数据包的源地址和协议类型1 access-list和 show access-list命令:配置和显示访问列表可以使用全局配置命令access-list来定义

28、一个标准的访问控制列表,并给它分配一个数字表号。详细语法如下:另外,可以通过在access-list命令前加no 的形式,消除一个已建立的标准ACL:下面是 access-list命令参数的详细说明:(1)access-list-number:访问控制列表表号,用来指出属于哪个访问控制列表(对于标准 ACL来说,是199 的一个数字)。(2)permit/deny:如果满足测试条件,则允许/拒绝该通信流量。(3)source:数据包的源地址,可以是主机地址,也可以是网络地址。可以有两种不同的方式来指定数据包的源地址:采用十进制的32 比特位数字表示,每8 位一组,中间用点号隔开。如168.12

29、3.23.23。使用关键字any 作为一个源地址和反码(如 0.0.0.0 255.255.255.255)的缩写字。(4)source-wildcard:用来跟源地址一起决定哪些位需要进行匹配操作。有两种方式来指定 source-wildcard:采用十进制的32 比特位数字表示,每8 位为一组,中间用点号隔开。如果某位为1,表明这一位不需要进行匹配操作,如果为0 则表明这一位需要严格匹配。使用关键字any 作为一个源地址和反码(如 0.0.0.0 255.255.255.255)的缩写字。名师资料总结-精品资料欢迎下载-名师精心整理-第 13 页,共 28 页 -第 16 章 访问控制列表

30、(ACL)426(5)log(可选项):生成相应的日志信息。可以使用show access-list命令来显示所有访问控制列表的内容,也可以使用这个命令显示一个访问控制列表的内容。在下面的例子中,一个标准ACL允许 3 个不同网络的流量通过:-提示:所有其他的访问都隐含地被拒绝了。-在这个例子中,反码位作用于网络地址的相应位,从而决定哪些主机可以相匹配。对于那些源地址与ACL条件判断语句不匹配的流量,将被拒绝通过。向访问列表中加入语句时,这些语句加入到列表末尾。对于使用编号的访问控制列表,编号列表的单个语句是无法删除的。如果管理员要改变访问列表,必须先要删除整个访问列表,然后重新输入改变的内容

31、。建议在TFTP服务器上用文本编辑器生成访问列表,然后下载到路由器上。也可以使用终端仿真器或PC上的 Telnet会话来将访问列表剪切、粘贴到处于配置模式的路由器上。2 access-group命令:ACL 与出站接口联系起来 access-group命令把某个现存的访问控制列表与某个出站接口联系起来。对于该命令要记住,在每个端口、每个协议、每个方向上只能有一个访问控制列表。下面是 access-group 命令的语法格式:其中,各个参数的说明如下:access-list-number:访问控制列表表号,用来指出链接到这一接口的ACL表号。in/out:用来指示该ACL是应用到流入接口(in)

32、,还是流出接口(out)。3标准ACL 的配置实例下面是一些标准ACL的配置实例,如图16.10 所示:第一个例子允许源网络地址是172.16.0.0的通信流量通过。第二个例子拒绝源地址位为172.16.4.13的通信流量,允许所有其他的流量。第三个例子拒绝来自子网172.16.4.0的所有通信流量,而允许所有其他的通信流量。名师资料总结-精品资料欢迎下载-名师精心整理-第 14 页,共 28 页 -第 16 章 访问控制列表(ACL)427 图 16.10 一个路由器连接两个子网所组成的网络实例(1)允许特定源的通信流量通过本例中,ACL只允许源网络地址为172.16.0.0的通信流量通过,

33、而阻塞其他所有的通信流量。下面详细描述了ACL是如何实现这一控制的。实现过程如下:创建允许172.16.0.0的流量的ACL:应用到接口EO和 E1的出方向上:下面是各参数的有关说明:“l”:访问控制列表表号,用来指出这是一个标准访问控制列表。“permit”:用来指示满足条件的通信流量将被通过,继续转发。“172.16.O.0“:一个 IP 地址,用来与反码一起指定一个源网络地址范围。“0.0.255.255“:反码。掩码位为O表示必须进行严格匹配,而掩码位为1 表示不需进行匹配操作。(2)拒绝特定主机的通信流量在下面的例子中,说明了如何设计ACL阻塞来自特定主机172.16.4.13的通信

34、流量,而把所有其他的通信流量从以太网E0接口转发出去。它的第一条access-list命令通过使用名师资料总结-精品资料欢迎下载-名师精心整理-第 15 页,共 28 页 -第 16 章 访问控制列表(ACL)428 deny 参数来拒绝指定主机的通信流量,这里的掩码0.0.0.0要求测试条件对所有位都要进行严格测试。实现步骤如下:创建拒绝来自172.16.4.13的流量的ACL:应用到接口EO的出方向上:下面是各参数的说明:“l”:访问控制列表表号,用来指出这是一个标准访问控制列表。“deny”:用来指示满足条件的通信流量将被拒绝。“host”:是 0.0.0.0的反码速记方法。“permi

35、t”:用来指示满足条件的通信流量将被通过,继续转发。“0.0.0.0”:一个源主机的IP 地址,所有的0 表示一个占位符。“255.255.255.255”反码。掩码位为O表示必须进行严格匹配;而掩码位为1 表示不感兴趣不需要进行匹配操作。这里所有掩码位为1,表示源地址的32 位都不需要检查。在第二行access-list命令中,0.0.0.0 255.255.255.255这个 IP 地址/反码的组合用来表示任何来源的通信流量,可以使用关键字any 代替。再次强调,IP 地址中的所有的0 表示一个占位符,而所有的反码位的1 表示源地址的32 位都可以忽略,不用进行检查。那些与 ACL中第一行

36、测试条件不匹配的数据包,肯定与第二行的测试条件相匹配,并且将被转发出去。(3)拒绝特定子网的通信流量下面的例子说明了,如何设计ACL阻塞特定子网172.16.4.0的通信流量,而允许所有其他的通信流量,并把它们转发出去。注意这里的反码一0.0.0.255,开头的3 个 8 位组的0 表示测试条件需要关注这些位。另外,还要注意用来代替源地址的缩写字any 的使用情况。拒绝特定子网通信流量的实现步骤如下:创建拒绝来自子网172.16.4.0的流量的ACL:名师资料总结-精品资料欢迎下载-名师精心整理-第 16 页,共 28 页 -第 16 章 访问控制列表(ACL)429 应用到接口EO的出方向上

37、:下面是各参数的有关说明:“l”:标准访问控制列表表号,该表号的ACL用来阻塞特定子网172.16.4.O的通信流量,而允许所有其他通信流量。“deny”:用来指示满足条件的通信流量将被拒绝。“172.16.4.0”:源子网的IP 地址。“0.0.0.0”:反码。掩码位为0 表示必须进行严格匹配;而掩码位为1 表示不感兴趣,不需要进行匹配操作。这里前3 个 8 位组的反码位都为O,表示这些位必须要严格检查。而最后一个8 位组的反码位都是1 表示不感兴趣,不用进行检查。“permit”:用来指示满足条件的通信流量将被通过,继续转发。“any”:源 IP 地址的缩写字,它与0.0.0.0 255.

38、255.255.255等价。通配符掩码位都是 1,表示 ACL对源地址整个32 位都不进行检查。16.3 扩展访问控制列表16.3.1 扩展访问控制列表的概念扩展 ACL通过启用基于源和目的地址、传输层协议和应用端口号的过滤来提供更高程度的控制。利用这些特性,可以基于网络的应用类型来限制数据流。表号在100199 之间。如图 16.11 所示,扩展访问控制列表行中的每个条件都必须匹配才认为该行被匹配,才会施加允许或拒绝条件。只要有一个参数或条件匹配失败,就认为该行不被匹配,并立即检查访问控制列表中的下一行。图 16.11 扩展 IP 访问控制列表处理流程图名师资料总结-精品资料欢迎下载-名师精

39、心整理-第 17 页,共 28 页 -第 16 章 访问控制列表(ACL)430 扩展 ACL比标准 ACL提供了更广阔的控制范围,因而更受网络管理员的偏爱。例如,要是只想允许外来的Web通信量通过,同时又要拒绝外来的FTP和 Telnet等通信量时,就可以通过使用扩展ACL来达到目的。这种扩展后的特性给网络管理员提供了更大的灵活性,可以灵活多变地设置ACL的测试条件。数据包是否被允许通过该端口,既可以基于它的源地址,也可以基于它的目的地址。例如,在图169 中,要求一边允许从E0来的 E-mail 通信流量抵达目的地S0,一边又拒绝远程登录和文件传输。要实现这种控制,可以在接口E0 绑定一个

40、扩展 ACL,即使用一些精确的逻辑条件判断语句创建的ACL。一旦数据包通过该接口的时候,绑定在该接口的ACL就检查这些数据包,并且进行相应的处理。使用扩展ACL可以实现更加精确的流量控制。扩展 ACL的测试条件即可检查数据包的源地址,也可以检查数据包的目的地址。此外,在每个扩展ACL条件判断语句的后面部分,还通过一个特定参数字段来指定一个可选的TCP或 UDP的端口号。这些端口号通常是TCP/IP中的一些“著名的”端口号,表16-1 给出了一小部分常见的端口号。表 16-1 常见的端口号基于这些扩展ACI。的测试条件,数据包要么被允许,要么被拒绝。对入站接口来说,意味着被允许的数据包将继续进行

41、处理。对出站接口来说,意味着被允许的数据包将直接转发,如果满足了参数是deny 的条件,就简单地丢弃该数据包。路由器的这种ACL实际上提供了一种防火墙控制功能,用来拒绝通信流量通过端口。一旦数据包被丢弃,某些协议将返回一个数据包到发送端,以表明目的地址是不可到达的。16.3.2 扩展访问控制列表的应用与配置1扩展访问控制列表的配置在扩展 ACL中,命令access-list的完全语法格式如下:名师资料总结-精品资料欢迎下载-名师精心整理-第 18 页,共 28 页 -第 16 章 访问控制列表(ACL)431 下面是该命令有关参数的说明:“access-list-number”:访问控制列表表

42、号。使用 100199 之间的数字来标识一个扩展访问控制列表。“permit/deny”:用来表示在满足测试条件的情况下,该入口是允许还是拒绝后面指定地址的通信流量。“protocol”:用来指定协议类型,如IP、TCP、UDP、ICMP、GRE以及 IGRP。“source、destination”:源和目的,分别用来标识源地址和目的地址。“source-wildcard、destination-wildcard”:反码,source-wildcard是源反码,与源地址相对应;destination-wildcard是目的反码,与目的地址对应。“operatoroperan”:lt(小于)、

43、gt(大于)、eq(等于)、neq(不等于)和一个端口号。“established”:如果数据包使用一个已建立连接(例如该数据包的ACK位设置了),便可以允许TCP信息量通过。接下来,就可以使用ip access-group命令把已存在的扩展ACL连接到一个接口。它的使用方法与16.2 一节中所述相同。这里不再细述。2扩展访问控制列表的应用下面介绍扩展ACL配置的实例,可参考图16.10所示的网络。第一个例子将拒绝FTP通信流量通过EO接口。第二个例子只拒绝Telnet通信流量经过EO,而允许其他所有流量经过 EO。(1)应用 1:拒绝所有从172.16.4.0 到 172.16.3.0 的

44、FTP 通信流量通过EO 名师资料总结-精品资料欢迎下载-名师精心整理-第 19 页,共 28 页 -第 16 章 访问控制列表(ACL)432 下面的例子说明了扩展ACL如何阻塞所有从172.16.4.0到 172.16.3.0的 FTP通信流量通过 EO。实现步骤如下:创建拒绝来自172.16.4.0去往 172.16.3.0的 FTP流量的 ACL:应用到接口E0 的出方向:如下命令:参数说明如下:“101”:访问控制列表表号,指示这是一个扩展ACL。“deny”:用来指示满足条件的通信流量将被阻塞。“tcp”:传输控制协议。“172.16.4.0 0.0.0.255”:塬地址及其反码。

45、前3 个 8 位组需要严格匹配,但最后一个 8 位组不需要检查。“172.16.3.0 0.0.0.255”:目的地址及其反码。前3 个 8 位组需要严格匹配,但最后一个 8 位组不需要检查。“eq 21”:为 FTP(程序)指定端口21。另外,命令:把该访问控制列表(ACL 101)绑定到一个出站接口E0 上。注意,该ACL并没有完全拒绝 FTP服务类型的通信流量,它仅仅拒绝了端口21 上的通信流量。因为FTP服务可以很容易地通过配置到别的端口来实现。-提示:要记住,所谓的著名端口也仅仅是“著名”而已,并不能保证特定服务一定与特定的端口相绑定,尽管它们往往是绑在一起的。-(2)应用 2:拒绝

46、来自指定子网的Telnet 通信流量下面的例子说明如何建立扩展ACL,以便只拒绝所有通过EO从 172.6.4.0到 172.16.3.0的 Telnet通信流量,而允许其他的通信流量。实现步骤如下:名师资料总结-精品资料欢迎下载-名师精心整理-第 20 页,共 28 页 -第 16 章 访问控制列表(ACL)433 建立拒绝来自172.6.4.0去往 172.16.3.0的 Telnet流量的 ACL:用到接口EO的出方向上:其参数说明如下:“101”:访问控制列表表号;指示这是一个扩展ACL。“tcp”:传输控制协议。“172.16.4.0 0.0.0.255”:塬地址及其反码。前3 个

47、8 位组需要严格匹配,但最后一个 8 位组不需要检查。“172.16.3.0 0.0.0.255”:目的地址及其反码。“eq 23”:为 TELNET(程序)指定端口23。下面的命令:access-group 101表示把 ACL 101绑定到了EO的出站方向。查看和验证访问控制列表的命令与标准ACL下的命令相同。16.4 命名访问控制列表1访问控制列表的命名在标准 ACL和扩展 ACL中,可以使用一个字母数字组合的字符串(名字)代替前面所使用的数字(1 199)来表示 ACL的表号,称为命名ACL。命名 ACL还可以用来从某一特定的ACL中删除个别的控制条目,这样可以让网络管理员方便地修改A

48、CL,而不用必须完全删除一个ACL,然后再重新建立一个ACL来进行修改。可以在下列情况下使用命名ACL:需要通过一个字母数字串组成的名字来直观地表示特定的ACL。对于某一给定的协议,在同一路由器上,有超过99 个的标准ACL或者有超过100个的扩展 ACL需要配置。另外,在使用命名ACL的过程中,需要注意:IOS 11.2以前的版本不支持命名ACL。名师资料总结-精品资料欢迎下载-名师精心整理-第 21 页,共 28 页 -第 16 章 访问控制列表(ACL)434 不能以同一个名字命名多个ACL。另外,不同类型的AcL 也不能使用相同的名字。例如,给标准的ACL命名为 george 后,又给

49、一个扩展的ACL命名为同样的名字george,这种做法是不允许的。命名 IP 访问列表允许从指定的访问列表删除单个条目。但是,条目无法有选择地插入到列表中的某个位置。如果添加一个条目到列表中,那么该条目添加到列表末尾。给 ACL命名的命令语法如下:在 ACL配置模式下,通过指定一个或多个Permit(允许)及 Deny(拒绝)条件,来决定一个数据包是允许通过还是被丢弃。注意,在命名的访问控制列表下,Permit和 Deny 命令的语法格式与前述有所不同:可以使用带no 形式的对应Permit 或 Deny命令,来删除一个Permit 或 Deny命令:这里 test conditions的使用

50、可参考标准和扩展访问控制列表中相应的内容。2命名的访问控制列表的应用下面的例子说明了如何建立一个命名扩展ACL,以便只拒绝通过E0从 172.16.4.0到172.16.3.0的 Telnet通信流量,而允许其他的通信流量(网络拓扑可参看图16.10)。实现步骤如下:(1)创建名为cisco的命名访问控制列表:(2)指定一个或多个Permit(允许)及 Deny(拒绝)条件:(3)应用到接口E0的出方向:名师资料总结-精品资料欢迎下载-名师精心整理-第 22 页,共 28 页 -第 16 章 访问控制列表(ACL)435 这个例子与前一节中的“应用2”相同,只不过这次是使用命名扩展ACL来实现

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 技术资料 > 技术总结

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁