当前位置:   article > 正文

ACL理论及简单配置_acl配置

acl配置

应用意义

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 !

防火墙上一般称为策略! 策略就是升级版的ACL,策略可以基于IP、端口、协议、应用层数据进行各种过滤

其实也是一种过滤技术,基于数据包中的IP地址、端口号来对数据包进行过滤!

ACL分类

华为 

思科

编号越小优先级越靠前

ACL的规则

华为

 每个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最后的默认的隐含的一条,不是拒绝所有,而是允许所有


 

ACL配置技巧

1)先判断要控制的数据流源和目标,并画出控制数据流的方向!进而判断ACL可以写在哪些路由器上!

2)打开那台路由器,开始编写ACL过滤规则!

3)最后将ACL表应用到某个接口的某个方向才能生效!
 

基本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配置
 

上面说过,高级的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配置

 实验图,思科与华为不同的时,只要添加了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        换上新的表

扩展ACL

 如图,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

华为

acl 1000

undo rule10(进入ACL,查看后选择要删除的一条策略,删除它所对应的编号即可)

思科

思科要命名一个ACL,然后才可以对ACL里的内容进行增删

ip access-list extended 120        命名ACL

do sh acc 120        (查看)

no 10                删掉ACL中10编号的策略

感谢千锋教育视频

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/IT小白/article/detail/192136
推荐阅读
相关标签
  

闽ICP备14008679号