managing traffic with access lists

introduction to access lists
访问列表(access list,acl)的主要作用是过滤你不想要的数据包.设置acl的一些规则:
  1.按顺序的比较,先比较第一行,再比较第二行..直到最后1行
  2.从第一行起,直到找到1个符合条件的行;符合以后,其余的行就不再继续比较下去
  3.默认在每个acl中最后1行为隐含的拒绝(deny),如果之前没找到1条许可(permit)语句,意味着包将被丢弃.所以每个acl必须至少要有1行permit语句,除非你想想所有数据包丢弃
2种主要的访问列表:
  1.标准访问列表(standard access lists):只使用源ip地址来做过滤决定 
  2.扩展访问列表(extended access lists):它比较源ip地址和目标ip地址,层3的协议字段,层4端口号来做过滤决定
利用acl来过滤,必须把acl应用到需要过滤的那个router的接口上,否则acl是不会起到过滤作用的.而且你还要定义过滤的方向,比如是是想过滤从internet到你 企业 网的数据包呢还是想过滤从企业网传出到internet的数据包呢?方向分为下面2种:
  1.inbound acl:先处理,再路由
  2.outbound acl:先路由,再处理
一些设置acl的要点:
  1.每个接口,每个方向,每种协议,你只能设置1个acl
  2.组织好你的acl的顺序,比如测试性的最好放在acl的最顶部
  3.你不可能从acl从除去1行,除去1行意味你将除去整个acl,命名访问列表(named access lists)例外(稍后介绍命名访问列表)
  4.默认acl结尾语句是deny any,所以你要记住的是在acl里至少要有1条permit语句
  5.记得创建了acl后要把它应用在需要过滤的接口上
  6.acl是用于过滤经过router的数据包,它并不会过滤router本身所产生的数据包
  7.尽可能的把ip标准acl放置在离目标地址近的地方;尽可能的把ip扩展acl放置在离源地址近的地方
standard access lists
介绍acl设置之前先介绍下通配符掩码(wildcard masking).它是由0和255的4个8位位组组成的.0代表必须精确匹配,255代表随意,比如:172.16.30.0 0.0.0.255,这个告诉router前3位的8位位组必须精确匹配,后1位8位位组的值可以为任意值.如果你想指定172.16.8.0到172.16.15.0,则通配符掩码为0.0.7.255(15-8=7)
配置ip标准acl,在特权模式下使用access-lists [范围数字] [permit/deny] [any/host]命令.范围数字为1到99和1300到1999;permit/deny分别为允许和拒绝;any为任何主机,host为具体某个主机(需要跟上ip地址)或某1段
我们来看1个设置ip标准acl的实例:


    router有3个lan的连接1个internet的连接.现在,销售部的用户不允许访问金融部的用户,但是允许他们访问市场部和internet连接.配置如下:
router(config)#access-list 10 deny 172.16.40.0 0.0.0.255
  router(config)#access-list 10 permit any
注意隐含的deny any,所以末尾这里我们要加上permit any,any等同于0.0.0.0 255.255.255.255.接下来把acl应用在接口上,之前说过了尽可能的把ip标准acl放置在离目标地址近的地方,所以使用ip access-group命令把acl 10放在e1接口,方向为出,即out.如下:
router(config)#int e1
  router(config-if)#ip access-group 10 out
controlling vty(telnet) access
使用ip标准acl来控制vty线路的访问.配置步骤如下:
  1.创建个ip标准acl来允许某些主机可以telnet
  2.使用access-class命令来应用acl到vty线路上
实例如下:
  router(config)#access-list 50 permit 172.16.10.3
  router(config)#line vty 0 4
  router(config-line)#access-class 50 in
  如上,进入vty线路模式,应用acl,方向为进来,即in.因为默认隐含的deny any,所以上面的例子,只允许ip地址为172.16.10.3的主机telnet到router上
extended access lists
扩展acl:命令是access-list [acl号] [permit/deny] [协议] [源地址] [目标地址] [操作符] [端口] [log].acl号的范围是100到199和2000到2699;协议为tcp,udp等,操作符号有eq(表等于),gt(大于),lt(小于)和neq(非等于)等等;log为可选,表示符合这个acl,就记录下这些日志
来看1个配置扩展acl的实例:


    假如要拒telnet和ftp到绝位于金融部的主机172.16.30.5,配置如下:
  router(config)#access-list 110 deny tcp any host 172.16.30.5 eq 21
  router(config)#access-list 110 deny tcp any host 172.16.30.5 eq 23
  router(config)#access-list 110 permit ip any any
  记住默认隐含的deny all.应用到e1接口,注意方向为out,如下:
  router(config)#int e1
  router(config-if)#ip access-group 110 out
named access lists
命名访问列表是创建标准和扩展访问列表的另外1种方法.它允许你使用命名的方法来创建和应用标准或者扩展访问列表.使用ip access-list命令来创建,如下:


    router(config)#ip access-list ?
  extended extended acc
  logging control access list logging
  standard standard access list
  router(config)#ip access-list standard ?
  <1-99> standard ip access-list number
  word access-list name
  router(config)#ip access-list standard blocksales
  router(config-std-nacl)#?
  standard access list configuration commands:
  default set a command to its defaults
  deny specify packets to reject
  exit exit from access-list configuration mode
  no negate a command or set its default
  permit specify packets to forward
  router(config-std-nacl)#deny 172.16.40.0 0.0.0.255
  router(config-std-nacl)#permit any
  router(config-std-nacl)#exit
  router(config)#^z
  router#sh run
  (略)
  !
  ip access-list standard blocksales
  deny 172.16.40.0 0.0.0.255
  permit any
  !
  (略)
