什么是ACL?

ACL全称访问控制列表(Access Control List),主要通过配置一组规则进行过滤路由器或交换机接口进出的数据包,

是控制访问的一种网络技术手段, ACL适用于所有的被路由支持的协议,如IP、tcp、udp、ftp、www等。

什么是反掩码?

反掩码就是通配符掩码 , 通过标记0和1告诉设备应该匹配到哪位。 在反掩码中,相应位为1的地址在比较中忽略,

为0的必须被检查。IP地址与反掩码都是32位的数 由于跟子网掩码刚好相反,所以也叫反掩码 。

路由器使用的通配符掩码与源或目标地址一起来分辨匹配的地址范围,它与子网掩码不同。它不像子网掩码告诉

路由器IP地址是属于哪个子网(网段),通配符掩码告诉路由器为了判断出匹配,它需要检查IP地址中的多少位。

例如:

255.255.255.0 反掩码(wildcard-mask)就是0.0.0.255

255.255.255.248  反掩码(wildcard-mask)就是0.0.0.7

ACL工作原理:

ACL使用包过滤技术,在路由器上读取OSI七层模型的第3层和第4层包头中的信息。如源地址,目标地址,源端口,目标端口等,根据预先定义好的规则,对包进行过滤,从而达到访问控制的目的。

对于路由器接口而言,ACL是有两个方向:

注意:如果发现没有匹配的ACL规则,默认会丢弃该数据包,思科ACL规则默认会有一条隐藏的deny any any规则,而华三ACL规则默认是permit any any规则。

入站----如果是入站访问列表,则当路由器接收到数据包时,Cisco IOS 软件将检查访问列表中的条件语句,看是否有匹配。如果数据包被允许,则软件将继续处理该数据包。如果数据包被拒绝,则软件会丢弃该数据包。

出站----如果是出站访问列表,则当软件到接收数据包并将群其路由至出站接口后,软件将检查访问列表中的条件语句,看是否有匹配。如果数据包被允许,则软件会发送该数据包。如果数据包被拒绝,则软件会丢弃该数据包。

ACL两种类型:

标注:允许在标准ACL和扩展ACL中使用名称代替访问控制列表号。

1、 标准的ACL

根据数据包的源IP地址来控制允许转发或拒绝数据包,访问控制列表号1~99。

标准访问控制列表配置命令如下:

Router(config)#access-list access-list-number {permit|deny} source [souce-wildcard]

或者

Router(config)#ip access-list standard access-list-number

Router(config-std-nacl)#Sequence Number{permit|deny} source [souce-wildcard]

下面是命令参数的详细说明

access-list-number:访问控制列表号,标准ACL取值是1-99,可以使用名称替代列表号。

Sequence Number:每条ACL规则列表序列号,可使用范围1-2147483647。

permit | deny:如果满足规则,则允许/拒绝通过。

source:数据包的源地址,可以是主机地址,也可以是网络地址

2、 扩展的ACL

根据数据包的源IP地址、目的IP地址、指定协议,端口、标志和时间来控制允许转发或拒绝数据包,访问控制列表号100~199

扩展访问控制列表配置命令如下:

Router(config)#access-list access-list-number {permit|deny} protocol {source souce-wildcard destination destination-wildcard} [operator operan]

或者

Router(config)#ip access-list extended access-list-number

Router(config-std-nacl)#{permit|deny} protocol {source souce-wildcard destination destination-wildcard} [operator operan]

下面是命令参数的详细说明

access-list-number:访问控制列表号,扩展ACL取值100-199,可以使用名称替代列表号。

Sequence Number:每条ACL规则列表序列号,可使用范围1-2147483647。

permit|deny:如果满足规则,则允许/拒绝通过。

protocol:用来指定协议的类型,如IP,TCP,UDP,ICMP等。

source、destination:源和目的,分别用来标示源地址和目的地址。

souce-wildcard、destination-wildcard:子网反码,souce-wildcard是源反码,destination-wildcard是目标反码。

operator operan:lt(小于)、gt(大于)、eq(等于)、neq(不等于)、rand(范围端口号)等。

ACL应用分类:

Port ACL基于MAC的ACL

ACL应用在二层接口上,但二层接口只支持in方向,一个接口只能使用一条ACL规则,IP或MAC的ACL都可以应用到二层接口,但不能应用到端口聚合(EtherChannel)

