您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 项目/工程管理 > 第11次课 访问控制列表(ACL)
访问控制列表(ACL)问题1公网互联网用户对外信息服务器员工上网信息服务器问题1作为公司网络管理员,当公司领导提出下列要求时你该怎么办?为了提高工作效率,不允许员工上班时间进行QQ聊天、MSN聊天等,但需要保证正常的访问Internet,以便查找资料了解客户及市场信息等。公司有一台服务器对外提供有关本公司的信息服务,允许公网用户访问,但为了内部网络的安全,不允许公网用户访问除信息服务器之外的任何内网节点。问题2问题2在企业内部网络中,会存在一些重要的或者保密的资源或者数据,为了防止公司员工有意或无意的破坏或者访问,对这些服务器应该只允许相关人员访问。如何做到这一点?访问控制列表(ACL)AccessControlListACL概述基本ACL配置扩展ACL配置命名ACL一、ACL概述利用ACL可以对经过路由器的数据包按照设定的规则进行过滤,使数据包有选择的通过路由器,起到防火墙的作用。访问控制列表(ACL)由一组规则组成,在规则中定义允许或拒绝通过路由器的条件。ACL过滤的依据主要包括源地址、目的地址、上层协议等。ACL有两种:标准访问控制列表、扩展访问控制列表。ACL一般只在以下路由器上配置:1、内部网和外部网的边界路由器。2、两个功能网络交界的路由器。限制的内容通常包括:1、允许哪些用户访问网络。(根据用户的IP地址进行限制)2、允许用户访问的类型,如允许http和ftp的访问,但拒绝Telnet的访问。(根据用户使用的上层协议进行限制)1、ACL的工作过程访问控制列表(ACL)由多条判断语句组成。每条语句给出一个条件和处理方式(通过或拒绝)。路由器对收到的数据包按照判断语句的书写次序进行检查,当遇到相匹配的条件时,就按照指定的处理方式进行处理。ACL中各语句的书写次序非常重要,如果一个数据包和某判断语句的条件相匹配时,该数据包的匹配过程就结束了,剩下的条件语句被忽略。2、ACL语句一个访问控制列表(ACL)可由多条语句组成,每条ACL语句的形式为:Router(config)#access-list表号处理方式条件ACL表号:用于区分各访问控制列表。一台路由器中可定义多个ACL,每个ACL使用一个表号。标准访问控制列表:1~99。扩展访问控制列表:100~199。同一个ACL中各语句的表号相同。处理方式:取值有permit(允许)和deny(拒绝)两种。当数据包与该语句的条件相匹配时,用给定的处理方式进行处理。条件:每条ACL语句只能定义一个条件。例:access-list1permit10.0.0.00.255.255.255access-list1deny20.0.0.00.255.255.255第1句表示允许地址为10.*.*.*的数据包通过。第2句表示拒绝地址为20.*.*.*的数据包通过。这里的地址指数据包的源地址。3、应用ACL如果只是定义了ACL,它还不会起到任何作用,必须把ACL应用到一个接口上才能起作用。应用ACL:Router(config)#interface接口号Router(config-if)#ipaccess-group表号[in|out]in:表示在数据包进入此接口时使用ACL进行过滤。out:表示在数据包离开此接口时使用ACL进行过滤。通常,使用出站接口检查的数据包数量较少,效率要高一些。例:Router(config)#interfacee0Router(config-if)#ipaccess-group1out表示在e0口上使用表号为1的ACL对出站数据包进行过滤。通配符掩码在ACL语句中,当使用地址作为条件时,它的一般格式为:地址通配符掩码。通配符掩码决定了地址中的哪些位需要精确匹配,哪些为不需要匹配。通配符掩码是一个32位数,采用点分十进制方式书写。匹配时,“0”表示检查的位,“1”表示不检查的位。如:192.168.1.10.0.255.255表示检查前16位,忽略后16位,所以这个条件表示的地址是192.168.*.*。any条件:当条件为所有地址时,如果使用通配符掩码应写为:0.0.0.0255.255.255.255这时可以用“any”表示这个条件。如:Router(config)#access-list1permit0.0.0.0255.255.255.255Router(config)#access-list1permitany上面两个语句是等价的。host关键字:当条件为单一IP地址时,如果使用通配符掩码应写为:IP地址0.0.0.0这时可以用“host”关键字定义这个条件。如:Router(config)#access-list1permit200.1.1.50.0.0.0Router(config)#access-list1permithost200.1.1.5上面两个语句是等价的。二、标准访问控制列表标准ACL只能使用IP地址作为条件。标准ACL使用数据包的源地址匹配ACL语句中的条件。定义标准ACL时,可使用的表号为1~99。(针对IP数据报)标准ACL配置举例1R1E0一个局域网连接在路由器R1的E0口,这个局域网要求只有来自10.0.0.0/8、192.168.0.0/24、192.168.1.0/24的用户能够访问。R1(config)#access-list1permit10.0.0.00.255.255.255R1(config)#access-list1permit192.168.0.00.0.0.255R1(config)#access-list1permit192.168.1.00.0.0.255R1(config)#interfacee0R1(config-if)#ipaccess-group1out配置完成后,可以用命令查看ACL:R1#showaccess-lists说明:1、在每个ACL中都隐含着一个语句:access-listlist-numdenyany它位于ACL的最后,表示拒绝所有。所以任何一个与前面各语句都不匹配的数据包都会被拒绝。2、在ipaccess-group语句中,用in或out表示入站时匹配或出站时匹配,如果没有指定这个值,默认为out。3、在每个接口、每个方向上只能应用一个ACL。4、一个ACL可以应用到多个接口上。R1R2PC1:.2PC2:.1.1.2PC3:.1.1.2E0:.1E0:.1.1.1E1:.1.1.1S0:.1S0:.2192.168.0.0/24192.168.1.0/2410.0.0.0/820.0.0.0/8实例1的实验验证:标准ACL配置举例2R1E0一个局域网连接在路由器R1的E0口,这个局域网要求拒绝来自192.168.10.0/24的用户访问,其它用户都可以访问。R1(config)#access-list1deny192.168.10.00.0.0.255R1(config)#access-list1permitanyR1(config)#interfacee0R1(config-if)#ipaccess-group1out注意:access-list1permitany语句不能省略,如果省略该语句,则所有和语句1不匹配的数据包都会被隐含的access-list1denyany语句拒绝。标准ACL配置举例3R1E0一个局域网连接在路由器R1的E0口,这个局域网只允许来自192.168.20.0/24的用户访问,但其中192.168.20.1和192.168.20.5两台主机除外。R1(config)#access-list1denyhost192.168.20.1R1(config)#access-list1denyhost192.168.20.5R1(config)#access-list1permit192.168.20.00.0.0.255R1(config)#interfacee0R1(config-if)#ipaccess-group1out注意:access-list1permit192.168.200.0.0.255语句不能写在另两条语句的前面,如果把它写在第1句,则192.168.20.1和192.168.20.5因已经满足了条件,不会再进行后面的匹配。请参考下图,为了限制192.5.5.0网断访问210.93.105.0网断,考虑语句“deny192.5.5.00.0.0.255”放置在Lab-A路由器的E0接口上时,网络中的数据通讯情况这样所有192.5.5.0网络向外的通讯数据全部被拒绝标准ACL不处理目的地相关参数,因此,标准ACL应该放置在最接近目的地的地点标准ACL的正确放置位置说明:定义ACL时,每条语句都按输入的次序加入到ACL的末尾,如果想要更改某条语句,或者更改语句的顺序,只能先删除整个ACL,再重新输入。比如删除表号为1的ACL:Router(config)#noaccess-list1在实际应用中,我们往往把路由器的配置文件导出到TFTP服务器中,用文本编辑工具修改ACL,然后再把配置文件装回到路由器中。三、扩展访问控制列表扩展ACL可以使用地址作为条件,也可以用上层协议作为条件。扩展ACL既可以测试数据包的源地址,也可以测试数据包的目的地址。定义扩展ACL时,可使用的表号为100~199。(针对IP数据报)扩展ACL的语句:access-list表号处理方式条件表号:取值100~199。处理方式:permit(允许)或deny(拒绝)。条件:协议源地址目的地址[运算符端口号][established]协议:用于匹配数据包使用的网络层或传输层协议,如IP、TCP、UDP、ICMP等。源地址、目的地址:使用“地址通配符掩码”的形式,也可以使用any、host关键字。运算符端口号:用于匹配TCP、UDP数据包中的端口号。运算符包括lt(小于)、gt(大于)、eq(等于)、neq(不等于)。端口号用于对应一种应用,如21—FTP、23—Telnet、25—SMTP、53—DNS、80—HTTP等。“运算符端口号”可匹配数据包的用途。如:“eq80”可匹配那些访问Web网站的数据包。在扩展ACL语句中,“运算符端口号”可以没有。例:access-list100permittcp192.168.0.00.0.255.25510.0.0.00.255.255.255eq80表示允许来自192.168.*.*的用户访问位于10.*.*.*的Web站点。扩展ACL定义后,也需要使用ipaccess-group命令应用在指定接口上才能起作用。如:Router(config)#interfacee0Router(config-if)#ipaccess-group100out在每个扩展ACL末尾也有一条默认语句:access-listlist-numdenyipanyany它会拒绝所有与前面语句不匹配的数据包。扩展ACL配置举例1R1E0一个局域网连接在路由器R1的E0口,这个局域网只允许Web通信流量和Ftp通信流量,其它都拒绝。R1(config)#access-list100permittcpanyanyeq80R1(config)#access-list100permittcpanyanyeq20R1(config)#access-list100permittcpanyanyeq21R1(config)#interfacee0R1(config-if)#ipaccess-group100out说明:标准FTP协议使用了两个端口,21用于建立FTP连接,20用于数据传输。说明:例1的配置将会极大限制局域网和外网间的应用,它会拒绝除Web和Ftp外的所有应用(包括ICMP、DNS、电子邮件等),也会拒绝那些没有使用标准端口的Web和Ftp应用。在实际应用中,我们通常只对那些可能有害的访问作出拒绝限制,或者限制用户访问某些有害的站点或服务。扩展ACL配置举例2R1E0R1是局域网和外网的边界路由器,禁止外网用户用Tel
本文标题:第11次课 访问控制列表(ACL)
链接地址:https://www.777doc.com/doc-3091767 .html