ACL访问控制列表

文章目录

        • ACL的基本原理
        • 标准ACL
        • 扩展ACL
        • ACL配置实践

ACL的基本原理

为什么要用ACL?
ACL访问控制列表_第1张图片

  • ACL的两大主要功能
    流量控制
    匹配感兴趣流量

  • ACL的类型
    标准ACL:核对来源地址;一般允许或拒绝整个协议套件;
    扩展ACL:核对来源及目的地地址;一般允许或否认特定的协议和应用;
    用于识别标准和扩展ACL的两种方法
    编号的ACL使用数字来识别
    命名的ACL使用描述性名称或数字来识别

标准ACL

标准访问控制列表

  • 只能根据源地址做过滤
  • 针对整个协议采取相关动作(允许或禁止)
    ACL访问控制列表_第2张图片

扩展ACL

扩展访问控制列表

  • 能根据源,目的地地址,端口号等等进行过滤
  • 能允许或拒绝特定的协议
    ACL访问控制列表_第3张图片

ACL配置实践

  • 入站及出战
    ACL访问控制列表_第4张图片

  • 入方向的ACL操作
    ACL访问控制列表_第5张图片

  • 出方向的ACL的操作
    ACL访问控制列表_第6张图片
    access-list x
    ACL访问控制列表_第7张图片

  • 标准访问控制列表的配置
    • Router(config-if)#
    access-list access-list-number {permit|deny} source [wildcard mask]
    • 编号选择1 – 99
    • 通配符若无,默认0.0.0.0
    • “no access-list access-list-number” 将会删除整个ACL列表
    Router(config-if)#
    ip access-group access-list-number { in | out }
    • 在接口中应用
    • 应用时关联入或出站方向
    • 默认出站
    • “no ip access-group access-list-number”可移除接口上应用的访问列表

  • 通配符缩写
    192.168.1.1 0.0.0.0 =host 192.168.1.1
    精确匹配192.168.1.1这个IP
    0.0.0.0 255.255.255.255 = any
    匹配所有IP

  • 实例 1ACL访问控制列表_第8张图片
    只禁止A网段中的192.168.1.1访问外网,其他放行
    router(config)#access-list 1deny 192.168.1.1 0.0.0.0
    router(config)#access-list 1 permit 0.0.0.0 255.255.255.255
    router(config)#interface e0
    router(config-if)#ip access-group 1 in

  • 实例2
    ACL访问控制列表_第9张图片
    只禁止A网段中的192.168.1.1-192.168.1.30访问外网
    router(config)#access-list 1 deny 192.168.1.0 0.0.0.31
    router(config)#access-list 1 permit any
    router(config)#interface e0
    router(config-if)#access-group 1 in

  • 实例3
    ACL访问控制列表_第10张图片
    只禁止A网段中的192.168.1.1–192.168.1.30 访问B网段的服务器2.200
    router(config)# access-list 100 deny ip 192.168.1.0 0.0.0.31 host 1922.168.2.200
    router(config)# access-list 100 permit any
    router(config)# interface e0
    router(config-if) ip access-group 100 in

  • 实例4

  • ACL访问控制列表_第11张图片
    只禁止所有用户访问B网段的服务器的Telnet服务
    router(config)# access-list 100 deny tcp any host 192.168.2.200 eq 23
    router(config)# access-list 100 permit ip any any
    router(config)# interface e1
    router(config-if)# ip access-group 100 out

  • 查看
    Router# show access-lists {access-list number|name}
    Router# show access-lists
    Standard IP access listSALES
    10 deny 10.1.1.0, wildcard bits 0.0.0.255
    20 permit 10.3.3.1
    30 permit 10.4.4.1
    40 permit 10.5.5.1
    Extended IP access list ENG
    10 permit tcp host 10.22.22.1 any eq telnet (25 matches)
    20 permit tcp host 10.33.33.1 any eq ftp
    30 permit tcp host 10.44.44.1 any eq ftp-data

  • 总结
    • 每个接口,每个方向,每种协议,你只能设置1 个ACL
    • 组织好你的ACL的顺序,比如测试性的最好放在ACL 的最顶部
    • 你不可能从ACL从除去1 行,除去1 行意味你将除去整个ACL,命名访问列表(named access lists)例外
    • 默认ACL结尾语句是deny any,所以你要记住的是在ACL 里至少要有1 条permit 语句
    • 记得创建了ACL后要把它应用在需要过滤的接口上
    • ACL是用于过滤经过router 的数据包,它并不会过滤router 本身所产生的数据包
    • 尽可能的把IP 标准ACL放置在离目标地址近的地方;尽可能的把IP 扩展ACL放置在离源地址近的地方

ACL访问控制列表_第12张图片

你可能感兴趣的:(tcp/ip)