VLAN ACL基于VLAN的ACL

使用VLAN与VLAN之间的ACL,相同的VLAN也是可以过滤,只要流量进入或离开指定的VLAN都会被过滤,可以同时控制二层与三层流量。

VLAN ACL只是VLAN调用了ACL规则,in或out的VLAN流量都会被检测,无论是通过二层转发还是三层转发。VLAN ACL是不能定义方向的,

虽然VLNA调用ACL规则会有in或out选项,但只针对VLAN源地址和目标地址而言。VLAN调用ACL是不能实现vlan 10 ping不通vlan 20,

但vlan 20 ping通vlan10类似的功能,除非交换机支持自反ACL规则。

Router ACL基于 IP 的ACL

ACL应用到三层接上,但只能是IP ACL,不能是MAC ACL,Router ACL是in和out方向都可以使用,每个接口每个方向只能使用一条ACL规则。

Time ACL基于时间的ACL

Time ACL是在原来的ACL规则上增加的功能,可以应用于二层或三层,在原来的ACL规则和时间相结合使用,控制起来将更加灵活多变。

实例(VLAN ACL)

注意:配置VLAN  ACL需要注意以下问题:

1、VLAN ACL不能具体定义入站和出站规则,VLANACL的in和out是针对VLAN的本身而言,ACL源地址与应用的VLAN相同网段时,

就使用in方向,如果ACL目标地址与应用的VLAN相同网段时,就使用out方向。

2、当数据包匹配思科ACL规则发现没有匹配的规则,则会匹配思科ACL默认一条隐藏的deny any any规则,默认丢弃该数据包。

3、如果你删除access-list-number访问控制列表号,则access-list-number里的所有会被清除,建议进入每条access-list-number

后在根据需求删除相应的序列号。

4、ACL规则是按从上到下进行匹配,如果先匹配了后面就不会再进行匹配。

需求如下:

1、 实现VLAN 10 与VLAN 20不能相互访问,VLAN 10 能访问VLAN 30。

2、VLAN 30 服务器192.168.30.30只允许VLAN 20主机192.168.20.20访问www服务(80端口),其它服务都不能访问,其它VLAN 20的所有IP地址都不能访问。

3、VLAN 30 服务器192.168.30.31允许VLAN 20所有主机访问ftp服务(21端口),其它服务都不能访问。

设计思路:

1、 一台核心思科3560交换机,三台汇聚思科2960交换机

2、 3560交换机配置VTP、VLAN、trunk

3、 VLAN 30服务器192.168.30.30开启www服务,服务器192.168.30.31开启ftp

实验拓扑图:

核心交换机3560SW

##配置VTP服务器

3650SW>enable

3650SW#vlan database

3650SW(vlan)#vtp domain CCTV

3650SW(vlan)#vtp server

##创建VLAN

3650SW(vlan)#vlan 10 name VLAN10

3650SW(vlan)#vlan 20 name VLAN20

3650SW(vlan)#vlan 30 name VLAN30

3650SW(vlan)#exit

##配置VLAN IP地址

3650SW#configure terminal

3650SW(config)#interface vlan 10

3650SW(config-if)#ip address 192.168.10.1 255.255.255.0

3650SW(config-if)#exit

3650SW(config)#interface vlan 20

3650SW(config-if)#ip address 192.168.20.1 255.255.255.0

3650SW(config-if)#exit

3650SW(config)#interface vlan 30

3650SW(config-if)#ip address 192.168.30.1 255.255.255.0

3650SW(config-if)#exit

##开启三层交换机默认路由

3560SW(config)#ip routing

#设置端口汇聚(trunk)

3650SW(config)#interface range fastEthernet 0/22-24

3650SW(config-if-range)#3650SWport trunk encapsulation dot1q

3650SW(config-if-range)#3650SWport mode trunk

3650SW(config-if-range)#no shutdown

3650SW(config-if-range)#exit

#创建扩展ACL规则101和102并配置

说明:ACL限制某个服务或端口一般使用以下命令限制:

3560SW(config-ext-nacl)#permit tcp host 192.168.30.30 host 192.168.20.20 eq www

但Cisco Packet Tracer Student模拟软件配置了会有异常,所以,本教程采用全部放开配置。

3560SW#configure terminal

##下面两条命令等同access-list 101 permit ip 192.168.10.0 0.0.0.255 192.168.30.0 0.0.0.255

