openstack FWaaS 防火墙项目因缺少维护者被弃用

OpenStack的防火墙即服务(FWaaS)由于维护问题被弃用,其功能主要由安全组提供。FWaaS通过虚拟路由器上的iptables规则控制网络包,而安全组在计算节点上限制虚拟网卡的访问。尽管FWaaS可以与安全组配合提供双重防护,但其v1/v2版本的局限性及不支持混杂模式端口导致其最终被移除。
摘要由CSDN通过智能技术生成

介绍

熟悉防火墙的都知道,防火墙一般放在网关上,用来隔离子网之间的访问。因此,防火墙即服务(FireWall as a Service)也是在网络节点上(具体说来是在路由器命名空间中)来实现。

目前,OpenStack 中实现防火墙还是基于 Linux 系统自带的 iptables,所以大家对于其性能和功能就不要抱太大的期望了。

一个可能混淆的概念是安全组(Security Group),安全组的对象是虚拟网卡,由L2 Agent来实现,比如neutron_openvswitch_agentneutron_linuxbridge_agent,会在计算节点上通过配置 iptables 规则来限制虚拟网卡的进出访问。防火墙可以在安全组之前隔离外部过来的恶意流量,但是对于同个子网内部不同虚拟网卡间的通讯不能过滤(除非它要跨子网)。

可以同时部署防火墙和安全组实现双重防护。

架构

FWaaS 是通过在其所在 tenant 中的所有 Virtual Router 上添加 iptbales 规则来实现对进出数据网络的网络包进行控制的。

防火墙控制进出租户网络的网络包。对不经过 Virutal Router 的网络包不起作用
在这里插入图片描述

与安全组对比

这里需要说明的是 FWaasSecurity Group (安全组) 的区别。安全组规则在连接到一个实例的计算节点上的Linuxqbr 上实施,FWaaS 创建的防火墙规则在租户网络边缘实现的虚拟路由器上实施。 FWaaS 并不旨在取代安全组的功能,并且它提供更为补充安全组,特别是在其当前实现状态下。 FWaaS 目前缺乏安全组提供的一些功能,包括无法指定通信的方向等。与此相反,安全组,也因为他们缺乏创建特定规则拒绝所有流量的能力,因此需要 FWaas 作为补充
在这里插入图片描述

部署

kolla-ansible 剧本 global.yml 文件中打开 enable_neutron_fwaas 开关,并 reconfigure 即可

v1 vs v2

FWaaSv1v2 两个版本,v1 的防火墙规则针对租户所有路由器的所有端口,而 v2 的粒度更小,可以针对路由器上指定端口设置规则
在这里插入图片描述
horizon 目前并不支持 FWaaS v2,虽然页面上可以显示防火墙规则以及一些信息,但是并不能绑定端口,绑定端口会报错:
在这里插入图片描述
而新版 kolla-ansible 只支持部署 v2 版本,v1 版本的支持已经移除,详见:https://review.opendev.org/#/c/668403/

使用

安装包

pip3 install python-openstackclient python-neutronclient

安装完之后,openstack firewall group 命令就是用来操作防火墙的
在这里插入图片描述
首次启用防火墙,会自动创建一个防火墙组,包含 ingress 策略和 exgress 策略,默认 ingress 策略是拒绝所有流量,默认 exgress 策略是放通所有流量

也就是默认创建的防火墙组会拒绝所有的入口流量,而放通所有的出口流量

之后我们通过给防火墙组配置端口,来实现将这些规则应用到路由器具体端口上,默认是没有指定任何端口的

openstack firewall group set --port <端口id> <防火墙组id>

openstack firewall group set --port dd0cd411-8cf3-4b3f-b9a1-c544526beaff fdcf8ccf-250e-4b69-a705-fe382ea65e83
在这里插入图片描述
但是上面命令会报错:Failed to set firewall group 'fdcf8ccf-250e-4b69-a705-fe382ea65e83': Port dd0cd411-8cf3-4b3f-b9a1-c544526beaff is not supported by firewall driver 'fwaas_db'.

查看neutron 日志:WARNING neutron_fwaas.services.firewall.service_drivers.agents.agents [req-8576c62d-0a6c-4a93-a2db-5228cfc2162e ec021436d81947aba552149b2255e137 7ed34d8be3ec41b7a29c2f9f64713486 - default default] Doesn't support hybrid port at the moment

发现是 FWaaS v2 并不支持 hybrid port (混杂模式端口)
在这里插入图片描述
最后找到官方仓库,发现因为 FWaaS 项目缺少维护者,已经被弃用,并且从 openstack U 版开始移除该功能

https://opendev.org/openstack/neutron-fwaas
在这里插入图片描述
在这里插入图片描述
详情:

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值