理论部分

访问控制列表概述:

访问控制列表(ACL是应用在路由器接口的指令列表(即规则)

其基本原理:ACL使包过滤技术,在路由器上读取OSI七层参考模型的第三层和第四层包头中的信息根据预先定义好的规则,对包进行过滤从而达到访问控制的目的。

ACL通过在路由器接口处控制数据包是转发还是丢弃。

路由器根据ACL中指定的条件来检测通过路由器的数据包

标准访问控制列表:检查数据包的源IP地址。其结果基于IP地址,来决定允许还是拒绝转发数据包。它使用1~99之间的数字作为表号。

扩展访问控制列表:对数据包的源IP地址和目的IP地址、指定协议、端口和标志来允许或拒绝数据包。使用100~199之间的数字作为表号。

命名访问控制列表:允许在标准和扩展中使用名称代替表号(更友好)。

访问控制列表的工作原理:ACL是一组规则的集合。应用在路由器的某个接口上,对路由器而言有两个方向:

出:已经过路由器的处理,正离开路由器接口的数据包

入:已到达路由器接口的数据包,将被路由器处理

如果对接口应用了ACL,那么路由器将对数据包进行该组规则顺序进行检查。

如果匹配某一条规则路由器将决定该数据包允许或拒绝通过

如果最后没有任何一条规则匹配,则路由器根据默认的规则将丢弃该数据包。要注意是逐条匹配,按顺序来的

标准访问控制列表的配置:

R1(config)#access-list access-list-number {permitdeny} source {source wildcard

access-list-number:访问控制列表表号

permit丨deny满足测试条件,则拒绝/允许通过流量

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

source wildcard:通配符掩码,也叫做反码。在用二进制数01表示时,如果为1表明这一位不需要匹配,如果为0表明这一位需要严格匹配

扩展访问控制列表的配置:

创建ACL命令语法如下:

R1(config)#access-list access-list-number {permitdenyprotocol {source source-wildcard destination destination-wildcard}{operator operan

对命令参数的详细说明如下:

access-list-number访问控制列表的表号,对于扩展ACL100~199

permitdeny当满足条件,则允许或拒绝该流量通过

Protocol用来指定协议类型,如IPTCPUDPICMP

source source-wildcard源地址和源反掩码

destination destination-wildcard目的地址和目的反掩码

operator operanls(小于)、gt(大于)、eq(等于)或neq(不等于)一个端口号

命名访问控制列表的配置:

创建ACL的语法命令如下:

R1(config)#ip access-list standardextendedaccess-list-name

其中access-list-nameACL的名字,应具有实际意义

standardextended选择标准ACL或可扩展的ACL

分析在哪个接口应用标准ACL

路由对入站接口是先检查访问控制列表,对允许的数据包才检查路由表。而对于外出的数据包先查询路由表,确定目标端口后才查看出站的访问控制列表。所以应该尽量应用在入站接口,因为效率更高。

也就是靠控制方最近的方向是in方向,如果作为服务器要限制某个IP访问自己时应该应用在out方向 

标准ACL、扩展ACL和命名ACL综合试验案例

首先搭建拓扑结构,规划IP地址,连接拓扑线路PC机全部使用的是添加网卡

使用软件GNS3下载地址:http://down.51cto.com/data/991235

GNS3的使用教程在我的网盘:http://pan.baidu.com/disk/home

wKioL1T27SOw3nNBAAHoLp4r12A431.jpg

先配置简单的最后配置复杂的,下面是路由交换的详细配置

R1上面的配置

Loopback接口地址123.0.1.1/24 模拟外网地址

wKiom1T27A-h63ghAAQGuaXsrQY704.jpg

下面是标准ACL语句配置,实现网络192.168.2.0网段允许通过telnet登录。并配置本地登录的属性。然后应用ACLVTY远程登录配置。还有进入特权模式的密码。

wKioL1T27SThji17AAGF4IwhbhA444.jpg

wKiom1T27A-iWG98AABy8DdTOes631.jpg

W3上面的配置

首先配置一个管理IP地址,并创建一个VTP域用于共享vlan信息。

wKioL1T27×××Nmf3AAJnRmWBDFw827.jpg

wKiom1T27BCSuhrrAAEWwYKC6sg316.jpg

创建标准ACL语句,表示允许192.168.2.0网段telnet远程

wKiom1T27lOAW4mEAAGmAZN-w04779.jpg

SW2上面的配置

配置接口trunk模式、封装类型并创建一个VTP

wKioL1T27SShH1GtAAFKIwrWi5U972.jpg

把端口加入到相应的vlan,配置管理IP地址和默认网关,这样在不是直连的PC机(也就是网关机)上面就可以远程登录进行管理了

wKiom1T27BCAZGa0AAPxz_dAYjM714.jpg

SW1上面的配置

首先配置trunk模式,选择封装类型。配置各个vlan的管理IP地址。

创建VTP域,配置为服务模式。

wKioL1T27SWSzZSaAAP4u-YwdWg764.jpg

wKiom1T27BDRjrXoAAS9KENR2XY313.jpg

上面创建了一条标准的ACL语句用于远程telnet管理交换机

下面创建的是为服务器C4创建的访问和限制的各种信息。并应用在了路由器的out接口上。

wKioL1T27SXT0TqdAAJYsBWasCM775.jpg

C3机创建扩展ACL语句,并应用在VLAN3in接口上

wKiom1T27BHyyf2mAAErQQaIWWM676.jpg

C2机创建扩展ACL语句,并应用在vlan4in接口上

最后在进行集体查看ACL语句

wKioL1T27SXCMrCWAAT4QZFlymM250.jpg

结果验证:由于本次实验没有用宿主机和虚拟机。后面又做了一个实验。实验结果请看:

配置ACL语句使用宿主机访问虚拟机的web服务和禁止FTP服务实验

wKiom1T27BHhDWykAAJHDxgK7Eg463.jpg