cike0415 发表于 2018-7-16 12:49:34

实施CISCO访问控制列表

IP访问控制列表类型  cisco 路由器支持两类IP ACL:
  标准IP ACL--基于源地址来过滤IP数据包
  扩展IP ACL--可以基于以下属性来过滤IP数据包
  --源IP地址
  --目的IP地址
  --源TCP/UDP端口
  --目的TCP/UDP端口
  --ICMP和IGMP消息类型
  --可选协议类型消息,用于细粒度控制
  标准编号ACL格式
  access-list access-list-number source
  access-list-number是ACL的编号   规定了一个标准的IP协议ACL (1-99 1300-1999)
  deny 丢弃所有与特定源地址相匹配的数据包
  permit 允许与特定源地址相匹配的数据包穿过接口
  source规定一台主机或主机组的IP地址,检查其数据包
  source-wildcard 应用于源地址的通配符掩码定义了一个源主机组,这些主机组会被检查。如果没有规定掩码,缺省掩码是0.0.0.0
  例子:
  config t
  access-list 2 permit 36.48.0.3
  access-list 2 deny 36.48.0.0 0.0.255.255
  access-list 2 permit 36.0.0.0 0.255.255.255
  36.0.0.0 是一个A类网络,其第二个字节规定了一个子网,子网掩码 255.255.0.0;
  在通配符使用中,0代表是必须匹配的一部分地址,255代表不需要匹配的一部分地址
  ACL是顺序处理,如果满足第一条,匹配过程就结束。
  务必记住,最后一条是隐藏的,deny any;也就是说如果你不配置一条permit,任何数据多不允许出去。
  标准IP ACL还支持以下关键字:
  any--任何主机如果用通配符标志就是0.0.0.0 255.255.255.255
  host --规定一个确切的主机匹配。 如果用通配符标志0.0.0.0相同
  log--对于匹配拒绝或允许语句的数据包,进行日志记录
  标准命名ACL格式
  config t
  ip access-list standard access-list-name
  access-list-name ----ACL名字
  deny 36.48.0.0 0.0.255.255
  permit 36.0.0.0 0.255.255.255
  exit
  扩展编号ACL格式
  例子:
  config t
  access-list 103 permit tcp any 128.88.0.0 0.0.255.255 established
  access-list 103 permit tcp any host 128.88.1.2 eq smtp
  interface e0/0
  ip access-group 103 in
  ACL中有一个关键字 established,只用在TCP报文上,代表一个已经建立的连接。
  务必记住,最后一条是隐藏的,deny any;也就是说如果你不配置一条permit,任何数据多不允许出去。
  上面established关键字说明:如果TCP报文带有确认ACK或者重置RST位,匹配发生,这表明该数据包属于一个现有的连接。
  如果ACK没有置位,而同步SYN有效,则意味网络上有人发起一次会话连接,数据包会被拒绝。
  access-list access-list-number
  access-list-number是ACL的编号   规定了一个扩展的IP协议ACL (100-199 2000-2699)
  deny 丢弃所有与特定源地址相匹配的数据包
  permit 允许与特定源地址相匹配的数据包穿过接口
  protocol-number 整数值,范围从0-255,代表一种IP协议
  protocol-keyword IP协议的命令,可能是EIGRP GRE ICMP IGMP IGRP IP IPINIP NOS OFPF TCP UDP
  source规定一台主机或主机组的IP地址,检查其数据包
  source-wildcard 应用于源地址的通配符掩码
  source-port 规定数据包最初的来源端口,可以是实际的端口号(80)或通过名(HTTP),对于TCP和UDP数据包来说,source-port也支持这些操作符:gt(大于)lt(小于)eq(等于)neq(不等于)
  destination 数据包发往的主机的和网络的IP地址
  destination-wildcard 应用于目的地址的通配符掩码
  destination-port 规定数据包发往的端口,可以是实际的端口号(80)或通过名(HTTP),对于TCP和UDP数据包来说,source-port也支持这些操作符:gt(大于)lt(小于)eq(等于)neq(不等于)
  established (仅限于TCP) 校验是否RST或ACK置位,如果两者有一个置位,就说明数据包属于之前已经建立的一个连接。此关键字可被用来限制对某一方向的TCP响应,如果会话是从相反方向开启的。
  log
  log-input
  any
  host
  扩展命名ACL格式
  config t
  ip access-list extended access-list-name (IOS11.2的版本不能识别命令ACL)
  permit tcp any 128.88.0.0 0.0.255.255 established
  permit tcp any host 128.88.1.2 eq smtp
  exit
  除了上述之外,扩展编号IP ACL和扩展命名IP ACL也都支持以下关键字:
  icmp-type规定ACL基于ICMP消息类型(0-255)来实施过滤
  icmp-message 规定ACL基于ICMP消息符号名(例如echo-reply)来实施过滤
  precedence precedence 规定ACL基于优先级名称或编号(0-7)来实施过滤
  remark 用来给ACL添加注解 最多100个字符长,CISCO IOS12.0以后支持该特性
  注释IP ACL条款
  config t
  access-list 102 remark allow traffic to file server
  access-list 102 permit ip any host 128.88.1.6
  remark message(不超过100个字符长)
  开发ACL规则
  规则1:写下来 将ACL实现的一系列要求写下来,可以很简单
  规则2:建立一个开发系统可以将配置COPY 到一个文件中去
  注意:***者很喜欢获取对路由器配置开发系统或TFTP服务器的访问,因为这些地方存储有ACL,为此必须保证选择用来开发和存储路由器文件的系统是安全的。
  规则3:测试 如果可能,在把ACL置于生产系统之前,应该在一个安全的环境里先进行测试。
  ACL定向过滤
  ACL必须应用到一个路由器的接口才能生效。用在某个接口的ACL是基于数据流方向的。
  入站(IN)---ACL应用于进入路由器接口的数据流
  出站(OUT)---ACL应用于离开路由器接口的数据流
  将ACL应用到接口
  在将ACL应用到路由器接口之前,一定要确保过滤的方向
  例子
  config t
  interface e0/1
  ip access-group 2 in
  interface e0/2
  ip access-group mailblock out
  exit
  命令行:
  ip access-group {access-list-number|access-list-name}{in|out}
  access-list-numberip标准编号或扩展编号ACL的编号 1-199 1300-2699
  access-list-name   ip标准命名或扩展命名ACL的名字 用IP ACCESS-LIST命令来规定
  in --过滤入站 (流向路由器接口)数据包
  out--过滤出战 (离开路由器接口)数据包
  显示ACL:
  en
  show access-lists
  命令行:
  show access-list {access-list-number|access-list-name}
  可以选择性用show ip interface命令来查看隶属于路由器接口的ACL。
  show ip interface {type number}
页: [1]
查看完整版本: 实施CISCO访问控制列表