ACL技术.docx

上传人:b****4 文档编号:2953311 上传时间:2022-11-16 格式:DOCX 页数:20 大小:304.08KB
下载 相关 举报
ACL技术.docx_第1页
第1页 / 共20页
ACL技术.docx_第2页
第2页 / 共20页
ACL技术.docx_第3页
第3页 / 共20页
ACL技术.docx_第4页
第4页 / 共20页
ACL技术.docx_第5页
第5页 / 共20页
点击查看更多>>
下载资源
资源描述

ACL技术.docx

《ACL技术.docx》由会员分享,可在线阅读,更多相关《ACL技术.docx(20页珍藏版)》请在冰豆网上搜索。

ACL技术.docx

ACL技术

ACL技术

目录

第1章简介3

第2章ACL概述4

第3章使用ACL阻止XX的访问6

第4章使用ACL控制ICMP分组8

4.1ICMPEcho和EchoReply8

4.2ICMP目的不可达8

4.3ICMP源站抑制9

4.4ICMP超时9

第5章使用ACL实现网络入口过滤10

第6章使用ACL识别拒绝服务攻击13

6.1Smurf攻击13

6.2Fraggle攻击14

6.3TCPSYNFlood攻击16

第7章使用ACL处理IP分片18

第8章使用ACL实现病毒免疫21

第9章使用自反ACL实现内网安全24

第10章使用ACL编译提升性能27

第1章简介

访问控制列表(AccessControlList,ACL)是路由器上过滤流量的基本的控制机制。

虽然访问控制列表经常与QoS、NAT等多种功能联合使用,在这一章只讨论访问控制列表最重要的功能——识别通过路由器的各种类型的流量并进行过滤。

本章主要内容:

●ACL概述

●使用ACL阻止XX的访问

●使用ACL控制ICMP分组

●使用ACL实现网络入口过滤

●使用ACL识别拒绝服务攻击

●使用ACL处理IP分片

●使用ACL实现病毒免疫

●使用自反ACL实现内网安全

●使用ACL编译提升性能

第2章ACL概述

访问控制列表是路由器上的流量过滤器,它可以根据报文的属性,比如IP地址、端口号等来识别特定类型的流量。

在识别出流量以后,访问控制列表可执行规定的操作,比如阻止它们通过某个接口。

访问控制列表由一系列的规则组成,每条规则都用来匹配一种特定类型的流量,规则的序号(Sequence)决定了这条规则在访问控制列表中的位置。

访问控制列表对报文按照规则序号从小到大的顺序进行检查,访问控制列表中第一条与报文相匹配的规则决定了该报文的处理结果:

允许(permit)或拒绝(deny)。

如果没有与报文相匹配的规则,那么该报文也被拒绝,也就是说,没有被允许的都会被拒绝掉。

由此可见,规则的顺序很重要。

下面的示例定义了一条IP标准访问列表。

(config)#ipaccess-liststandard1

(config-std-nacl)#10permit36.48.3.00.0.0.255

(config-std-nacl)#20deny36.48.0.00.0.255.255

(config-std-nacl)#30permit36.0.0.00.255.255.255

(config-std-nacl)#exit

下图显示了该访问列表各网段的访问权限。

阴影部分的动作为deny,白色部分的动作为permit。

图21标准访问列表网段分割示意图

需要注意的是,在最后一条规则的后面(即上面的规则30之后),隐含了一条内容为denyany的规则,其序号比访问列表中所有规则的序号都要大,且这条隐含的规则是不可见的,它将与前面的所有规则都不能匹配的报文进行丢弃。

如果不想让该隐含的规则起作用,那么必须手工配置一条内容为permitany的规则,以允许不符合其它所有规则条件的报文通过。

常用的IP访问列表有两种类型:

●标准型(standard)

IP标准访问列表只能根据包含在IP报头的源IP地址对报文进行过滤。

例如,下面的标准IP访问列表拒绝从主机171.69.198.102发来的报文,但是允许从其它主机发来的报文:

(config)#ipaccess-liststandard1

(config-std-nacl)#10denyhost171.69.198.102

(config-std-nacl)#20permitany

(config-std-nacl)#exit

●扩展型(extended)

IP扩展访问列表可以根据IP上层协议号、源IP地址、目的IP地址、源TCP/UDP端口号、目的TCP/UDP端口号、TCP标志、ICMP消息类型和代码、TOS优先级、IP分片标志等属性对数据包进行过滤。

例如,下面的IP扩展访问列表显示了拒绝从网络171.69.198.0/24发往网络172.20.52.0/24的telnet报文,但是允许其它的TCP报文。

(config)#ipaccess-listextended1001

(config-ext-nacl)#10denytcp171.69.198.00.0.0.255172.20.52.00.0.0.255eqtelnet

(config-ext-nacl)#20permittcpanyany

(config-ext-nacl)#exit

第3章使用ACL阻止XX的访问

ACL的一个基本功能就是用来实现对网络资源的访问限制,即一组受限的IP地址访问一组受限的服务。

使用ACL来控制访问权限最常用的方法是,创建ACL只允许合法的流量通过,而阻止其他所有不合法的、XX的流量。

下面,举一个案例来描述ACL的这项功能。

应用需求:

在某公司的内部网络中,路由器接口gigaethernet1连接着新闻服务器和财务服务器,要求只允许会计部(网段范围172.20.128.64-95)访问财务服务器,市场营销部(网段范围172.20.128.0-31)不能访问财务服务器,但会计部和市场营销部都能访问新闻服务器。

网络拓扑:

图31使用ACL阻止XX访问案例组网图

配置命令:

