一、概述

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

ACL分为基本ACL高级ACL

二、基本ACL

基本ACL针对网络层传输层进行过滤,也叫包过滤。
其中基本ACL中包含标准ACL扩展ACL

  • 标准ACL只对源IP地址进行过滤,应靠近目的使用
  • 在思科设备上标准ACL编号为1-99,扩展ACL编号为100-199
  • 扩展ACL可以对协议源IP地址源端口号目的IP地址目的端口号进行过滤,应靠近源使用

1、配置

标准ACL

拓扑

第一步:配置IP地址

第二步:配置路由

由于ACL的使用是基于底层互通的情况下来制定一些规则,所以首先保证底层互通

第三步:配置ACL(编号)

规则1:禁止PC3访问PC1(源为PC3,目的为PC1,所以靠近源配置(R1))

方法一:

R1(config)#access-list 1 deny host 10.1.3.3  创建编号为1的ACL拒绝主机10.1.3.3
R1(config)#access-list 1 permit any             创建编号为1的ACL允许所有
R1(config)#interface g0/0/1
R1(config-if)#ip access-group 1 in              把ACL 1 运用到接口的in方向

方法二:

R1(config)#ip access-list standard 1         创建标准ACL 1
R1(config-std-nacl)#deny host 10.1.3.3          拒绝主机10.1.3.3
R1(config-std-nacl)#permit any                  允许所有
R1(config)#interface g0/0/1
R1(config-if)#ip access-group 1 in              把ACL 1 运用到接口的in方向

