1、ACL: Access control list(路由器,三层交换),访问控制列表。 包过滤防火墙bash
2、类型:ide
标准访问控制列表(基础)测试
基于源IP地址过滤数据包spa
标准访问控制列表的访问控制列表号是1~ 993d
扩展访问控制列表(基础)blog
基于源IP地址、目的IP地址、指定协议、端口和标志来过滤数据包接口
扩展访问控制列表的访问控制列表号是100 ~ 199ip
命名访问控制列表(更为灵活)路由
命名访问控制列表容许在标准和扩展访问控制列表中使用名称代替表号it
3、过滤层:
访问控制列表基于:三层(IP) 和四层(端口,协议)进行过滤全部防火墙都基于这三层过滤。除应用防火墙为七层过滤
4、概述:
访问控制列表(ACL)
读取第三层、第四层包头信息
根据预先定义好的规则对包进行过滤
5、工做原理
一、访问控制列表在接口应用的方向
出:已通过路由器的处理,正离开路由器接口的数据包
入:已到达路由器接口的数据包,将被路由器处理
(列表应用到接口的方向与数据方向有关)
二、访问控制列表的处理过程
6、黑白名单:
白名单: (不写则拒绝全部)
例:容许1.2网段,
容许1.3
黑名单:(容许全部必须写)
例:拒绝 1.2
拒绝 1.3
不容许则为默认拒绝。因此必须容许全部而后设置拒绝网段
ACL规则:自上而下逐行匹配默认隐含拒绝全部。
七:标准访问控制列表的配置(基于源IP进行控制)
建立ACL
Router(config)#access-list access-list-number { permit | deny } source [ source-wildcard ]
删除ACL
Router(config)# no access-list access-list-number
应用实例
容许192.168.10/24和主机92.168 2. 2的流量经过
Router(config)# access-list 1 permit 192.168.1.0 0.0.0.255 Router(config)# access-list 1 permit 192.168.2.2 0.0.0.0
隐含的拒绝语句
Router(config)# access-list 1 deny 0.0.0.0 255.255.255.255
关键字: host、any
将ACL应用于接口
Router(config-if)# ip access-group access-list-number {in |out}
在接口.上取消ACL的应用
Router(config-if)# no ip access-group access-list-number {in |out}
实验要求:禁止pc1访问pc3,容许pc2访问pc3
实验拓补图:
实验步骤:
一、配置交换机(sw),关闭路由功能,进入全局模式,进入f1/0接口,进行双工速率匹配(三层交换上才能作ACL)
sw#conf t 进入全局模式 sw(config)#no ip routing 关闭路由功能 sw(config)#int f1/0 进入接口f1/0 sw( config-if)#speed 100 双工速率匹配 sw(config-if)#dup full
二、配置路由器(R1),配置接口f0/0和f0/1的IP地址
R1#conf t R1(config)#int f0/0 R1(config-if)#ip add 192.168.10.1 255.255.255.0 R1(config-if)#no shut R1(config-if)#int f0/1 R1(conf1g-if)#ip add 192.168.20.1 255.255.255.0 R1(config-if)#no shut R1(config-if) #
三、给三台pc机配置IP地址,测试是否能够互联互通
PC1> ip 192.168.10.2 192.168.10.1 //配置pc1IP地址 PC2> ip 192.168.10.3 192.168.10.1 //配置PC2IP地址 PC3> ip 192.168.20.2 192.168.10.1 //配置PC3IP地址 PC1> ping 192.168.20.2 //用pc1 ping pc3 PC2> ping 192.168.20.2 //用pc2 ping pc3
四、R1配置ACL访问控制列表,拒绝pc1访问,容许pc2访问,将ACL应用于接口
access-list 1 deny 192.168.10.2 0.0.0.0 拒绝pc1访问 access-list 1 deny host 192.168.10.2 access-list 1 permit any 容许pc2访问 do show access-list 查看访问列表 ip access-group 1 in 将ACL应用于接口
两种方法均可以
五、pc1去ping pc3,pc2去ping pc3,测试ACL配置结果
8、扩展访问列表:
建立ACL
Router(config)# access-list access-list-number { permit | deny }protocol { source source-wildcard destination destination-wildcard } [ operator operan ]
删除ACL
Router(config)# no access -list access-list-number
将ACL应用于接口
Router(config-if)# ip access-group access-list-number {in |out}
在接口.上取消ACL的应用
Router(config-if)# no ip access-group access-list-number {in |out}
应用实例
Router(config)# access-list 101 permit ip 192.168.1.0 0.0.0.255 192.168.2.0 0.0.0.255 Router(config)# access-list 101 deny ip any any