CCNA-ACL(访问控制列表)技术

一、基本概念

访问控制列表(ACL)是一种基于包过滤的访问控制技术,它可以根据设定的条件对接口上的数据包进行过滤,允许其通过或丢弃。

访问控制列表被广泛地应用于路由器和三层交换机,借助于访问控制列表,可以有效地控制用户对网络的访问,从而最大程度地保障

网络安全。

ACL是应用在路由器接口的指令列表。这些指令列表用来告诉路由器哪些数据包可以收、哪些数据包需要拒绝。至于数据包是被接收

还是拒绝,可以由类似于源地址、目的地址、端口号等的特定指示条件来决定。

访问控制列表具有许多作用,如限制网络流量、提高网络性能;通信流量的控制,例如ACL可以限定或简化路由更新信息的长度,从

而限制通过路由器某一网段的通信流量;提供网络安全访问的基本手段;

在路由器端口处决定哪种类型的通信流量被转发或被阻塞,例如,用户可以允许E-mail通信流量被路由,拒绝所有的 Telnet通信流量

等。

概念理解:

1、是一种流量捕获技术(渔网技术

在网络中我们一般通过网络五元组来识别数据:源IP、目的IP、协议、源端口、目的端口

一般根据以上特征字段来捕获。

2、访问控制:

在路由器上流量进或出的接口上规则流量;

3、定义感兴趣流量 :

为其他的策略取匹配流量

二、访问控制原理

定义ACL列表后,将列表调用于路由器的接口上,当流量通过接口时,进行匹配,匹配成功后按照设定好的动作进行处理即可!

动作:

permit/deny:通过反掩码来匹配

permit:表示允许捕获

deny:表示不允许捕获

1、当一个数据报进入一个端口,路由器检查这个数据报是否可路由。

如果是可以路由的,路由器检查这个端口是否有ACL控制进入数据报。

如果有,根据ACL中的条件指令,检查这个数据报。

如果数据报是被允许的,就查询路由表,决定数据报的目标端口。

2、路由器检查目标端口是否存在ACL控制流出的数据报。

若不存在,这个数据报就直接发送到目标端口。

若存在,就再根据ACL进行取舍。然后在转发到目的端口。

总之,一入站数据包,由路由器处理器调入内存,读取数据包的包头信息,如目标IP地址,并搜索路由器的路由表,查看是否在

路由表项中,如果有,则从路由表的选择接口转发(如果无,则丢弃该数据包),数据进入该接口的访问控制列表(如果无访问控制

规则,直接转发),然后按条件进行筛选。

当ACL处理数据包时,一旦数据包与某条ACL语句匹配,则会跳过列表中剩余的其他语句,根据该条匹配的语句内容决定允许或

者拒绝该数据包。如果数据包内容与ACL语句不匹配,那么将依次使用ACL列表中的下一条语句测试数据包。该匹配过程会一直继

续,直到抵达列表末尾。最后一条隐含的语句适用于不满足之前任何条件的所有数据包。这条最后的测试条件与这些数据包匹配,通

常会隐含拒绝一切数据包的指令。此时路由器不会让这些数据进入或送出接口,而是直接丢弃。最后这条语句通常称为隐式的“deny

any”语句。由于该语句的存在,所以在ACL中应该至少包含一条permit语句,否则,默认情况下,ACL将阻止所有流量。

三、功能

1、限制网络流量、提高网络性能。

例如,ACL可以根据数据包的协议,指定这种类型的数据包具有更高的优先级,同等情况下可预先被网络设备处理。

2、提供对通信流量的控制手段。

3、提供网络访问的基本安全手段。

4、在网络设备接口处,决定哪种类型的通信流量被转发、哪种类型的通信流量被阻塞。

例如,用户可以允许E- mail通信流量被路由,拒绝所有的Telnet通信流量。

例如,某部门要求只能使用WWW这个功能,就可以通过ACL实现;

又例如,为了某部门的保密性,不允许其访问外网,也不允许外网访问它,就可以通过ACL实现。

四、分类

1、标准ACL   

standard (1-99)

仅关注数据包中的源IP地址,也就是说只能匹配源IP地址。

 2、扩展ACL  

extended (100-199)

关注(匹配)数据包中源、目标IP地址、协议、目标端口号、协议号(网路五元组

四、匹配规则

1、顺序执行:至上而下逐一匹配,先匹配的流量不能再被后面的语句所捕获。

2、末尾隐含拒绝所有:deny ip any any    默认不需要书写总是存在

五、写法(无论是标准ACL还是扩展ACL)

1、编号写法   

1-99 标准   

100-199 扩展    

删除一条整表消失

2、命名写法   

一个名字一张列表,可以随意删除某条。

配置完条目之后,设备自行按照10+的编号排序,可以基于序号插入条目和删除。

六、配置

ACL的使用分为两步:

1、创建访问控制列表ACL,根据实际需要设置对应的条件项;

2、将ACL应用到路由器指定接口的指定方向(in/out)上。

第一步:

标准ACL:

由于标准ACL仅关注数据包中的源IP地址,调用时尽量的靠近目标避免误删

(1)编号写法:

Router(config)#access-list 1 deny host 192.168.4.2       //拒绝单一设备

Router(config)#access-list 1 deny 192.168.4.0 0.0.0.255        //拒绝范围

Router(config)#access-list 1 deny any                //拒绝所有

 

Router(config)#access-list 1 deny host 192.168.4.2

Router(config)#access-list 1 permit any

Router(config)#interface fastEthernet 0/0.1

Router(config-subif)#ip access-group 1 out

 

(2)命名写法:

Router(config)#ip access-list standard gandiaoPC3

Router(config-std-nacl)#deny host 192.168.4.2

Router(config-std-nacl)#permit any

Router(config-std-nacl)#exit

 

默认+10生成序列号,便于删除和插入

Router(config)#ip access-list standard a

Router(config-std-nacl)#15 deny host 1.1.1.1

Router(config-std-nacl)#no 15

扩展ACL:

(1)编号写法

r1(config)#access-list 100 deny ip host 192.168.2.2 host 192.168.3.3
                                                协议              源IP                   目标IP
r1(config)#access-list 100 permit ip any any

(2)命名写法

r1(config)#ip access-list extended gandiaoPC5

r1(config-ext-nacl)#deny ip host 192.168.2.2 host 192.168.3.3

r1(config-ext-nacl)#permit ip any any

第二步:

接口调用:

接口下使用:ip access-gourp xx in/out          //应用ACL

表示permit的流量将被接口放行,deny的流量将被接口丢弃。

in表示作用于接口的进向流量out表示出向流量

 

练习题:

problem:

允许192.168.2.2 telnet r1
禁止192.168.2.2 ping  r1

answer:

ip access-list extended haha
 permit tcp host 192.168.2.2 host 192.168.2.1 eq telnet
 permit tcp host 192.168.2.2 host 192.168.3.1 eq telnet
 permit tcp host 192.168.2.2 host 10.1.1.1 eq telnet
 deny icmp host 192.168.2.2 host 192.168.2.1
 deny icmp host 192.168.2.2 host 192.168.3.1
 deny icmp host 192.168.2.2 host 10.1.1.1
 permit ip any any

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

SLASH-YONG

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值