3560SW(config)#ip access-list extended 101

3560SW(config-ext-nacl)#10 permit ip 192.168.10.0 0.0.0.255 192.168.30.0 0.0.0.255

3560SW(config-ext-nacl)#exit

3560SW(config)#ip access-list extended 102

3560SW(config-ext-nacl)#10 permit tcp host 192.168.20.20 host 192.168.30.30 eq www

3560SW(config-ext-nacl)#20 permit tcp 192.168.20.0 0.0.0.255 host 192.168.30.31 eq ftp

3560SW(config-ext-nacl)#30 permit ip 192.168.10.0 0.0.0.255 192.168.30.0 0.0.0.255

3560SW(config-ext-nacl)#exit

3560SW(config-if)#exit

##ACL规则应用在vlan 10的in接口

3560SW(config)#interface vlan 10

3560SW(config-if)#ip access-group 101 in

3560SW(config-if)#exit

##ACL规则应用在vlan 30的in接口

3560SW(config)#interface vlan 30

3560SW(config-if)#ip access-group 102 out

3560SW(config-if)#exit

##显示与维护

3560SW#show access-lists

3650SW#show running-config

2960交换机SW01

##配置VTP客户端

SW01#vlan database

SW01(vlan)#vtp domain CCTV

SW01(vlan)#vtp client

SW01(vlan)#exit

##设置端口汇聚(trunk)

SW01#configure terminal

SW01(config)#interface fastEthernet 0/24

SW01(config-if)#switchport mode trunk

SW01(config-if)#no shutdown

SW01(config-if)#exit

##分配VLAN所属端口

SW01#configure terminal

SW01(config)#interface range fastEthernet 0/1-5

SW01(config-if-range)#switchport access vlan 10

SW01(config-if-range)#switchport mode access

SW01(config-if-range)#no shutdown

SW01(config-if-range)#exit

2960交换机SW02

##配置VTP客户端

SW01#vlan database

SW01(vlan)#vtp domain CCTV

SW01(vlan)#vtp client

SW01(vlan)#exit

##设置端口汇聚(trunk)

SW01#configure terminal

SW01(config)#interface fastEthernet 0/24

SW01(config-if)#switchport mode trunk

SW01(config-if)#no shutdown

SW01(config-if)#exit

##分配VLAN所属端口

SW01#configure terminal

SW01(config)#interface range fastEthernet 0/1-5

SW01(config-if-range)#switchport access vlan 20

SW01(config-if-range)#switchport mode access

SW01(config-if-range)#no shutdown

SW01(config-if-range)#exit

2960交换机SW03

##配置VTP客户端

SW01#vlan database

SW01(vlan)#vtp domain CCTV

SW01(vlan)#vtp client

SW01(vlan)#exit

##设置端口汇聚(trunk)

SW01#configure terminal

SW01(config)#interface fastEthernet 0/24

SW01(config-if)#switchport mode trunk

SW01(config-if)#no shutdown

SW01(config-if)#exit

##分配VLAN所属端口

SW01#configure terminal

SW01(config)#interface range fastEthernet 0/1-5

SW01(config-if-range)#switchport access vlan 30

SW01(config-if-range)#switchport mode access

SW01(config-if-range)#no shutdown

SW01(config-if-range)#exit

