几条命令让你玩转 ACL

  • Post author:
  • Post category:其他




ACL

访问控制列表(Access Contorl Lists),是对数据流进行过滤。


ACL的定义

它是路由器和交换机(三层交换机)接口的指令列表(通过接口控制流量),用来控制端口进出的数据包。

访问控制列表里面包含了:匹配关系、条件和查询语句。表只是一个框架结构,在表中会放很多控制语句。


ACL的功能

流量控制、匹配感兴趣的流量



ACL的分类和区别

根据它使用的列表的列表号,按照表号的不同,将他分为两类:

第一类:基于源IP地址进行过滤,基本ACL(标准ACL),编号范围:2000-2999。

第二类:基于源和目的IP地址、源和目的端口(TCP/UDP)、协议类型来进行过滤,高级ACL(扩展ACL),编号范围:3000-3999。

对应用层端口的控制方式,用得比较广泛。


ACL的配置原则:

基于每种协议设置一个ACL(数据是通过什么方式过来的–TCP UDP icmp http)

基于每一个方向设置一个ACL (区分数据的进和出)

基于每个接口设置一个ACL


ACL的工作原理:

1.入站配置ACL:

对过来的数据分组,通过ACL分组进行处理,然后再放到路由器的出口。

2.出站配置ACL

数据进入路由器,通过路由解析后再拒绝或者允许。这种方式消耗路由资源

通常情况下,我们会将ACL配置放置入站口去解决。



ACL的配置

在这里插入图片描述


标准ACL 实验1

首先配置两个路由器的 IP 以及缺省路由

acl 2000 建立基本ACL,表号是2000

[Huawei-acl-basic-2000]rule deny source 10.1.1.5 0 配置拒绝规则

默认 rule 5 值越小越优先

进入需要控制流量的接口,这里是 g0/0/1

[Huawei-GigabitEthernet0/0/1]traffic-filter inbound acl 2000 在接口的入方向调用ACL。拒绝 10.1.1.5 这个 IP 通过 g0/0/1 口。

traffic-filter:流量过滤。

inbound:入口

outbound: 出口

[g0/0/1] undo traffic-filter inbound 删除配置命令


高级ACL 实验2

Ping:属于ICMP协议。

acl 3000

rule deny icmp source 10.1.1.2 0 destination 30.1.1.3 0 拒绝C1 ping server 1,但是允许HTTP 和其他协议访问。

rule deny icmp source 10.1.1.3 0 destination 30.1.1.3 0 拒绝PC ping server 1,但是允许HTTP 和其他协议访问。

进入 g0/0/0 口

[Huawei-GigabitEthernet0/0/0]traffic-filter outbound acl 3000 在出口方向调用ACL。拒绝 10.1.1.2 和 10.1.1.3 通过 g0/0/0 口。

因为在 g0/0/0 已经配置了ACL2000了所以不能再继续配置了。


拒绝 Telnet 实验 3

将几个路由器的 IP 以及缺省路由都配置好,再把几个路由器的Telnet 配置好。

ACL 3001

[Huawei-acl-adv-3001]rule deny tcp source 40.1.1.2 0 destination 20.1.1.2 0 destination-port eq telnet

进入第三个路由器的 g0/0/2 口

[Huawei-GigabitEthernet0/0/0]traffic-filter inbound acl 3001 在入口方向调用 ACL。拒绝 40.1.1.2 通过 g0/0/2 口。

所以R3不能Telnet 20.1.1.2 这个口,但是可以Telnet 其他口。



注意点

1.一个接口的同一个方向,只能调用一个ACL;每个端口、每个方向、每条协议只能对应一条访问列表

2.一个ACL里面可以有多个RULE规则,从上往下依次执行;具有严格限制条件的语句应该放在访问列表所有语句的最方面。

3.数据包一旦被某个rule规则匹配,就不再继续往下匹配

4.华为:默认隐含放过所有数据包,在ACL配置时。

5.访问列表不能过滤路由器自己产生的数据,(只能控制外面进来的数据,有一个入和出,自己的数据控制不了。)



版权声明:本文为tryheart原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。