ACL访问控制列表基本概念

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u011857683/article/details/48980073

1. ACL概述

 

(1)、ACL全称访问控制列表(Access Control List)。

 

(2)、基本原理:ACL使用包过滤技术,在路由器上读取第三层及第四层包头中的信息(如源地址、目的地址、协议口、端口号等),根据预先定义好的规则对包进行过滤,从而达到控制的目的。

 

(3)ACL目的:限制网络流量、提高网络性能;提供对通信流量的控制手段;提供网络访问的基本安全手段。

 

(4)、功能:网络中的结点分为资源结点和用户结点两大类,其中资源结点提供服务或数据,而用户结点访问资源结点所提供的服务与数据。ACL的主要功能就是一方面保护资源结点,阻止非法用户对资源结点的访问;另一方面限制特定的用户结点对资源结点的访问权限。

 

(5)、ACL的访问顺序

a、按照各语句在访问列表的顺序,顺序查找,一旦找到了某一匹配条件,就结束匹配,不再检查后面的语句。

b、如果所有语句都没有匹配,在默认情况下,虽然看不到最后一行,但最后总是拒绝全部流量的。

 

 

 

 

2. ACL的分类

 

(1) 标准ACL(表号取值范围1-99)

 

 

第一步:定义访问控制列表

 

命令格式:access-list access-list-number  { permit |deny } source  [source-wildcard] [log]

 

 

 

参数

 

参数描述

access-list-number

访问控制列表表号

permit | deny

满足条件,拒绝或允许

source-wildcard

 

通配符,0表示检查,1表示不检查

log

表示将有关数据包匹配情况生成日志表

 

 

例如:

!定义访问控制列表

router(config)# access-list 1 permit 192.168.1.0 0.0.0.255

!删除访问控制列表(这里无法删除某一条ACL语句,只能删除整个ACL表)

router(config)# no access-list 1

 

 

 

第二步:应用到某一个接口上

 

命令格式:{ protocol } access-group access-list-number  {in |  out}

 

例如:

router(config)# int f0/0

router(config-if)ip access-group 1 out

 

 

 

 

 

 

(2) 扩展ACL(表号取值范围100-199)

 

 

第一步:定义访问控制列表

 

命令格式:access-list access-list-number  { permit |deny } protocol  source  source-wildcard  [operator operand]  destination destination-wildcard  [operatoroperand] [established] [log]

 

 

参数

 

参数描述

access-list-number

访问控制列表表号

permit | deny

满足条件,拒绝或允许

 

source-wildcard

destination-wildcard

 

通配符,0表示检查,1表示不检查

log

表示将有关数据包匹配情况生成日志表

protocol

用来指定协议类型,如IP、TCP、UDP、ICMP等

lt,gt,eq,neq

(小于、大于、等于、不等于)

operand

一个端口号或应用名称

established

如果数据包使用一个已建立连接,便可允许TCP信息通过

 

 

 

 

 

 

 

例如:

!定义访问控制列表

router(config)# access-list 101 permit tcp 192.168.1.00.0.0.255 192.168.2.0 0.0.0.255 eq 80

!删除访问控制列表(这里无法删除某一条ACL语句,只能删除整个ACL表)

router(config)# no access-list 101

 

 

 

第二步:应用到某一个接口上

 

命令格式:{ protocol } access-group access-list-number  {in |  out}

 

例如:

router(config)# int f0/0

router(config-if)ip access-group 101 out

 

 

 

 

 

(3) 命名ACL

 

第一步:创建一个ACL命名,要求名字字符串要唯一

 

命令格式:ip  access-list{ standard  | extended } name

 

 

 

 

 

第二步:定义访问控制列表

 

标准ACL命令格式:  { permit | deny }  source source-wildcard  [log]

 

 

扩展ACL命令格式: { permit | deny } protocol  source source-wildcard  [operatoroperand]  destination  destination-wildcard  [operator operand] [established] [log]

 

 

 

 

 

 

 

例如:

!定义访问控制列表

router(config)#ipaccess-list extended permit-one

router(config-ext-nacl)# permit tcp 192.168.1.00.0.0.255 192.168.2.0 0.0.0.255 eq 80

!删除访问控制列表(这里可以删除某一条ACL语句)

router(config-ext-nacl)# no  permit tcp 192.168.1.0 0.0.0.255 192.168.2.00.0.0.255 eq 80

 

 

 

第三步:应用到某一个接口上

 

命令格式:{ protocol } access-group  name {in  |  out}

 

例如:

router(config)# int f0/0

router(config-if)ip access-group permit-one out

 


 

 

 

 



阅读更多
换一批

没有更多推荐了,返回首页