ACL的使用ACL的处理过程:1、语句排序一旦某条语句匹配,后续语句不再处理。2、隐含拒绝如果所有语句执行完毕没有匹配条目默认丢弃数据包要点:ACL能执行两个操作:允许或拒绝。语句自上而下执行。一旦发现匹配,后续语句就不再进行处理---因此先后顺序很重要。如果没有找到匹配,ACL末尾不可见的隐含拒绝语句将丢弃分组。一个ACL应该至少有一条permit语句;否则所有流量都会丢弃,因为每个ACL末尾都有隐藏的隐含拒绝语句。如果在语句结尾增加denyany的话可以看到拒绝记录CiscoACL有两种类型一种是标准另一种是扩展,使用方式习惯不同也有两种方式一种是编号方式,另一种是命名方式。示例:编号方式标准的ACL使用1~99以及1300~1999之间的数字作为表号,扩展的ACL使用100~199以及2000~2699之间的数字作为表号一、标准(标准ACL可以阻止来自某一网络的所有通信流量,或者允许来自某一特定网络的所有通信流量,或者拒绝某一协议簇(比如IP)的所有通信流量。)允许172.17.31.222通过,其他主机禁止Cisco-3750(config)#access-list1(策略编号)(1-99、1300-1999)permithost172.17.31.222禁止172.17.31.222通过,其他主机允许Cisco-3750(config)#access-list1denyhost172.17.31.222Cisco-3750(config)#access-list1permitany允许172.17.31.0/24通过,其他主机禁止Cisco-3750(config)#access-list1permit172.17.31.00.0.0.254(反码255.255.255.255减去子网掩码,如172.17.31.0/24的255.255.255.255—255.255.255.0=0.0.0.255)禁止172.17.31.0/24通过,其他主机允许Cisco-3750(config)#access-list1deny172.17.31.00.0.0.254Cisco-3750(config)#access-list1permitany二、扩展(扩展ACL比标准ACL提供了更广泛的控制范围。例如,网络管理员如果希望做到“允许外来的Web通信流量通过,拒绝外来的FTP和Telnet等通信流量”,那么,他可以使用扩展ACL来达到目的,标准ACL不能控制这么精确。)允许172.17.31.222访问任何主机80端口,其他主机禁止Cisco-3750(config)#access-list100permittcphost172.17.31.222(源)any(目标)eq(23)端口其他禁止Cisco-3750(config)#access-list100(100-199、2000-2699)permittcpanyhost172.17.31.222eq23接口应用(入方向)(所有ACL只有应用到接口上才能起作用)Cisco-3750(config)#intg1/0/1Cisco-3750(config-if)#ipaccess-group1in(出方向out)命名方式一、标准建立标准ACL命名为test、允许172.17.31.222通过,禁止172.17.31.223通过,其他主机禁止Cisco-3750(config)#ipaccess-liststandardtestCisco-3750(config-std-nacl)#permithost172.17.31.222Cisco-3750(config-std-nacl)#denyhost172.17.31.223建立标准ACL命名为test、禁止172.17.31.223通过,允许其他所有主机。Cisco-3750(config)#ipaccess-liststandardtestCisco-3750(config-std-nacl)#denyhost172.17.31.223Cisco-3750(config-std-nacl)#permitany二、扩展建立扩展ACL命名为test1,允许172.17.31.222访问所有主机80端口,其他所有主机禁止Cisco-3750(config)#ipaccess-listextendedtest1Cisco-3750(config-ext-nacl)#permittcphost172.17.31.222anyeq,禁止所有主机访问172.17.31.222主机telnet(23)端口,但允许访问其他端口Cisco-3750(config)#ipaccess-listextendedtest1Cisco-3750(config-ext-nacl)#denytcpanyhost172.17.31.222eq23Cisco-3750(config-ext-nacl)#permittcpanyany接口应用(入方向)(所有ACL只有应用到接口上才能起作用)Cisco-3750(config)#intg1/0/1Cisco-3750(config-if)#ipaccess-grouptestin(出方向out)接口应用原则标准ACL,的应用靠近目标地址扩展ACL,的应用靠近源地址网上资料:CiscoACL原理及配置详解什么是ACL?访问控制列表简称为ACL,访问控制列表使用包过滤技术,在路由器上读取第三层及第四层包头中的信息如源地址,目的地址,源端口,目的端口等,根据预先定义好的规则对包进行过滤,从而达到访问控制的目的。该技术初期仅在路由器上支持,近些年来已经扩展到三层交换机,部分最新的二层交换机也开始提供ACL的支持了。访问控制列表使用原则由于ACL涉及的配置命令很灵活,功能也很强大,所以我们不能只通过一个小小的例子就完全掌握全部ACL的配置。在介绍例子前为大家将ACL设置原则罗列出来,方便各位读者更好的消化ACL知识。1、最小特权原则只给受控对象完成任务所必须的最小的权限。也就是说被控制的总规则是各个规则的交集,只满足部分条件的是不容许通过规则的。2、最靠近受控对象原则所有的网络层访问权限控制。也就是说在检查规则时是采用自上而下在ACL中一条条检测的,只要发现符合条件了就立刻转发,而不继续检测下面的ACL语句。3、默认丢弃原则在CISCO路由交换设备中默认最后一句为ACL中加入了DENYANYANY,也就是丢弃所有不符合条件的数据包。这一点要特别注意,虽然我们可以修改这个默认,但未改前一定要引起重视。由于ACL是使用包过滤技术来实现的,过滤的依据又仅仅只是第三层和第四层包头中的部分信息,这种技术具有一些固有的局限性,如无法识别到具体的人,无法识别到应用内部的权限级别等。因此,要达到端到端的权限控制目的,需要和系统级及应用级的访问权限控制结合使用。标准访问列表:访问控制列表ACL分很多种,不同场合应用不同种类的ACL。其中最简单的就是标准访问控制列表,标准访问控制列表是通过使用IP包中的源IP地址进行过滤,使用的访问控制列表号1到99来创建相应的ACL标准访问控制列表的格式访问控制列表ACL分很多种,不同场合应用不同种类的ACL。其中最简单的就是标准访问控制列表,他是通过使用IP包中的源IP地址进行过滤,使用的访问控制列表号1到99来创建相应的ACL。标准访问控制列表是最简单的ACL。它的具体格式如下:access-listACL号permit|denyhostip地址例如:access-list10denyhost192.168.1.1这句命令是将所有来自192.168.1.1地址的数据包丢弃。当然我们也可以用网段来表示,对某个网段进行过滤。命令如下:access-list10deny192.168.1.00.0.0.255通过上面的配置将来自192.168.1.0/24的所有计算机数据包进行过滤丢弃。为什么后头的子网掩码表示的是0.0.0.255呢?这是因为CISCO规定在ACL中用反向掩玛表示子网掩码,反向掩码为0.0.0.255的代表他的子网掩码为255.255.255.0。小提示:对于标准访问控制列表来说,默认的命令是HOST,也就是说access-list10deny192.168.1.1表示的是拒绝192.168.1.1这台主机数据包通讯,可以省去我们输入host命令。标准访问控制列表实例一我们采用如图所示的网络结构。路由器连接了二个网段,分别为172.16.4.0/24,172.16.3.0/24。在172.16.4.0/24网段中有一台服务器提供服务,IP地址为172.16.4.13。实例1:禁止172.16.4.0/24网段中除172.16.4.13这台计算机访问172.16.3.0/24的计算机。172.16.4.13可以正常访问172.16.3.0/24。路由器配置命令access-list1permithost172.16.4.13设置ACL,容许172.16.4.13的数据包通过。access-list1denyany设置ACL,阻止其他一切IP地址进行通讯传输。inte1进入E1端口。ipaccess-group1in将ACL1宣告。经过设置后E1端口就只容许来自172.16.4.13这个IP地址的数据包传输出去了。来自其他IP地址的数据包都无法通过E1传输。小提示:由于CISCO默认添加了DENYANY的语句在每个ACL中,所以上面的access-list1denyany这句命令可以省略。另外在路由器连接网络不多的情况下也可以在E0端口使用ipaccess-group1out命令来宣告,宣告结果和上面最后两句命令效果一样。标准访问控制列表实例二配置任务:禁止172.16.4.13这个计算机对172.16.3.0/24网段的访问,而172.16.4.0/24中的其他计算机可以正常访问。路由器配置命令:access-list1denyhost172.16.4.13设置ACL,禁止172.16.4.13的数据包通过access-list1permitany设置ACL,容许其他地址的计算机进行通讯inte1进入E1端口ipaccess-group1in将ACL1宣告,同理可以进入E0端口后使用ipaccess-group1out来完成宣告。配置完毕后除了172.16.4.13其他IP地址都可以通过路由器正常通讯,传输数据包。总结:标准ACL占用路由器资源很少,是一种最基本最简单的访问控制列表格式。应用比较广泛,经常在要求控制级别较低的情况下使用。如果要更加复杂的控制数据包的传输就需要使用扩展访问控制列表了,他可以满足我们到端口级的要求。扩展访问控制列表:上面我们提到的标准访问控制列表是基于IP地址进行过滤的,是最简单的ACL。那么如果我们希望将过滤细到端口怎么办呢?或者希望对数据包的目的地址进行过滤。这时候就需要使用扩展访问控制列表了。使用扩展IP访问列表可以有效的容许用户访问物理LAN而并不容许他使用某个特定服务(例如,FTP等)。扩展访问控制列表使用的ACL号为100到199。扩展访问控制列表的格式刚刚我们提到了标准访问控制列表,他是基于IP地址进行过滤的,是最简单的ACL。那么如果我们希望将过滤细到端口怎么办呢?或者希望对数据包的目的地址进行过滤。这时候就需要使用扩展访问控制列表了。使用扩展IP访问列表可以有效的容许用户访问物理LAN而并不容许他使用某个特定服务(例如,FTP等)。扩展访问控制列表使用的ACL号为100到199。扩展访问控制列表的格式:扩展访问控制列表是一种高级的ACL,配置命令的具体格式如下:access-listACL号[permit|deny][协议][定义过滤源主机范围][定义过滤源端口][定义过滤目的主机访问][定义过滤目的端口]例如:ac