赞
踩
ACL可以通过定义规则来允许或者拒绝流量的通过。
如图所示,192.168.1.0网段的社交场所为只能够进入公网,而不能够进入服务器,这个时候我们在路由器或者是三层交换机上(带路由功能的交换设备)上配置ACL策略,在192.168.1.0网段的数据包发送到RTA的时候会在入网口进行检测,从而判断能否让该(IP/MAC/端口)通过。
1.ACL是由一系列规则组成的集合。设备可以通过这些规则对数据包进行分类,并对不同类型的报文进行不同的处理。
2.本示例中,网关RTA允许192.168.1.0/24中的主机可以访问外网,也就是Internet;而192.168.2.0/24中的主机则被禁止访问Internet。对于服务器A而言,情况则相反。网关允许192.168.2.0/24中的主机访问服务器A但却禁止192.168.1.0/24中的主机访问服务器A。
路由器上、防火墙、三层交换机上
路由器上就叫ACL !
防火墙上一般称为策略! 策略就是升级版的ACL,策略可以基于IP、端口、协议、应用层数据进行各种过滤
其实也是一种过滤技术,基于数据包中的IP地址、端口号来对数据包进行过滤!
编号越小优先级越靠前
每个ACL可以包含多个规则,RTA根据规则来对数据流量进行过滤。
1.一个ACL可以由多条“deny | permit”语句组成,每一条语句描述了一条规则。设备收到数据流量后,会逐条匹配ACL规则,看其是否匹配。如果不匹配,则匹配下一条。一旦找到一条匹配的规则,则执行规则中定义的动作,并不再继续与后续规则进行匹配。如果找不到匹配的规则,则设备不对报文进行任何处理。需要注意的是,ACL中定义的这些规则可能存在重复或矛盾的地方。规则的匹配顺序决定了规则的优先级,ACL通过设置规则的优先级来处理规则之间重复或矛盾的情形。
⒉.配置顺序按ACL规则编号(rule-id)从小到大的顺序进行匹配。设备会在创建ACL的过程中自动为每一条规则分配一个编号,规则编号决定了规则被匹配的顺序。例如,如果将步长设定为5,则规则编号将按照5、10、15...这样的规律自动分配。如果步长设定为2,则规则编号将按照2、4、6...这样的规律自动分配。通过设置步长,使规则之间留有一定的空间,用户可以在已存在的两个规则之间插入新的规则。路由器匹配规则时默认采用配置顺序。另外,ARG3系列路由器默认规则编号的步长是5。
3.自动排序使用“深度优先”的原则进行匹配,即根据规则的精确度排序。
4.本示例中,RTA收到了来自两个网络的报文。默认情况下,RTA会依据ACL的配置顺序来匹配这些报文。网络172.16.0.0/24发送的数据流量将被RTA上配置的ACL2000的规则15匹配,因此会被拒绝。而来自网络172.17.0.0/24的报文不能匹配访问控制列表中的任何规则,因此RTA对报文不做任何处理,而是正常转发。
5.华为ACL最后的默认的隐含的一条,不是拒绝所有,而是允许所有
1)先判断要控制的数据流源和目标,并画出控制数据流的方向!进而判断ACL可以写在哪些路由器上!
2)打开那台路由器,开始编写ACL过滤规则!
3)最后将ACL表应用到某个接口的某个方向才能生效!
以上为模拟实验环境。
正常ping没问题
下面来配置ACL策略(在AR1上面配置)
acl 2000 创建一个ACL 并进入
rule deny source (IP/掩码) 在ACL2000中配置一条禁止某某IP通过的策略
interface gigabit Ethernet 0/0/0 进入接口
traffic-filter outbound acl 2000 将ACL2000写入0/0/0接口
试一试192到10.1.1.2能否通过
还能够ping通,这里是因为他不是对网关进行过滤,而是对单独IP进行过滤,所以我们需要在增加对192.168.1.1 和192.168.1.2IP的过滤
上面是PC1的
上面是PC2的。拿捏了。
再看看下面172的
OK
1.acl [ number ]命令用来创建一个ACL,并进入ACL视图。
2.rule [ rule-id ] { deny / permit } source f source-address source-wildcard | any }命令用来增加或修改ACL的规则。deny用来指定拒绝符合条件的数据包,permit用来指定允许符合条件的数据包,source用来指定ACL规则匹配报文的源地址信息,any表示任意源地址。
3.traffic-filter { inbound | outbound }acl{ acl-number }命令用来在接口上配置基于ACL对报文进行过滤。
4.本示例中,主机A发送的流量到达RTA后,会匹配ACL2000中创建的规则rule deny source 192.168.1.0 0.0.0.255,因而将被拒绝继续转发到Internet。主机B发送的流量不匹配任何规则,所以会被RTA正常转发到Internet。
上面说过,高级的ACL可以基于IP、端口、协议来对数据包进行过滤。上网访问的大多数都是对方的服务器,我们可以通过ACL高级策略来控制想要访问的端口或者协议。
在连接外网的最后一个路由器或者三层交换机上面进行。
ACL 3000 创建高级ACL
rule deny tcp source 192.168.1.0 0.0.0.255(源IP/掩码) destination 172.16.1.1 0.0.0.0(目的IP/掩码) destination-port eq 21 目的 端口号或者协议(21或者ftp)
rule deny tcp source 192.168.2.0 0.0.0.255 destination 172.16.1.2 0.0.0.0
rule permit ip
进入相对应的接口
traffic-filter outbound acl 3000 加入接口
1.基本ACL可以依据源IP地址进行报文过滤,而高级ACL能够依据源/目的IP地址、源/目的端口号、网络层及传输层协议以及IP流量分类和TCP标记值等各种参数(SYN|ACK|FIN等)进行报文过滤。
2.本示例中
定义了高级 ACL 3000
第一条规则“rule deny tcp source192.168.1.0 0.0.0.255 destination 172.16.1.1 0.0.0.0 destination-port eq 21”用于限制 源地址范围是192.168.1.0/24,目的IP地址为172.16.1.1,目的端口号为21的所有TCP报文
第二条规则rule deny tcp source 192.168.2.0 0.0.0.255 destination 172.16.10.20.0.0.0”用于限制源地址范围是192.168.2.0/24,目的地址是172.16.10.2的所有TCP报文
第三条规则“rule permit ip”用于匹配所有IP报文,并对报文执行允许动作。
实验图,思科与华为不同的时,只要添加了ACL表,那么表之外的IP默认是拒绝的,直接说,那就是你允许那个IP通过就写那个IP。一个端口的一个方向只能贴一张ACL表
conf t 进入全局配置
access-list 表号 permit/deny 条件
进入接口
ip access-group 1 out 在接口中执行这条命令,运用那一张表
## 192.168.1.2 0.0.0.0 = host 192.168.1.2
## 0.0.0.0 255.255.255.255 = any
一个端口的一个方向只能有一张表,如果要更换,就必须先将上一个表取下来:
no ip access-group 1 out 取下表
ip access-group 2 out 换上新的表
如图,PC0 能ping通服务器,不能访问网站
PC1能访问网站,不能ping
Router#conf t
Router(config)# access-list 100 permit tcp host 192.168.1.1 host 101.1.1.2 eq 80
access-list 100(创建ACL) permit(允许) tcp(协议) host(自己/对应掩码) 192.168.1.1(源IP) host 101.1.1.2(目的IP) eq 80(端口,可以是www),白话来说就是,我创建了一个扩展ACL,我允许192...1中的TCP协议到达101...2的80(http协议)端口
Router(config)# access-list 100 permit icmp host 192.168.1.2 host 101.1.1.2
Router(config)# do sh acc 查看acl策略
Router(config)# int g0/1 进入接口
Router(config-if)# ip access-group 100 out 将100策略应用到本接口
PC1能ping不能访问
PC0能访问不能ping
。。。服务器1是多余的,不管他。
conf t
access-list 表号 permit/deny 协议 源IP 反掩码 目标IP 反掩码 ―eq 端口号
表号:100-199
协议: TCP/UDP/IP/ICMP (当写了端口号,只能写tcp或udp)
注释:ICMP协议就是ping命令所使用的协议,ICMP协议是网络探测协议,ping别人,就是生成ICMP探测包发给对方,然后对方给我回应一个ICMP探测包,代表ping通了!
[]:代表可选
案例1:允许192.168.1.1访问网页,但是其它操作都不允许
permit tcp host 10.1.1.1 host 192.168.1.1 eq www
为甚么不需要写了?
有默认大boss拒绝所有
案例2:拒绝192.168.1.1去往所有地方的流量
acc 104 deny ip host 192.168.1.1
acc 104 permit ip any any
华为
acl 1000
undo rule10(进入ACL,查看后选择要删除的一条策略,删除它所对应的编号即可)
思科
思科要命名一个ACL,然后才可以对ACL里的内容进行增删
ip access-list extended 120 命名ACL
do sh acc 120 (查看)
no 10 删掉ACL中10编号的策略
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。