ACL技术(访问控制列表)
• Access Control List
• 访问控制列表
• 是一种包过滤技术
• ACL基于IP包头的IP地址、四层TCP/UDP头部的端口号、[五层数据]进行过滤
• ACL主要分为两大类:
○ 标准ACL
■ 表号范围:1-99
■ 特点:只能基于源IP对包进行过滤
○ 扩展ACL
■ 表号范围:100-199
■ 特点:可以基于源IP、目标IP、端口号、协议等对包进行过滤。
• ACL原理:
○ 路由器的每一个端口都视为一个门
○ 门可以进可以出,两个方向,in、out
○ ACL表就是贴在门上的名单,谁能进谁能出看门上的表就知道了
○ 但是表不能贴反了,门也有两个面呢,要贴在数据包能看到的那个面上
○ 要将表应用到接口上
○ 一个接口的一个方向只能贴一张表
• ACL表
○ 可以有多条限制,严格自上而下匹配执行。
○ 由两部分组成,条件和动作。
○ 如果没有满足条件,动作就不会生效,继续检查下一条。
○ 如果满足条件,就执行对应动作,并且不再继续向下检查。
■ 示例:
■ 这样就能过滤掉长得不帅的了。
■ 因为不满足第一条就会向下继续查找,直到找到满足条件的然后执行对应的动作。
○ 先后顺序很重要!!越细的流量越要写在最上面!!
○ 如果表里没有就干掉不让过!
• ACL命令(写ACL时会自动创建和更改对应ACL表):
○ 标准ACL:
■ conf t
■ access-list 表号 permit/deny 源IP或网段 反子网掩码
□ 反子网掩码:将正子网掩码0和1倒置
◆ 255.0.0.0-0.255.255.255
◆ 255.255.0.0-0.0.255.255
◆ 255.255.255.0-0.0.0.255
□ 反子网掩码作用:
◆ 用来匹配条件,与0对应需要严格匹配(过滤位),与1对应的忽略
□ 举例:
◆ access-list 1 deny 10.1.0.0 0.0.255.255
◆ 过滤掉源IP是10.1.xxx.xxx的包(与子网掩码对应,只严格限制0对应的位)
◆ access-list 1 deny 10.1.1.2 0.0.0.0
◆ 简写:access-list 1 deny host 10.1.1.2
◆ 过滤掉源IP是10.1.1.2的包
◆ access-list 1 deny 0.0.0.0 255.255.255.255
◆ 过滤掉所有
◆ 简写:access-list 1 deny any
○ 一般情况下,access表写好不能更改,只能在末尾添加。,或者选择删除重写。
■ no access-list 表号
○ 查看ACL表
■ show ip access-list [表ID]
○ 将ACL应用到接口:
■ int fax/x
■ ip access-group 表号 in/out
■ exit
○ 将ACL应用到三层交换机要进入对应的vlan
• 怎么写不容易出错?
○ 先判断ACL位置
○ 判断最终允许还是最终拒绝
○ 将严格的控制写在前面
○ 标准ACL
■ 标准ACL尽量写在靠近目标的接口上,否则可能会误杀。
○ 扩展ACL
■ 扩展ACL尽量写在靠近源目标的接口上,以免造成其他网络设备的资源浪费。
■ 同一个网段写在一起!
■ 最上面应该是最详细的!从上到下应该是 协议 端口 单独ip 网段 any
• 扩展ACL
○ 表号:100-199
○ 特点:可以基于源IP、目标IP、端口号、协议等进行过滤
○ 案例:
■ acc 100 permit tcp host 10.1.1.1 host 20.1.1.3 eq 80
□ 允许10.1.1.1通过tcp协议访问20.1.1.3的80端口
■ acc 100 permit icmp host 10.1.1.1 20.1.1.0 0.0.0.255
□ 允许10.1.1.1通过icmp协议访问20.1.1.0网段
■ acc 100 deny ip host 10.1.1.1 20.1.1.0 0.0.0.255
□ 拒绝 10.1.1.1 访问 20.1.1.0网段
■ acc 100 permit ip any any
□ 允许所有流量通过
• 命名ACL
○ 作用:可以对标准或扩展ACL进行自定义命名
○ 优点:
■ 自定义命名更容易辨认,也便于记忆!
■ 可以任意修改、插入、删除某一条。
○ 命令:
■ 创建
■ conf t
■ ip access-list standard/extended 自定义表名
■ 开始从deny 或 permit 编写ACL条目
■ exit
■ 删除某一条
■ ip access-list standard/extended 自定义表名
■ no 条目ID
■ exit
■ 插入
■ ip access-list standard/extended 自定义表名
■ 条目ID 动作 条件
■ exit
ACL技术(访问控制列表)的更多相关文章
- Centos下ACL(访问控制列表)介绍(转)
我们知道,在Linux操作系统中,传统的权限管理分是以三种身份(属主.属組以及其它人)搭配三种权限(可读.可写以及可执行),并且搭配三种特殊权限(SUID,SGID,SBIT),来实现对系统的安全保护 ...
- ACL(访问控制列表)
第六部分,访问控制列表.访问控制列表(Access Control List,ACL) 是路由器和交换机接口的指令列表,用来控制端口进出的数据包.应用场景有校园网中教师网和学生网分别管理,通过acl控 ...
- IOS - ACL (访问控制列表)
ACL 介绍 ACL 是一款 IOS 软件工具,而不是某种协议.从名字上来看,ACL 的主要功能是控制对网络资源的访问.事实上这是 ACL 最早的用途.现在 ACL 除了能够限制访问外,更多时候,我们 ...
- [转载]ACM(访问控制模型),Security Identifiers(SID),Security Descriptors(安全描述符),ACL(访问控制列表),Access Tokens(访问令牌)
对于<windows核心编程>中的只言片语无法驱散心中的疑惑.就让MSDN中的解释给我们一盏明灯吧.如果要很详细的介绍,还是到MSDN仔细的看吧,我只是大体用容易理解的语言描述一下. wi ...
- 详解cisco访问控制列表ACL
一:访问控制列表概述 ·访问控制列表(ACL)是应用在路由器接口的指令列表.这些指令列表用来告诉路由器哪些数据包可以通过,哪些数据包需要拒绝. ·工作原理:它读取第三及第四层包头中的信息,如源 ...
- CCNA 之 十 ACL 访问控制列表
ACL 访问控制列表 ACL(Access Control List) 接入控制列表 ACL 的量大主要功能: 流量控制 匹配感兴趣流量 标准访问控制列表 只能根据源地址做过滤 针对曾哥协议采取相关动 ...
- Linux之facl----设置文件访问控制列表(详解)
setfacl命令 是用来在命令行里设置ACL(访问控制列表) 选项 -b,--remove-all:删除所有扩展的acl规则,基本的acl规则(所有者,群组,其他)将被保留. -k,--remove ...
- Linux_ACL文件访问控制列表
一.ACL文件访问控制列表 前言 1️⃣:ACL-文件访问控制列表: 2️⃣:ACL可以针对单个用户,单个文件或目录来进行r.w.x的权限设定,特别适用于需要特殊权限的使用情况. 3️⃣:ACL就是可 ...
- 用访问控制列表(ACL)实现包过滤
用访问控制列表(ACL)实现包过滤 一.ACL概述 1.ACL(Access Control List,访问控制列表)是用来实现数据包识别功能的 2.ACL可以应用于诸多方面 a>.b包过滤 ...
随机推荐
- libev的用法
本例是以linux环境c++的用法,ide用的是vs2019 一.libev的安装 我们采用的是apt-get方法(偷懒^_^),你也可以采用源码方式安装 sudo apt-get install l ...
- Java8的StreamAPI常用方法总结
目录 什么是Stream? Stream的创建 测试API 新建测试数据 findFirst.findAny anyMatch.noneMatch filter max.count peek.map ...
- mysql 5.7.26 忘记root密码
1.关闭mysql [root@mysql ~]# /etc/init.d/mysqld stopShutting down MySQL.. SUCCESS! 2.修改参数文件/etc/my.cnf ...
- 11g RAC 集群数据库不能跟随集群启动
1.查看集群资源详细情况 [oracle@rac01-+ASM1 ~]$ crsctl stat res -p 2.修改集群资源ora.rac.db的auto_start属性改为always [ora ...
- Mysql常用函数合集
1. 字符函数 length(获取字节数,UTF-8编码中 一个汉字占3个字节,GBK编码中一个汉字占2个字节) select length('abc'); #结果:3 select length(' ...
- jsp+servlet实现美妆店铺开发
一般的商城都有用户端和商城端两个部分,用户端就是给普通用户使用的,像我们在淘宝购物,我们就是使用的用户端:然而淘宝还分了很多个店铺,每个店铺的商品都是店老板安排人员去管理,那店老板管理自己的店铺用到的 ...
- 浅谈强连通分量(Tarjan)
强连通分量\(\rm (Tarjan)\) --作者:BiuBiu_Miku \(1.\)一些术语 · 无向图:指的是一张图里面所有的边都是双向的,好比两个人打电话 \(U ...
- Spring Cloud Alibaba基础教程-Nacos(二)
在Spring Cloud Alibaba基础教程-Nacos(一)当中学习了,如何从 nacos当中 通过Java的方式获取值,以及连接数据库,下面我们开始第二篇的学习 ,如果对你有帮助,方便下次寻 ...
- luabind 使用
LuaBind --最强大的Lua C++ Bind 转载:http://www.cppblog.com/deane/articles/49208.html1 介绍LuaBind 是一个帮助你绑定C+ ...
- Gradle 是干什么吃的?
Gradle维基解释:Gradle是一个基于Apache Ant和Apache Maven概念的项目自动化建构工具.它使用一种基于Groovy的特定领域语言来声明项目设置,而不是传统的XML.当前其支 ...