访问控制列表——ACL
1、作用
1.1、访问控制 – 在路由器流量入或出的接口上,匹配流量,之后产生动作—允许、拒绝(控制该接口流量的出入)
1.2、定义感兴趣流量—帮助其他的策略协议抓流量(更加进准的控制,例如帮助流量限速等);
2、匹配规则
至上而下逐一匹配,上条匹配按上条执行,不再查看下条;
在思科体系中,末尾隐含拒绝所有; 在华为体系中,末尾隐含允许所有;
3、分类
标准ACL – 仅关注数据包中的源ip地址;
扩展ACL-- 关注数据包中的源、目标ip地址,协议号或目标端口号;
4、标准ACL配置
由于标准ACL仅关注数据包中的源IP地址;故调用时尽量的靠近目标;避免源对其他地址的访问被误删;
[r2]acl ?
INTEGER<2000-2999> 标准ACL编号2000-2999
INTEGER<3000-3999> 扩展ACL编号3000-3999
注:一个编号是一张规则,一张规则列表中可以容纳大量的具体规则,一个接口只能拥有一张规则列表;
[r2]acl 2000 定义标准ACL
[r2-acl-basic-2000]rule deny source 192.168.1.2 0.0.0.0
//规则:拒绝源IP是192.168.1.2的流量通过
注:在匹配地址时,需要使用通配符:ACL的通配符与OSPF的反掩码匹配规则相同;唯一的区别在于通配符可以0、1穿插
批量操作:
[r2-acl-basic-2000]rule permit source 192.168.2.0 0.0.0.255
//规则:允许源IP是192.168.2.0-192.168.2.255范围的流量通过
[r2-acl-basic-2000]rule permit source any //允许所有
注:由于ACL的匹配规则从上至下,序列号代表规则执行顺序,默认以5为步调自动添加序列号(例如第一天命令序列号是5 ,下一条就是序列号10);在制定匹配规则时加上序列号便于插入和删除
[r2-acl-basic-2000]rule 7 deny source 192.168.2.1 0 //序列号为7,介于默认序列
号5和10之间(也就是在第一条和第三条命令间再加上一条命令),执行拒绝源IP是192.168.2.1的流量通过
[r2-acl-basic-2000]undo rule 7 //删除序列号为7 的匹配命令
[r2]acl name classroom-A 2001 //名为classroom-A的ACL,编号为2001;
在创建ACL时,可以通过命名来标记策略应用的位置,这样在查看时方便
切记:在路由器一个接口的一个方向上只用调用一张ACL列表;
Acl编写完成后,必须在相应的位置调用时,方可生效;即使已经调用,若同时删除了ACL;那么调用无效;
[r2-GigabitEthernet0/0/0]traffic-filter ?
inbound Apply ACL to the inbound direction of the interface 入方向
outbound Apply ACL to the outbound direction of the interface 出方向
[r2-GigabitEthernet0/0/0]traffic-filter outbound acl 2000
5、扩展ACL配置
关注源/目标IP地址,目标端口号或协议号;由于扩展ACL对流量进行精确的匹配,故可避免误删,因此调用时尽量靠近源;
5.1、仅关注源、目ip地址
[r1]acl 3000
[r1-acl-adv-3000]rule deny ip source 192.168.1.2 0.0.0.0 destination 192.168.3.2 0.0.0.0
源ip地址 目标ip地址
[r1-GigabitEthernet0/0/0]traffic-filter inbound acl 3000 接口调用
5.2、在关注源、目ip地址的同时,再关注目标端口号
[r1-acl-adv-3001]rule deny tcp source 192.168.1.10 0.0.0.0 destination 192.168.1.1 0.0.0.0 destination-port eq 23
//拒绝源ip地址192.168.1.10对目标ip地址192.168.1.1的目标端口为23的TCP通讯行为—telnet被拒绝
[r1-acl-adv-3002]rule deny icmp source 192.168.1.10 0.0.0.0 destination 192.168.1.1 0.0.0.0
//
绝源IP地址192.168.1.10对目标192.168.1.1的ICMP—ping
再上接口调用
扩展acl:telnet远程登录 , 基于TCP的23端口工作
条件:1、登录与被登录设备间必须可达(通)
2、被登录设备,开启telnet设定;
[r1]aaa 进入AAA服务
[r1-aaa]local-user panxi privilege level 15 password cipher 123456
//账号panxi,权限0-15,数值越大权限越大,密码123456
[r1-aaa]local-user panxi service-type telnet //该账户用来远程登录
创建账号panxi,密码123456;该账号只能用于远程登录;
[r1]user-interface vty 0 4 //vty是远程登录接口,有很多,0-4是打开0-4这5个接
口,这样可以允许5个人同时通过该接口使用Telent
[r1-ui-vty0-4]authentication-mode aaa //认证模式是aaa,即当有人要通过vty接口
进行远程登录时,需要aaa认证
注意:一定是在被登录设备上配置