6. 访问控制列表ACL

6.1 标准访问控制列表

(1)标准ACL

  ①标准ACL是基于IP数据包的源IP地址作为转发或是拒绝的条件。即,所有的条件都是基于源IP地址的。

  ②基本不允许或拒绝整个协议组。它不区分IP流量类型。如Telnet、UDP等服务。

(2)实战:只允许部分计算机访问Internet

  ①目标: 在Router0上定义标准ACL,只允许市场部(PC7例外)和财务部的计算机能够访问Internet。而服务器组中的计算机拒绝访问Internet

  ②在Router0的S3/0接口的出站访问控制

Router>en
Router#config t //进入全局配置模式
Router(config)#access-list ?
<-> IP standard access list //标准ACL的编号范围是1-99
<-> IP extended access list //扩展ACL的编号范围是100-199 //1. 在Router0上创建标准ACL,列表编号为10(可以是1-99之间的任何值)。
// A.允许192.168.2.0/24、192.168.1.0/24两个网段的数据包通过,注意使用
// 的是反转掩码
// B.控制列表的any与反转掩码0.0.0.0等价
// C.路由器在应用访问控制列表的规则时顺序很重要,它会从上到下检查,如
// 果匹配就不再检查ACL后面的设置。其原则是更加具体的地址放最前面。因
// 此被拒绝的主机要放前面,允许的放后面。ACL的最后一条会默认为拒绝所有!
// D.删除某个10号列表:Router(config)#no access-list 10
Router(config)#access-list deny host 192.168.2.2 //第1条,要先写!
Router(config)#access-list permit 192.168.2.0 0.0.0.255 //第2条
Router(config)#access-list permit 192.168.1.0 0.0.0.255 //第3条
Router(config)#exit Router#show access-list //查看ACL的10号列表
Standard IP access list
deny host 192.168.2.2 //第1条
permit 192.168.2.0 0.0.0.255 //第2条
permit 192.168.1.0 0.0.0.255 //第3条
Router(config)#access-list permit 192.168.2.0 0.0.0.255
Router(config)#access-list permit 192.168.1.0 0.0.0.255 //2. 将ACL10绑定到Router0的S3/0出口
Router(config)#interface serial /
Router(config-if)#ip access-group ?
in inbound packets //in 表示进入接口时检查
out outbound packets //out 表示出接口时检查
Router(config-if)#ip access-group out //将列表绑定到S3/0出口
//取消绑定:no ip access-group 10 out
Router(config-if)#

  ③测试,分别从PC3、PC4、PC7和服务器组的ftp主机去ping 10.0.0.2。会发现PC3、PC4是会通的,但PC7和ftp主机ping不通。可见ACL列表己经完全起作用了。

6.2 扩展访问控制列表

(1)扩展ACL

  ①基于IP数据包的源地址、目标地址、协议和端口这些条件来决定是否转发数据包。

  ②比标准ACL的控制粒度更细。

  ③扩展ACL的语法:

    access-list 编号{permit | deny} {TCP | UDP} 源地址 目标地址 eq 目标端口

    access-list 编号{permit | deny} {IP | ICMP} 源地址 目标地址  //没目标端口!

【说明】如果协议是IP或ICMP,则后面没有目标端口;如果允许IP协议,就等同于允了所有TCP、UDP以及ICMP协议的流量

(2)实验环境:

  ①目标:在Router0定义扩展ACL,使得市场部能访问Internet,财务部只能访问Internet上的Web服务器。服务器组中的计算机能ping通Internet中任何计算机

  ②路由器上设置ACL

//1. 在Router0上创建扩展ACL
Router#conf t
Router(config)#access-list permit ip 192.168.2.0 0.0.0.255 any //市场部允许访问Internet
Router(config)#access-list permit tcp 192.168.1.0 0.0.0.255 10.0.0.0 0.255.255.255 eq ?
<-> Port number
ftp File Transfer Protocol ()
pop3 Post Office Protocol v3 ()
smtp Simple Mail Transport Protocol ()
telnet Telnet ()
www World Wide Web (HTTP, ) //eq后面可以是端口或应用层协议名称!
//财务部计算机只允许访问10.0.0.0/8网段的Web服务器
Router(config)#access-list permit tcp 192.168.1.0 0.0.0.255 10.0.0.0 0.255.255.255 eq
//服务器组的计算机只能ping internet的计算机
Router(config)#access-list permit icmp 192.168.0.0 0.0.0.255 any //2. 将扩展ACL绑定到Router0的S3/0接口
Router(config)#interface serial /
Router(config-if)#ip access-gr
Router(config-if)#ip access-group out
Router(config-if)#exit

  ③验证扩展ACL。市场部的PC7能ping通Internet上的任何计算机(包括访问WebServer的网页)。财务部的PC2不能ping通Internet上的任何计算机,但能访问WebServer网站。服务器组的计算机能ping通Internet上任何计算机,但不能访问WebServer。

6.3 使用ACL保护路由

(1)保护路由器安全

  ①路由器一般都开启telnet功能,以便远程管理。

  ②路由器的任一接口都允许telnet,不可能为每个接口的入口都绑定ACL,可以使用标准ACL来控制访问VTY线路

(2)实战:使用ACL保护路由器安全(要事先设置Router的telnet密码和enable密码)

  ①目标:只允许ITG部门的计算机能够telnet中路由器Router0

  ②在Router0上创建标准ACL,并绑定到VTY线路。

