一、ACL主要有三个功能:<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

 

            1.安全控制

            2.流量控制

            3.数据流量标识

 

二、基本原则:       

1、 每条语句包括两部分,匹配的条件和所要执行的操作(deny/permit)

   2、 按顺序匹配所有语句,只要有一条满足,则执行相应的操作,不再继续匹配

   3、 如果都不匹配,那么一定匹配最后的隐含拒绝条目,思科默认的。

   4、 任何条件下只给用户能满足他们需求的最小权限

   5、 不要忘记把ACL应用到端口上

   6 ACL的位置,标准访问控制列表一般离目标近,扩展的一般离源近。

   7、 每个接口的每个方向上只能使用一个访问控制列表。

   8、 标准和扩展ACL的单条语句不能删除或修改,要删除单条语句,需要删除整个ACL.但基于命名的标准和扩展ACL,可以删除单条语句。

 

通配符的使用:host 192.168.2.3表示特定主机等同于192.168.2.3  <?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" />0.0.0.0;

              any表示所有的源或目标等同于0.0.0.0  255.255.255.255

 

三、ACL的两种基本类型:标准和扩展ACL

 

1、标准ACL:根据数据包的源IP地址来允许或拒绝数据包

 

    配置命令:access-list {1-99} {permit|deny} source-ip source-wildcard [log]

 

    说明:wildcard为反掩码,用来跟源地址一起决定那些位需要进行匹配,为1的为表示不需要进行匹配,0表示需要严格匹配; log表示有匹配时生成日志信息标准ACL一般用在离目的最近的地方

 

    例:access-list 1 penmit 192.168.2.0 0.0.0.255    允许192.168.2.0网段的流量

        accesslist 1 deny host 172.16.4.13            拒绝172.16.4.13主机的流量

     应用到接口:

        router(config-if)#ip  access-group  1-99 {in|out}

 

2、扩展ACL基于数据包的协议、源地址与目标地址、以及端口来对数据包控制。

 

    命令:access-list {100-199} {permit/deny}  protocol source-ip source-wildcard  [operator port] destination-ip destination-wildcard  [operator port] [established][log]

   

与接口关联: router(config-if)#ip access-group 100-199 {in|out}

 

: access-list 101 permit tcp 192.168.2.0 0.0.0.255 gt 1023 host 192.168.1.2 eq 80

     允许192.168.2.0网段的主机访问主机192.168.1.2web服务

 

    说明:gt 1023表示所有大于1023的端口,这是因为一般访问webftp等服务器时客户端的主机是使用一个1023以上的随机端口;established 表示允许一个已经建立的连接的流量,也就是数据包的ACK位已设置的包。

 

3、命名ACL

     配置命令:

ip access-list {standard/extended}   name

     {permit/deny}source-ip source-wildcard    标准

{permit |deny} protocol source-ip source-wildcard [operator port] destination-ip destination-wildcard  [operatorport]  [established] [log]   扩展

 

     与接口关联:router(config-if)#ip access-group name  {in|out}

 

    : ip access-list extended outbound       定义一个名为outbound的命名ACL

       permit tcp 192.168.2.0 0.0.0.255 gt 1023 host 192.168.1.2 eq 80 

       允许192.168.2.0网段的主机访问主机192.168.1.2web服务

注意:

1、  每条访问控制列表语句包括两部分内容,匹配数据包的条件选项和所要执行的操作。

2、  命名的访问控制列表不是一个新的访问控制列表类型,它是把以序号定义的访问控制列表变成以名子定义的访问控制列表,便于理解。

 

四、ACL的应用

1、在VTY线路做acl,只允许以150.1.1.1为源的数据通过
R1(config)# access-list 1 permit 150.1.1.1 0.0.0.255
R1(config)#line vty 0 4
R1(config-line)#access-class 1 in