Chinaunix首页 | 论坛 | 博客
  • 博客访问: 603731
  • 博文数量: 110
  • 博客积分: 8016
  • 博客等级: 中将
  • 技术积分: 1217
  • 用 户 组: 普通用户
  • 注册时间: 2006-06-28 10:14
文章分类

全部博文(110)

文章存档

2008年(1)

2007年(13)

2006年(96)

我的朋友

分类: 系统运维

2006-06-28 15:22:02

Introduction to Access Lists

访问列表(access list,ACL)的主要作用是过滤你不想要的数据包.设置ACL的一些规则:

1.按顺序的比较,先比较第一行,再比较第二行..直到最后1

2.从第一行起,直到找到1个符合条件的行;符合以后,其余的行就不再继续比较下去

3.默认在每个ACL中最后1行为隐含的拒绝(deny),如果之前没找到1条许可(permit)语句,意味着包将被丢弃.所以每个ACL必须至少要有1permit语句,除非你想想所有数据包丢弃

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.每个接口,每个方向,每种协议,你只能设置1ACL

2.组织好你的ACL的顺序,比如测试性的最好放在ACL的最顶部

3.你不可能从ACL从除去1,除去1行意味你将除去整个ACL,命名访问列表(named access lists)例外(稍后介绍命名访问列表)

4.默认ACL结尾语句是deny any,所以你要记住的是在ACL里至少要有1permit语句

5.记得创建了ACL后要把它应用在需要过滤的接口上

6.ACL是用于过滤经过router的数据包,它并不会过滤router本身所产生的数据包

7.尽可能的把IP标准ACL放置在离目标地址近的地方;尽可能的把IP扩展ACL放置在离源地址近的地方

Standard Access Lists

介绍ACL设置之前先介绍下通配符掩码(wildcard masking).它是由025548位位组组成的.0代表必须精确匹配,255代表随意,比如:172.16.30.0 0.0.0.255,这个告诉router3位的8位位组必须精确匹配,18位位组的值可以为任意值.如果你想指定172.16.8.0172.16.15.0,则通配符掩码为0.0.7.255(15-8=7)

配置IP标准ACL,在特权模式下使用access-lists [ACL] [permit/deny] [any/host]命令.ACL号为19913001999;permit/deny分别为允许和拒绝;any为任何主机,host为具体某个主机(需要跟上IP地址)或某1


 

我们来看1个设置IP标准ACL的实例:

如图,router3LAN的连接1Internet的连接.现在,销售部的用户不允许访问金融部的用户,但是允许他们访问市场部和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命令来应用ACLVTY线路上

实例如下:

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的主机telnetrouter

Extended Access Lists

扩展ACL:命令是access-list [ACL] [permit/deny] [协议] [源地址] [目标地址] [操作符] [端口] [log].ACL号的范围是10019920002699;协议为TCP,UDP,操作符号有eq(表等于),gt(大于),lt(小于)neq(非等于)等等;log为可选,表示符合这个ACL,就记录下这些日志

来看1个配置扩展ACL的实例:


 

假如要拒telnetFTP到绝位于金融部的主机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 access-list:只显示IP访问列表信息

4.show ip interface:显示所有接口的信息和配置的ACL信息

5.show ip interface [接口号]:显示具体某个接口的信息和配置的ACL信息

6.show running-config:显示DRAM信息和ACL信息,以及接口对ACL的应用信息


 

 

 

阅读(685) | 评论(0) | 转发(0) |
0

上一篇:Cisco学习难点(八)

下一篇:你来了

给主人留下些什么吧!~~