接下来应用到接口上,如下:
  router(config)#int 1
  router(config-if)#ip access-group blocksales out
  router(config-if)#^z
  router#
monitoring access lists
一些验证acl的命令,如下:
  1.show access-list:显示router上配置了的所有的acl信息,但是不显示哪个接口应用了哪个acl的信息
  2.show access-list [number]:显示具体第几号acl信息,也不显示哪个接口应用了这个acl
  3.show ip interface:只显示ip访问列表信息
  4.show ip interface:显示所有接口的信息和配置的acl信息
  5.show ip interface [接口号]:显示具体某个接口的信息和配置的acl信息
  6.show running-config:显示dram信息和acl信息,以及接口对acl的应用信息。

转载于:https://blog.51cto.com/yaoyao/21194

CCNA笔记:Access Lists相关推荐

  1. 学习笔记 ACCESS 延迟注入

    通过执行很多命令延长执行时间判断返回是否有SQL注入. 例如: login.asp?id=1 and (SELECT count(*) FROM MSysAccessObjects AS T1, MS ...

  2. CCNA笔记-交换机安全

    一.  配置登陆安全<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&g ...

  3. CCNA笔记之第十九节:RIP协议(大实验3)

    RIP大实验都是以大实验背景为基础,在其上进行的实验,拓扑图是相同的. 3. RIP大实验3: 修改rip计时器时间:update interval 5s,invalid 10s,holddown为2 ...

  4. CCNA笔记之第二十节:RIP协议(大实验4)

    RIP大实验都是以大实验背景为基础,在其上进行的实验,拓扑图是相同的. 4. RIP大实验4: 边界自动汇总 1) 删除R1上重分布到RIP的缺省路由,R1和R4上通告回环口,但发现R1的回环口:19 ...

  5. CCNA笔记-各种路由器的接口

    CISCO路由器的各种接口 转载于:https://blog.51cto.com/kqpynn/281821

  6. CCNA笔记之第十四节:RIP协议(1)

    1. RIP:路由选择信息协议:(Routing Information Protocol) 1) Metric:跳数 (RIP只适合小网络,最大跳数16跳:第16跳不可达) 2) 管理距离值:(AD ...

  7. 我的CCNA笔记(二)

    IP规划 一,术语 1.网络号:代表网络 特性:不能分配给设备 2.网络广播地址:代表网络中的所有主机 特性:不能分配给设备 3.网络有效IP:介于网络号与网络广播地址之间的IP地址 特性:可以分配给 ...

  8. CCNA笔记:子网划分与VLSM

    IP Subnetting and Variable Length Subnet Masks(VLSM) Subnetting Basics 子网划分(subnetting)的优点: 1.减少网络流量 ...

  9. CCNA笔记之距离矢量

    通过AD(管理距离)来衡量哪个路由协议更优秀. 如何衡量同一种协议学到的多条路的好坏?使用度量值. 度量值>代价值 RIP:跳数 EIGRP:带宽(从源到目标的多个网段的最低带宽),延迟(多个网 ...

最新文章

  1. 20172328 2018-2019《Java软件结构与数据结构》第八周学习总结
  2. CodeSite使用小结
  3. Flutter 在铭师堂的实践
  4. 《Python 网络数据采集》正则表达式
  5. 协程的三种同步方式Channel、Mutex、WaitGroup
  6. 打开程序时固定位置_FANUC机器人:参考位置功能介绍与设定方法
  7. 华为在爱尔兰增设150个LTE研发职位
  8. 前端开发过程中非常重要的知识点和框架
  9. 洛谷——P1554 梦中的统计
  10. 计算机人工智能领域英文文献,人工智能 英文文献译文
  11. telnet远程登录服务器端口,Telnet服务器远程登录过程
  12. android星星闪效果,H5使用canvas实现星星闪烁效果
  13. 微信小程序 - 打开跳转 H5 网页链接(小程序内打开网页)
  14. 【滤镜算法】低多边形风格介绍及Matlab实现
  15. 梦回2008样式原子化:Tailwind是如何让Facebook拜倒在她的石榴裙下?
  16. 连接超时计算机无法连接失败,爱思助手无法连接或者连接超时解决办法
  17. oracle数据库报错:ORA-01654: 索引 aaa 无法通过 128 (在表空间 bb 中) 扩展
  18. 关于我如何阅读源码这件事...
  19. linux 命令断网,linux 断网 扫描基本命令(示例代码)
  20. JQuery 中load、ready 和 onload 的区别

热门文章

  1. 源码分析 | 深度解密Go语言之context
  2. 安装以及简单使用zookeeper
  3. java解决限制访问指定url
  4. activity动态加签任意节点
  5. python常见排序算法解析
  6. [DeeplearningAI笔记]序列模型3.2有条件的语言模型与贪心搜索的不可行性
  7. MySQL表的操作(二)
  8. Eclipse4.5 mars 配置Velocity插件
  9. CentOS系统VMware克隆后 重新设置成eth0
  10. linux之位置参数