Chinaunix首页 | 论坛 | 博客
  • 博客访问: 539750
  • 博文数量: 120
  • 博客积分: 3991
  • 博客等级: 中校
  • 技术积分: 1113
  • 用 户 组: 普通用户
  • 注册时间: 2009-08-31 15:57
文章分类

全部博文(120)

文章存档

2011年(3)

2010年(6)

2009年(111)

我的朋友

分类: 系统运维

2009-10-27 19:38:10

访问控制列表概述


访问控制列表从概念上来讲并不复杂,复杂的是对它的配置和使用,许多初学者往往在使用访问控制列表时出现错误。
    下面是对几种访问控制列表的简要总结。
    ●标准IP访问控制列表
    一个标准IP访问控制列表匹配IP包中的源地址或源地址中的一部分,可对匹配的包采取拒绝或允许两个操作。编号范围是从1到99的访问控制列表是标准IP访问控制列表。
    ●扩展IP访问控制列表
    扩展IP访问控制列表比标准IP访问控制列表具有更多的匹配项,包括类型、源地址、目的地址、源端口、目的端口、建立连接的和IP优先级等。编号范围是从100到199的访问控制列表是扩展IP访问控制列表。
    ●命名的IP访问控制列表
    所谓命名的IP访问控制列表是以列表名代替列表编号来定义IP访问控制列表,同样包括标准和扩展两种列表,定义过滤的语句与编号方式中相似。
    ●标准IPX访问控制列表
    标准IPX访问控制列表的编号范围是800-899,它检查IPX源网络号和目的网络号,同样可以检查源地址和目的地址的节点号部分。
    ●扩展IPX访问控制列表
    扩展IPX访问控制列表在标准IPX访问控制列表的基础上,增加了对IPX报头中以下几个宇段的检查,它们是类型、源Socket、目标Socket。扩展IPX访问控制列表的编号范围是900-999。
  ●命名的IPX访问控制列表
    与命名的IP访问控制列表一样,命名的IPX访问控制列表是使用列表名取代列表编号。从而方便定义和引用列表,同样有标准和扩展之分。

访问控制列表使用原则

由于ACL涉及的配置命令很灵活,功能也很强大,所以我们不能只通过一个小小的例子就完全掌握全部ACL的配置。在介绍例子前为大家将ACL设置原则罗列出来,方便各位读者更好的消化ACL知识。
  
  1、最小特权原则
  
  只给受控对象完成任务所必须的最小的权限。也就是说被控制的总规则是各个规则的交集,只满足部分条件的是不容许通过规则的。
  
  2、最靠近受控对象原则
  
  所有的网络层访问权限控制。也就是说在检查规则时是采用自上而下在ACL中一条条检测的,只要发现符合条件了就立刻转发,而不继续检测下面的ACL语句。
  
  3、默认丢弃原则
  
  在CISCO设备中默认最后一句为ACL中加入了DENY ANY ANY,也就是丢弃所有不符合条件的数据包。这一点要特别注意,虽然我们可以修改这个默认,但未改前一定要引起重视。
  
  由于ACL是使用包过滤技术来实现的,过滤的依据又仅仅只是第三层和第四层包头中的部分信息,这种技术具有一些固有的局限性,如无法识别到具体的人,无法识别到应用内部的权限级别等。因此,要达到端到端的权限控制目的,需要和系统级及应用级的访问权限控制结合使用。

ACL的配置
  
  ACL的配置分为两个步骤
  
  第一步:在全局配置模式下,使用下列命令创建ACL:
  
  Router (config)# access-list access-list-number {permit | deny } {test-conditions}
  
  其中,access-list-number为ACL的表号。人们使用较频繁的表号是标准的IP ACL(1—99)和扩展的IP ACL(100-199)。
  
  在路由器中,如果使用ACL的表号进行配置,则列表不能插入或删除行。如果列表要插入或删除一行,必须先去掉所有ACL,然后重新配置。当ACL中条数很多时,这种改变非常烦琐。一个比较有效的解决办法是:在远程主机上启用一个TFTP,先把路由器配置文件到本地,利用文本编辑器修改ACL表,然后将修改好的配置文件通过TFTP传回路由器。
  
  这里需要特别注意的是,在ACL的配置中,如果删掉一条表项,其结果是删掉全部ACL,所以在配置时一定要小心。
  
  在 IOS11.2以后的版本中,网络可以使用名字命名的ACL表。这种方式可以删除某一行ACL,但是仍不能插入一行或重新排序。所以,笔者仍然建议使用TFTP进行配置修改。
  
  第二步:在接口配置模式下,使用access-group命令ACL应用到某一接口上
  
  Router (config-if)# {protocol} access-group access-list-number {in | out }
  
  其中,in和out参数可以控制接口中不同方向的数据包,如果不配置该参数,缺省为out。
  
  ACL在一个接口可以进行双向控制,即配置两条命令,一条为in,一条为out,两条命令执行的ACL表号可以相同,也可以不同。但是,在一个接口的一个方向上,只能有一个ACL控制。
  
  值得注意的是,在进行ACL配置时,网管员一定要先在全局状态配置ACL表,再在具体接口上进行配置,否则会造成网络的安全隐患。

阅读(1758) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~