Cisco VLAN ACL配置的更多相关文章

  1. CISCO VLAN ACL

    对于cisco VLAN ACL 首先得定义 standard ACL或 extented ACL用于抓取流量 注意这里的抓取流量不是最终的对流量的操作,而是决定什么样的流量用VLAN ACL 来处理 ...

  2. 绝对实用 NAT + VLAN +ACL管理企业网络

    在企业中,要实现所有的员工都能与互联网进行通信,每个人各使用一个公网地址是很不现实的.一般,企业有1个或几个公网地址,而企业有几十.几百个员工.要想让所有的员工使用这仅有的几个公网地址与互联网通信该怎 ...

  3. Cisco ASA 高级配置

    Cisco ASA 高级配置 一.防范IP分片攻击 1.Ip分片的原理: 2.Ip分片的安全问题: 3.防范Ip分片. 这三个问题在之前已经详细介绍过了,在此就不多介绍了.详细介绍请查看上一篇文章:I ...

  4. cisco 的ACL

    搞网络好几年了,怎么说呢,水平一直停留在NA-NP之间,系统的学完NA后,做了不少实验,后来也维护了企业的网络,各种网络设备都玩过(在商汤用的Juniper srx 550 我认为在企业环境,非IDC ...

  5. vlan trunk配置

    vlan trunk配置 Trunk:中继干道 作用:一条链路能承载多个vlan的流量,并对不同vlan的流量进行不同标记 trunk能够使vlan跨越交换机 PT配置 配置vlan:两台交换机同样的 ...

  6. linux下通过acl配置灵活目录文件权限(可用于ftp,web服务器的用户权限控制)

    linux下通过acl配置灵活目录文件权限(可用于ftp,web服务器的用户权限控制) 发表于2012//07由feng linux 本身的ugo rwx的权限,对于精确的权限控制很是力不从心的,ac ...

  7. 基于端口的VLAN典型配置指导

    本文为转发,简单明了,我喜欢 VLAN典型配置全过程如下: 组网图 图1-1 基于端口的VLAN组网示意图 应用要求 如图1-1所示,Switch A和Switch B分别连接了不同部门使用的Host ...

  8. 由于 web 服务器上此资源的访问控制列表(acl)配置或加密设置,您无权查看此目录或页面。

    场景:IIS中遇到无法预览的有关问题(HTTP 异常 401.3 - Unauthorized 由于 Web 服务器上此资源的访问控制列表(ACL)配置或加密设置 IIS中遇到无法预览的问题(HTTP ...

  9. consul之:ACL配置使用

    consul自带ACL控制功能,看了很多遍官方文档,没有配置步骤https://www.consul.io/docs/internals/acl.html 主要对各种配置参数解释,没有明确的步骤,当时 ...

随机推荐

  1. POJ.2774.Long Long Message/SPOJ.1811.LCS(后缀数组 倍增)

    题目链接 POJ2774 SPOJ1811 LCS - Longest Common Substring 比后缀自动机慢好多(废话→_→). \(Description\) 求两个字符串最长公共子串 ...

  2. float类型数保留一位小数

    float类型数保留一位小数 float a = 2.5f; float b = 1.2f; System.out.println(a/b); System.out.println((float)(M ...

  3. aps.net手写验证模型的方法

    /// <summary> /// 基础验证类 /// </summary> public class BaseValidator { /// <summary> ...

  4. 前端框架React Js入门教程【精】

    现在最热门的前端框架有AngularJS.React.Bootstrap等.自从接触了ReactJS,ReactJs的虚拟DOM(Virtual DOM)和组件化的开发深深的吸引了我,下面来跟我一起领 ...

  5. 七周七语言之Ruby

    1.安装 Ubuntu 14.04 sudo apt-get install ruby version 1.9.1 2.命令行运行: irb 3.文挡查看:man RDoc 4.猜数字 2.2.7程序 ...

  6. SSE图像算法优化系列四:图像转置的SSE优化(支持8位、24位、32位),提速4-6倍

    一.前言 转置操作在很多算法上都有着广泛的应用,在数学上矩阵转置更有着特殊的意义.而在图像处理上,如果说图像数据本身的转置,除了显示外,本身并无特殊含义,但是在某些情况下,确能有效的提高算法效率,比如 ...

  7. 微软BI 之SSIS 系列 - 使用 Multicast Task 将数据同时写入多个目标表,以及写入Audit 与增量处理信息

    开篇介绍 在 SSIS Data Flow 中有一个 Multicast 组件,它的作用和 Merge, Merge Join 或者 Union All 等合并数据流组件对比起来作用正好相反.非常直观 ...

  8. 多线程本地图片载入演示样例【OpenCV】【Pthread】

    Pthread barrier的简单使用演示样例: C++代码例如以下: // ThreadingLoadImages.cpp : 定义控制台应用程序的入口点. // #include "s ...

  9. 【PMP】合同类型

    合同类型与适用场景 图形解读: 总价类 (1)固定总价类合同:货物的采购价格在一开始就已确定,并且不允许改变(除非工作范围发生变更) (2)总价加激励费合同:同会设置价格上限,高于此价格的上限的全部成 ...

  10. 洛谷 P1016 旅行家的预算

    P1016 旅行家的预算 题目OJ链接https://www.luogu.org/problemnew/show/P1016 题目描述一个旅行家想驾驶汽车以最少的费用从一个城市到另一个城市(假设出发时 ...