ACL access control list 访问控制列表,是应用在路由器上的指令列表
1.华为 ACL :
标准ACL: basic
基于源IP地址来过滤数据包
列表序列:2000~2999
高级ACL :advanced 基于源IP地址、目标IP地址,端口号,协议类型 列表序列:3000~3999 4000~4999 2层ACL layer2 2.ACL 列表中包含多个条目,条目均含有序列号,序列号为了区分不同的条目信息,同时与ACL执行顺序相关,默认情况下 华为路由器条目的步长为5(设备显示信息为:ACL's step is 5),ACL执行的动作有两种:允许,拒绝(permit ,deny)
当执行ACL条目时,按条目序列号从小到大依次匹配,匹配成功则执行对应操作。
3.通配符 wildcard
通配符则表示与IP是否匹配。通配符同样是32位,和IP地址一一对应,
“0”位代表精确匹配,而“1“位代表不许匹配。
4.注意事项
1.ACL对设备本身产生的流量,是不起作用的。
2.为了减少不必要的流量通信,应该将ACL设置在拒绝流量的来源处,但是对于标准ACL来说,因为其匹配信息为ACL的源IP(source IP),若设置在源IP处,则会拒绝源IP的其他流量。
因此 基本ACL在调用的时候,建议调用在距离目标IP近的地方;
高级ACL在调用的时候,建议调用在距离源IP地址近的地方。
3.对于华为设备 在物理接口上调用ACL时(traffic-filter),所使用的ACL条目,条目最后都包含一个隐含条目即:允许所有。
4.在其他环境下调用ACL时(虚拟端口 例如 user-interface vty 0 4,telnet接口)条目最后包含的隐含条目为:拒绝所有。
5.顺序
首先:了解流量:流量的源地址、目的地址、流量所使用的协议、对应的端口号、标志等,可以通过抓包分析;
其次:确定流量的方向,以及要调用ACL的设备
再次;编辑ACL前,因先查看原ACL表,防止冲突以及删除原ACL条目,以及确认编辑条目的序列号
最后:对于多端口,多IP地址设备,每个对应物理端口都应设置相应的ACL条目,才能完成对对应设备流量的完全控制。
6.基本操作
ACL acl name telnet --->默认为 acl name telnet advanced 高级的,且自动生成一个条目编号
acl name telnet basic ---->则为基本ACL
display acl all ----> 查看ACL信息
display traffic-filter applided-record--->查看设备上ACL的调用记录
dispaly current configuration |acl begin
ACL 2000
rule 10 deny source 192.168.1.1 0.0.0.0
ACL 3000
rule 10 deny tcp source 192.168.1.1 0.0.0.0 destination 192.168.3.1 0.0.0.0 destination-port eq 23 ---->禁止192.168.1.1对192.168.3.1 远程Telnet访问
rule 20 deny ip source 192.168.1.1 0.0.0.0 destination any --->拒绝192.168.1.1主机的任何流量访问