ACL一般用在接口上,其中包括入站ACL出站ACL

  • 入站ACL:在数据包进入接口时检查ACL规则过后才会被转发到出接口(入站为in
  • 出站ACL:在数据包进入接口被转发到出接口后,在出接口检查ACL判断是否转发数据(出站为out

注意:ACL对路由器自己产生的数据包不起作用

第四步:验证

R1#show access-lists 可以查看ACL

  • 前面的10,20为ACL条目(ACE)的编号,后面的match为匹配的数据包个数
  • ACL查询是从ACE编号小的开始查
  • ACL有一条隐式拒绝所有的ACE条目,所以在使用deny的ACL条目最后都要加一条permit any的ACE条目

    分别使用PC2和PC3去ping PC1,查看结果
    PC2可以ping通,PC3不能ping通


ACL用到VTY接口上

规则1:拒绝主机10.1.3.3远程登录R2,允许其他主机远程登录R2

R2(config)#access-list 2 deny 10.1.3.3       创建编号为2的ACL拒绝10.1.3.3
R2(config)#access-list 2 permit any         创建编号为2的ACL允许所有
R2(config)#line vty 0 4                     进入VTY接口
R2(config-line)#password cisco              创建密码cisco
R2(config-line)#login                       启用密码验证
R2(config-line)#access-class 2 in           将ACL 2 用到in方向

使用PC2 和PC3 远程登录R2
PC2:远程登录成功

PC3:远程登录失败

扩展ACL

在原有的拓扑上添加一个Server


规则1:拒绝PC1向server发出ping请求消息
规则2:允许PC1访问server的http服务
规则3:拒绝PC1访问server的FTP服务
扩展ACL靠近源配置,所以在R1上配置

R1(config)#ip access-list extended 100                               创建扩展ACL100
R1(config-ext-nacl)#deny icmp host 10.1.1.2 host 10.1.3.4 echo      拒绝原IP 10.1.1.2 目的IP 10.1.3.4 使用ICMP的echo消息
R1(config-ext-nacl)#permit tcp host 10.1.1.2 host 10.1.3.4 eq 80    允许原IP 10.1.1.2 目的IP 10.1.3.4 使用TCP的80端口(http)
R1(config-ext-nacl)#deny tcp host 10.1.1.2 host 10.1.3.4 eq ftp     拒绝原IP 10.1.1.2 目的IP 10.1.3.4 使用tcp的FTP服务(20,21号端口)
R1(config-ext-nacl)#permit ip any any                               允许所有
R1(config)#interface g0/0/0                                         进入g0/0/0接口
R1(config-if)#ip access-group 100 in                                将ACL 100 用到接口的in方向

验证

PC1 ping server:失败

PC1 ping PC3 :成功

PC1 访问server web服务:成功

PC1 访问 server FTP服务:失败

R1#show access-lists 查看每条ACE匹配的数据包

2、关于配置

标准ACL
access-list 【1-99】 【permit / deny】 【address / any / host】 【通配符掩码】
通配符掩码:0代表匹配1代表不匹配 和ospf、eigrp 里面的一样
例如:ACL 10 拒绝 192.168.10.0/24 网段

access-list 10 deny 192.168.10.0 0.0.0.255

扩展ACL
access-list 【100-199】【permit / deny】【ahp /eigrp / esp gre / icmp / ip / ospf / tcp / udp】【address / any / host】 【通配符掩码】【匹配的端口号】目的【address / any / host】 【通配符掩码】【匹配的端口号】
例如:ACL100 允许 10.1.1.0/24 网段的32769 端口号 去往20.1.1.0/24 网段的80端口 的TCP流量

access-list 100 permit tcp 10.1.1.0 0.0.0.255 eq 32769 20.1.1.0 0.0.0.255 eq 80

注意:

  • 所有的ACL最后都具有隐式拒绝所有的ACE条目
  • ACL要挂接在接口上才会起作用
  • 一个出站 IPv4 ACL、一个入站 IPv4 ACL、一个入站 IPv6 ACL、一个出站 IPv6 ACL

0基础学RS(二十七)ACL访问控制列表相关推荐

  1. 0基础学RS(十)思科AAA认证基于服务器的AAA认证(TACACS+配置,RADIUS配置)

    前言 上一篇讲了本地AAA的知识和相关配置,接下来将讲解基于服务器的AAA认证.本地AAA和基于服务器的AAA到底有什么区别呢?他们分别适用于什么什么样的环境? 本地AAA 本地实现的AAA对于非常小 ...

  2. 0基础学RS(九)思科AAA认证的本地AAA认证

    AAA概述 AAA是认证(Authentication).授权(Authorization)和计费(Accounting)的简称,是网络安全中进行访问控制的一种安全管理机制,提供认证.授权和计费三种安 ...

  3. 0基础学RS(三)路由器基本配置

    路由器基本配置 注:输入命令时可以用Tab来补齐,如果按Tab没有反应就试试在后面加个"?"看看是否存在你想输入的命令 点击路由器就可以看到下面这个界面了 新路由器刚启动时会问你是 ...

  4. 0基础学RS(十九)以太网通道链路聚合

    链路聚合 在一些对带宽和冗余要求比较高的场合中,可以在设备之间连接多条链路来增加带宽和提高冗余.如果将8条100兆物理接口聚合成一个逻辑接口,这个逻辑接口可提供800兆带宽. 通常情况下2层设备都会启 ...

  5. 0基础学RS(十一)VLAN知识点,VLAN的类型,VLAN中继(trunk),本征VLAN

    VLAN概述 VLAN定义 VLAN(Virtual Local Area Network):虚拟局域网,在交换网际网络中通过vlan可以灵活地进行分段和组织.VLAN可以将LAN(局域网)中的设备分 ...

  6. 0基础学RS(一)Packet Tracer 思科模拟器的使用以及下载

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 Packet Tracer概述 Packet Tracer界面 设备区 设备介绍 路由器 交换机 终端设备 线缆 视图 逻辑 ...

  7. 0基础学RS(十四)VTP(VLAN中继协议)作用及配置

    前言 在前面讲了VLAN的配置,在一台或几台交换机上配置相同的VLAN信息还是挺容易的.如果在一个大型企业中有数百台交换机需要配置VLAN信息,那一定是个枯燥的工作.然而VTP(VLAN中继协议)就可 ...

  8. 0基础学RS(五)分析思科路由器的路由表

    实验拓扑 ip address table 分析路由表 1.路由表 直连路由:当路由器接口配置ip地址并激活时,路由器就会添加直连路由 远程路由:这些路由是连接到其他路由器的远程网络,通向远程网络的路 ...

  9. 视频教程-网络工程师入门CCNA 0基础学网络视频课程【精华版】-思科认证

    网络工程师入门CCNA 0基础学网络视频课程[精华版] 新任帮主,双CCIE(CCIE R&S,CCIE Security):2011年前在国内知名培训机构担任CCIE R&S讲师:因 ...

最新文章

  1. TYVJ P1069 cowtour 看不懂题意
  2. C++11:内联命名空间,无缝升级库代码
  3. hdu 1598 find the most comfortable road (并查集+枚举)
  4. OpenLayers学习笔记5——使用jQuery UI实现查询并标注(UI篇)
  5. 微信公众平台如何获得openid
  6. Android开机启动Activity或者Service方法
  7. Caffeine 和 Redis 居然可以这么搭,想不到吧!
  8. TensorFlow 学习(四)—— computation graph
  9. bzoj 3514: Codechef MARCH14 GERALD07加强版
  10. further occurrences of HTTP header parsing errors will be logged at DEBUG level.
  11. github如何同步fork到自己仓库的代码
  12. 专题二:MATLAB矩阵处理
  13. 小程序内嵌的H5页面如何跳转到其他小程序?
  14. vue3 动态获取屏幕尺寸
  15. 图像处理_ISP_坏点矫正
  16. 算法---兔子生小兔子
  17. Proteus仿真过程中External model DLL “***.DLL” not found
  18. HTML Canvas 涂鸦
  19. Uva1218 Perfect Services
  20. java中函数式接口的使用

热门文章

  1. MATLAB中的set函数
  2. c语言自定义的xml解析库,轻量级C语言实现的xml解析库minixml
  3. 关于scanf与scanf_s
  4. 数字孪生数字工厂 数字孪生工厂解决方案
  5. 【github】机器学习(Machine Learning)深度学习(Deep Learning)资料
  6. Postgresql适配国产化人大金仓(kingbase)
  7. 8、什么是响应式设计?响应式设计的基本原理是什么?如何做?
  8. 虹科技术 | 终端入侵防御 | 在重大攻击中发现新的Babuk勒索软件
  9. 大学宿舍恶性负载识别智能限电系统
  10. CSS让背景图片填满DIV