Firewalld
2022-10-13
3 min read

Firewalld提供一个动态管理的防火墙,支持网络/防火墙区域,定义网络连接或接口的信任级别。它支持IPv4、IPv6防火墙设置、以太网桥和IP集。有一个运行时和永久配置选项的分离。它还为服务或应用程序提供了一个接口,可以直接添加防火墙规则。
Firewalld提供一个动态管理的防火墙,支持网络/防火墙区域,定义网络连接或接口的信任级别。它支持IPv4、IPv6防火墙设置、以太网桥和IP集。有一个运行时和永久配置选项的分离。它还为服务或应用程序提供了一个接口,可以直接添加防火墙规则。
使用firewalld的优势
可以在运行时环境中立即进行更改。不需要重新启动服务或守护程序。
通过firewalld D-Bus接口,服务、应用程序以及用户可以简单地调整防火墙设置。该接口是完整的,用于防火墙配置工具firewall-cmd、firewall-config和firewall-applet。
运行时和永久配置的分离使得在运行时进行验证和测试成为可能。运行时配置只在下次服务重载和重启或系统重启前有效。然后永久配置将被再次加载。有了运行时环境,就有可能将运行时用于那些只应在有限时间内有效的设置。如果运行时配置已经被用于评估,并且它是完整的、可以工作的,那么就有可能把这个配置保存到永久环境中。
特点
- 完整的D-Bus API
- 支持IPv4、IPv6、网桥和ipset
- 支持IPv4和IPv6 NAT
- 防火墙区域
- 预定义的区域、服务和icmp类型列表
- 简单的服务、端口、协议、源端口、伪装、端口转发、icmp过滤器、丰富的规则、接口和源地址在区域中的处理。
- 简单的服务定义,包括端口、协议、源端口、模块(netfilter辅助工具)和目标地址处理
- 丰富的语言,用于在区域内制定更灵活和复杂的规则
- 区域内定时的防火墙规则
- 拒绝的数据包的简单日志
- 直接接口
- 锁定。将可能修改防火墙的应用程序列入白名单
- 自动加载Linux内核模块
- 与Puppet集成
- 用于在线和离线配置的命令行客户端
- 使用gtk3的图形化配置工具
- 使用Qt5的小程序
谁在使用它?
firewalld在下列Linux发行版中作为默认的防火墙管理工具使用。
- RHEL 7和更新的版本
- CentOS 7和更新版本
- Fedora 18和更新版本
- SUSE 15和更新版本
- OpenSUSE 15和更新版本
- 可用于其他几个发行版
支持 firewalld 作为防火墙管理工具的应用程序和库包括。
- NetworkManager
- libvirt
- podman
- docker (仅支持iptables后端)
- fail2ban