访问控制列表(ACL)根据源地址、目标地址、源端口或目标端口等协议信息对数据包进行过滤,从而达到访问控制的目的。ACL分为标准的和扩展的两种类型。标准ACL只能根据分组中的IP源地址进行过滤,例如可以允许或拒绝来自某个源设备的所有通信。扩展ACL不但可以根据源地址或目标地址进行过滤,还可以根据不同的上层协议和协议信息进行过滤。例如,可以对PC与远程服务器的Telnet会话进行过滤。两种ACL过滤功能的区别见下表。
ACL分为标准ACL和扩展ACL两种
标准访问控制列表的编号为1-99和1300~1999之间的数字,标准访问控制列表只使用 源地址 进行过滤,扩展的ACL的编号使用 100-199 以及2000~2699之间的数字。
ACL访问列表规则
每一个正确的访问列表都至少应该有一条 允许 语句,具有严格限制条件的语句应放在访问列表所有语句的最上面。
当一个分组经过时,路由器按照一定的步骤找出与分组信息匹配的ACL语句对其进行处理。路由器自顶向下逐个处理ACL语句,首先把第一个语句与分组信息进行比较,如果匹配,则路由器将允许(Permit)或拒绝(Deny)分组通过;如果第一个语句不匹配,则照样处理第二个语句,直到找出一个匹配的。如果在整个列表中没有发现匹配的语句,则路由器丢弃该分组。于是,可以对ACL语句的处理规则总结出以下要点:
①一旦发现匹配的语句,就不再处理列表中的其他语句。
②语句的排列顺序很重要。
③如果整个列表中没有匹配的语句,则分组被丢弃。
需要特别强调ACL语句的排列顺序。如果有两条语句,一个拒绝来自某个主机的通信,另一个允许来自该主机的通信,则排在前面的语句将被执行,而排在后面的语句将被忽略。所以在安排ACL语句的顺序时要把最特殊的语句排在列表的最前面,而最一般的语句排在列表的最后面,这是ACL语句排列的基本原则。例如下面的两条语句组成一个标准ACL。
access-list 10 permit host 172.16.1.0 0.0.0.255
access-list 10 deny host 172.16.1.1
第一条语句表示允许来自子网172.16.1.0/24的所有分组通过,而第二条语句表示拒绝来自主机172.16.1.1的通信。如果路由器收到一个源地址为172.16.1.1的分组,则首先与第一条语句进行匹配,该分组被允许通过,第二条语句就被忽略了。要达到预想的结果—允许来自除主机172.16.1.1之外的、属于子网172.16.1.0/24的所有通信,则两条语句的顺序必须互换。
access-list 10 deny host 172.16.1.1
access-list 10 permit host 172.16.1.0 0.0.0.255
可见,列表顶上是特殊性语句,列表底部是一般性语句。
例题1:
每一个访问控制列表(ACL)最后都隐含着一条(57)语句。
(57)A.deny any B.deny all C.permit any D.permit all
【答案】A
【解析】
出于安全性考虑,ACL的默认动作是拒绝(Implicit Deny),即在ACL中没有找到匹配的语句时分组将被拒绝通过,这相当于在列表最后有一个隐含语句拒绝了所有的通信(deny any)。由此引申出的一条规则是:每一个ACL至少要有一条“允许”语句,否则只有“拒绝”语句的ACL将丢弃所有的分组。
例题2
访问控制列表(ACL)配置如下,如果来自因特网的HTTP报文的目标地址是162.15.10.10,经过这个ACL过滤后会出现什么情况?(58)。
(58)A.由于行30拒绝,报文被丢弃
B.由于行40允许,报文被接受
C.由于ACL末尾隐含的拒绝,报文被丢弃
D.由于报文源地址未包含在列表中,报文被接受
【答案】C
【解析】
语句 10 deny tcp 162.15.0.0 0.0.255.255 any eq telnet 的作用是拒绝来自 162.15.0.0 网络的telnet访问。
语句 20 deny tcp 162.15.0.0 0.0.255.255 any eq smtp 的作用是拒绝来自 162.15.0.0 网络的smtp访问。
语句 30 deny tcp 162.15.0.0 0.0.255.255 any eq http 的作用是拒绝来自 162.15.0.0 网络的http访问。来自因特网的目标地址是162.15.10.10的http报文不能被这个语句过滤。语句40 permit tcp 162.15.0.0 0.0.255.255 any 的作用是允许来自 162.15.0.0 网络的任何访问。这个语句也不会过滤来自因特网的目标地址是162.15.10.10的http报文。
所以来自因特网的目标地址是162.15.10.10的http报文被ACL末尾隐含的拒绝语句阻止,报文被丢弃。
基本ACL和扩展ACL的设置位置
在靠近出口(数据源地址)的网络接口上设置扩展ACL。
在靠近 入口(数据目的地址) 的网络接口上设置标准ACL。
ACL的标准配置语句
标准ACL
标准ACL语句只能根据数据包中的源地址进行过滤,可以允许(permit)或阻止 (deny)数据包通过。配置标准ACL的路由器命令格式如下:
标准ACL的编号为1〜99和1300〜1999,编号之后是路由器实施的动作。匹配条件仅考虑分组的源地址,后随一个任选的通配符掩码。如果忽略了通配符掩码,则默认为0.0.0.0,即要求整个地址全部匹配。最后的任选log参数使得匹配的分组在路由器控制台端口打印输出,但是不会在远程连接的路由器上输出。
路由器命令“ Router(config)# access-list 1 deny 192.168.1.1”的含义是阻止源地址为192.168.1.1的分组通过。
扩展ACL
以下ACL语句中,含义为“允许172.168.0.0/24网段所有PC访问10.1.0.10中的FTP服务”的是(42)。
(42)A.access-list 101 deny tcp 172.168.0.0 0.0.0.255 host 10.1.0.10 eq ftp
B.access-list 101 permit tcp 172.168.0.0 0.0.0.255 host 10.1.0.10 eq ftp
C.access-list 101 deny tcp host 10.1.0.10 172.168.0.0 0.0.0.255 eq ftp
D.access-list 101 permit tcp host 10.1.0.10 172.168.0.0 0.0.0.255 eq ftp
【答案】B
【解析】本题考查防火墙方面ACL配置的基础知识。
题中四个选项给出的是4条扩展ACL语句,扩展ACL语句的语法如下:
access-list_num取值100~199;permit表示允许,deny表示拒绝;
IP_protocol包括:IP,ICMP,TCP,GRE,UDP,IGRP,EIGRP,IGMP,NOS,OSPF
source_ip source_wildcard_mask表示源地址及其反掩码
destination_ip destination_wildcard_mask:表示目的地址及其反掩码
[operator source_port]和[operator destination_port]是操作符+端口号方式,操作符可以是
lt(小于),gt(大于),neq(不等于),eq(等于),range(端口号范围)。
关键词established仅仅用于TCP连接,此关键词可以允许(拒绝)任何TCP数据段报头中RST或ACK位设置为1的TCP流量。
在 ACL 语句中,“172.168.0.0/24 网段”表示为 172.168.0.0 0.0.0.255,目标主机10.1.0.10表示为host 10.1.0.10,并且源地址位于目标地址之前。所以,正确的ACL语句应该是选项B。
补充:
内网主机192.168.1.2 可以使用Telnet对Web服务器进行维护
Router(config)#access-list 101 permit tcp host 192.168.1.2 host 10.10.1.10 eq telnet
禁止内网用户192.168.1.254 访问公司Web服务器和外网
Router(config)#access-list 1 deny 192.168.1.254
Router(config)#faccess-list 1 permit any
Router(config)#interface ethernet 0/1
流量对E0/1口来说是流入的,所以使用in
Router(config-if)#ip access-group 1 in
允许所有主机访问Web服务器上的WWW服务
Router(config)#access-list 101 permit tcp any host 10.10.1.10 eq www
Router(config)#interface ethernet 0/0
Router(config-if)#ip access-group 101 out
都是主机访问外网,为什么一个是in ,而一个是out
这里要看是先过滤还是先路由
在in方向上是先过滤后路由转发的,在out方向上是先路由后再过滤转发的
第一个是先经过ethernet 0/1,在经过路由(即将进入路由器的)
第二个是先经过路由,后经过ethernet 0/1(到达目标服务器时已经穿过路由器的)文章来源:https://www.toymoban.com/news/detail-488371.html
今天就补充到这里,如有错误,请佬们不吝赐教,感谢大家!!💖💖💖💖文章来源地址https://www.toymoban.com/news/detail-488371.html
到了这里,关于基本ACL和扩展ACL的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!