Router#conf t
Router(config)#access-list permit 192.168.1.0 0.0.0.255 //定义ACL,只允许192.168.1.0/24网段
Router(config)#line vty 0 15 //进入VTY虚接口,0和15分别表示起始和结束的vty的0-15号接口。
Router(config-line)#access-class in //将编号为12的ACL绑定到vty
Router(config-line)#

  ③验证:在PC7上telnet 192.168.2.1会失败。但PC3上telnet 192.168.1.1会成功,只要输入正确的telnet密码和enable密码。

6.4 访问控制列表的位置

(1)标准ACL:尽可能靠近目的地址的位置。这是因为我们并不真正的要在自己的网络内使用表内的控制规则。不能将标准ACL放置在靠近源主机的位置,因为这样会过滤基于源地址的流量,而导致不能转发任何流量。

(2)扩展ACL:尽可能放置在靠近源地址的位置。它可以过滤每个特定的地址和协议,所以我们不希望流量穿过整个网络后再被拒绝,它可在使用有限的带宽之前过滤掉此流量。

第10章 网络安全(5)_访问控制列表ACL的更多相关文章

  1. 用访问控制列表(ACL)实现包过滤

      用访问控制列表(ACL)实现包过滤 一.ACL概述 1.ACL(Access Control List,访问控制列表)是用来实现数据包识别功能的 2.ACL可以应用于诸多方面 a>.b包过滤 ...

  2. 基本的访问控制列表ACL配置

    摘要: 访问控制列表ACL (Access Control L ist)是由permit或 deny语句组成的一系列有顺序的规则集合,这些规则根据数据包的源地址.目的地址.源端口.目的端口等信息  来 ...

  3. 网络访问控制列表ACL(读懂这篇就基本够了,后面有配置案例)

    一.访问控制列表是什么? 访问控制列表(ACL)是一种基于包过滤的访问控制技术,它可以根据设定的条件对接口上的数据包进行过滤,允许其通过或丢弃.访问控制列表被广泛地应用于路由器和三层交换机,借助于访问 ...

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

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

  5. HCNA Routing&Switching之访问控制列表ACL

    前文我们了解了DHCP服务相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15147870.html:今天我们来聊一聊访问控制列表ACL: ACL(ac ...

  6. 访问控制列表 ACL

    访问控制列表(Access Control List,ACL) 是路由器和交换机接口的指令列表,用来控制端口进出的数据包.其目的是为了对某种访问进行控制. 作用 ACL可以限制网络流量.提高网络性能. ...

  7. CCNA网络工程师学习进程(8)访问控制列表ACL

    前面几节我们介绍了路由器的路由配置,接下来几节我们将介绍路由器的高级配置应用,包括ACL.NAT.DHCP.PPP.VPN和远程连接等的配置.     (1)ACL概述:   ACL(Access C ...

  8. ora-24247 网络访问被访问控制列表ACL拒绝

    ,     upper_port  );   COMMIT; END; / --3.创建访问控制列表(ACL)network_services, BEGIN  DBMS_NETWORK_ACL_ADM ...

  9. 详解cisco访问控制列表ACL

    一:访问控制列表概述   ·访问控制列表(ACL)是应用在路由器接口的指令列表.这些指令列表用来告诉路由器哪些数据包可以通过,哪些数据包需要拒绝.   ·工作原理:它读取第三及第四层包头中的信息,如源 ...

随机推荐

  1. nuxt docker 运行

    nuxt 是vue 版的next ,实现的功能还是很方便的,对于需要开发性能要求比较高的web app 是一个很不错的选择 备注: 项目很简单,使用docker && docker-c ...

  2. sqler sql 转rest api 源码解析(三) rest协议

    rest 服务说明 rest 协议主要是将配置文件中的宏暴露为rest 接口,使用了labstack/echo web 框架,同时基于context 模型 进行宏管理对象的共享,同时进行了一些中间件的 ...

  3. Eclipse之父、《设计模式》作者、Junit作者之Erich Gamma

    Erich Gamma拥有多重权威身份.他是Jazz项目的主要领导人:是Eclipse的项目管理委员会成员,被业界称为“Eclipse之父”: 是经典书<设计模式>的作者四人帮之一,199 ...

  4. 在公司上wifi

    公司的wifi上不了咋办?自己搞! 做法: 把自己的newifi mini带到公司, 记录公司内网ip,登入路由器设置, 1. 把ip改为内网一致, 2.关闭dhcp功能 3.设置wifi 网线连接: ...

  5. python装饰器学习笔记

    定义:本质上就是个函数,(装饰器其他函数)就是为了给其他函数添加附加功能 原则:1.不能修改被装饰的函数的源代码 2.不能修改被装饰的函数的调用方式 #-*-coding:utf-8-*- 1 imp ...

  6. Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' 解决办法

    启动mysql 报错: ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/var/lib/mysql/m ...

  7. Maven install报MojoFailureException

    [ERROR] 位置: 类 com.spark.test.JavaDirectKafkaWordCount [ERROR] /I:/TrueTimeControlOnSparkByJava/src/m ...

  8. 基于Eclipse搭建hadoop开发环境

    一.基础环境准备 1.Eclipse 下载地址:http://pan.baidu.com/s/1slArxAP 2.JDK1.8  下载地址:http://pan.baidu.com/s/1i5iNy ...

  9. Spring Cloud(Dalston.SR5)--Hystrix 断路器-缓存

    在 Spring Cloud 中可以使用注解的方式来支持 Hystrix 的缓存,缓存与合并请求功能需要先初始化请求上下文才能实现,因此,必须实现 javax.servlet.Filter 用于创建和 ...

  10. elasticsearch 聚合函数 max double精度损失bug

    测试样例数据{ "size" : 0, "query" : { "bool" : { "must" : { " ...