科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网网络频道用访问控制列表实现网络单向访问(2)

用访问控制列表实现网络单向访问(2)

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

做网络的单向访问其实实现的是防火墙的基本功能:我是内网,你是外网,我能访问你,但你不能访问我。

作者:51CTO.COM 2007年11月6日

关键字: 网络 单向访问 防火墙 访问控制

  • 评论
  • 分享微博
  • 分享邮件

  Reflexive ACL中inbound的部分:

  ip access-list extended inbound_filter

  evaluate icmp_traffic

  deny ip any any log

  !---inbound的配置有和普通ACL有点不同了,第一句evaluate icmp_traffic对上述outbound配置中的icmp_traffic进行了引用,也就是说,它要检查从外网进来的流量,如果这个流量确实是从内网发起的对外访问的返回流量,那么允许这个流量进来。

  !---注意deny ip any any log这句,虽然这句也是不必配的,因为是默认的deny ip any any,但我加了log来对上面outbound部分的permit ip any any进行测试。

  Reflexive ACL中应用到接口的部分:

  interface Serial0

  ip address 192.1.1.1 255.255.255.0

  ip access-group inbound_filter in

  ip access-group outbound_filter out

  !---这里也有一些讲究,ACL outbound_filter被应用到外网口的out方向,ACL inbound_filter被应用到外网口的in方向,in和out不能搞混。

  好,现在进行测试,在10.1.1.2上ping 192.1.1.2,通了,RouterB上则ping不通10.1.1.2。

  现在还余下一个问题:路由器既然已经deny了外网进来的所有流量,那么它是怎么允许内网出去的返回流量进来呢?

  它是通过创建动态生成的ACL来允许返回流量的,下面看看show access-list的结果:

  ……

  Reflexive IP access list icmp_traffic

  permit icmp host 192.1.1.2 host 10.1.1.2 (24 matches) (time left 196)

  ……

  这些动态ACL可通过TCP的FIN/RST包来动态自动消除,对ICMP这样stateless的包来说,是通过内置的timer来消除的,这点可通过上述show access-list结果中的(time left 196)来核实。

  最后再说说那另一个测试,也就是两个ACL中加的多余的东西:

  ip access-list extended outbound_filter

  permit ip any any

  ip access-list extended inbound_filter

  deny ip any any log

  我在10.1.1.2上发起一个到192.1.1.2的TELNET连接,这个流量到了S0口后由ACL outbound_filter中的permit ip any any检测后放行。到了RouterB后,RouterB进行处理然后返回流量,这个流量到了S0口后由inbound_filter检测,因为evaluate icmp_traffic中并没有包含对TCP类型流量的检测,这个包由deny ip any any log一句处理后丢弃并生成日志:

  00:24:28: %SEC-6-IPACCESSLOGP: list inbound_filter denied tcp 192.1.1.2(23) -> 10.1.1.2(1483), 1 packet

  好,最后的最后,如果Reflexive ACL是做在内网口上,而不是在外网口上,该怎么写呢?呵呵,这个问题就留给你了。

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章