(1)创建编号为1001的扩展IP访问列表,允许所有报文经gigaethernet1接口到达新闻服务器,只允许从会计部发来的报文经gigaethernet1接口到达财务服务器。

router(config)#ipaccess-listextended1001

router(config-ext-nacl)#permitipanyhost171.23.55.33

router(config-ext-nacl)#permitip172.20.128.640.0.0.31host171.23.55.34

router(config-ext-nacl)#exit

(2)将该访问列表1001应用g1接口的输出方向上。

router(config)#interfacegigaethernet1

router(config-if-gigaethernet1)#ipaccess-group1001out

router(config-if-gigaethernet1)#exit

第4章使用ACL控制ICMP分组

ICMP分组在管理IP网络中扮演着非常重要的角色。

然而,它们也有可能被用作侦察工具,甚至被用作网络攻击的一部分。

为了达到安全目的,在网络的边缘,通常丢弃大量的ICMP分组而不允许它们通过,这样做通常也是合适的。

然而,因为一些ICMP消息对于网络正常发挥功能是很关键的,所以即使丢弃其他类型的ICMP分组也必须允许它们通过。

下面的小节讨论需要得到允许通过的ICMP类型,通过建立ACL来阻止其他类型的ICMP消息。

4.1ICMPEcho和EchoReply

虽然ICMPEcho和EchoReply是很重要的管理工具,但是也可以在拒绝服务(DoS)攻击中轻松地使用它们。

因此,虽然允许它们通过很重要,但是确保有限数量的这些消息通过访问控制机制也是必要的。

在大部分网络中,管理员可以决定:

几乎不需要echo消息从公用网络进入专用网络,而只允许echoreply消息从公用网络返回专用网络。

在这种情况下,可以建立ACL来丢弃echo消息,并允许echoreply消息到达一组受限的IP地址。

另外,当使用ICMPEcho和EchoReply的DoS攻击发生时,可以通过CAR(CommittedAccessRate)来控制它们的流量。

4.2ICMP目的不可达

在识别路由和网络的路径MTU发现中,“ICMP不可达”分组扮演着一个重要角色。

如果路由器根据路由表认为分组的目的是不可达的,那么它就发送一个消息告诉分组的源。

另外,如果一台主机将分组的“不分片”位设置为1,并且分组太大而不能通过一条链路传送,而路由器需要在该链路上发送分组,那么路由器就再发送一条ICMP不可达消息到主机,通知它或者减小分组或者在分组中不再设置“不分片”位。

如果这条消息在到达主机之前就被配置在路由器上的访问控制列表丢弃,那么我们就说创建了一个MTU黑洞。

因为就OSI模式的第三层而言,发送大分组的主机并不知道它的分组被丢弃了,它会继续发送大分组,而这些分组会继续被路由器丢弃,因为路由器在转发分组的链路上只有较小的分组才可以通过。

这种情况是ACL过滤掉了本不该过滤的“ICMP不可达”消息的直接后果,这也是造成如今网络上MTU黑洞的主要原因。

因此,在路由器上,ACL应该允许“ICMP不可达”消息通过。

4.3ICMP源站抑制

TCP/IP协议簇中,使用“ICMPsourcequench”消息可以控制TCP和UDP的流量。

根据RFC792的规定,对到目的网络的路由器上输出的到下一个网络的数据包,如果网关上没有足够的缓冲空间让它们排队的话,网关就有可能将这些数据包丢弃。

如果网关丢弃了一个数据包,它就会发送一个sourcequench消息到数据包的源主机。

Sourcequench消息请求主机减慢发送流量的速度。

网关可能为它丢弃的每一条消息发送一个sourcequench消息。

当收到sourcequench消息时,源主机就应该减慢发送流量的速度直到它不再从网关接收sourcequench消息为止。

然后源主机可以渐渐增加发送流量的速度直到它再一次收到sourcequench消息。

因此,ICMPsourcequench消息也是重要的。

如果被ACL丢弃,可能会使TCP和UDP协议丧失一些流量控制能力。

4.4ICMP超时

发送IP报文时,它的生存时间(TTL)被设置为某一个值。

这个域的目的是当IP报文一直在进行路由循环时可以丢弃该IP报文。

在每一跳,转发IP分组的路由器都会将该域的值减1。

如果分组到达一个路由器时它的TTL域已经等于0,那么路由器就必须丢弃该分组并通知发送分组的主机。

这可以帮助网络管理员查看网络中是否有路由回环。

因此,ACL应该允许ICMP超时消息通过路由器。

第5章使用ACL实现网络入口过滤

互联网上越来越多的针对各种目标的拒绝服务(DoS)攻击对Internet服务提供商(ISP)产生了巨大的挑战,也促使网络安全业界不断寻找新的方法来避免或减轻攻击,RFC2267中所阐述的网络入口过滤正是其中一种简单且行之有效的方法。

网络入口过滤并不能用来防止合法地址所产生的攻击,但是能够有效阻止伪源地址所发起的各种泛洪攻击。

RFC2267强烈建议所有的ISP都尽快采用网络入口过滤来防止位于合法网段范围之外的非法伪源地址所发起的各种攻击。

TCPSYNFlood是一种典型的伪源地址攻击。

图51TCPSYNFlood攻击示意图

上图中,targtet指被攻击的服务器,attacker指发起攻击的主机,它位于9.0.0.0/8网段内。

进行攻击时,attacker所发出的TCP/SYN报文的源IP地址时随机产生的,并不是attacker的实际IP地址,也就是说,attacker使用的是伪源地址,因为整个网络中并不存在到这些伪源地址的路由,所以target所返回的SYN/ACK报文是不可达的。

任何不可达的伪源地址都可能被用来实施TCPSYNFlood攻击。

当被攻击的服务器接收到这些T

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1