Firewalld是一种动态防火墙管理器服务,相较于传统的静态防火墙管理工具iptables,它具有更多优势。Firewalld可以实现无需重新加载所有规则,只需保存和更新变更部分即可生效,从而减少对系统的影响。
Firewalld将网络流量划分为多个区域,并为每个区域预设了一套防火墙策略集合。用户可以根据不同的生产场景选择合适的策略集合,实现防火墙策略的快速切换。
Firewalld支持动态添加和删除规则,可以根据需要进行实时调整,而无需重新加载整个防火墙配置。
Firewalld可以根据服务的名称进行管理,方便用户对特定服务进行访问控制。
Firewalld支持配置端口转发,可以将流量从一个端口转发到另一个端口,实现网络应用的灵活部署。
启动Firewalld服务需要关闭旧版的防火墙服务,确保Firewalld能够正常运行。
通过命令参数可以配置Firewalld的运行方式,如启用或禁用Firewalld服务、设置默认使用的区域等。
Firewalld提供了命令参数用于查看已有的区域和默认使用的区域,以及调整区域的规则明细。
可以使用命令添加临时或永久的规则策略,允许特定的端口或服务进行访问。
Firewalld支持配置访问策略,可以根据需要允许或拒绝特定的IP地址或网络进行访问。
Firewalld可以实现端口转发功能,将流量从一个端口转发到另一个端口,实现灵活的网络应用部署。
sudo systemctl start firewalld
停止Firewalld服务:
sudo systemctl stop firewalld
设置Firewalld开机自启:
sudo systemctl enable firewalld
禁用Firewalld开机自启:
sudo systemctl disable firewalld
查看Firewalld状态:
sudo firewall-cmd --state
查看已有的区域:
sudo firewall-cmd --get-zones
查看默认使用的区域:
sudo firewall-cmd --get-default-zone
切换默认使用的区域:
sudo firewall-cmd --set-default-zone=<zone>
查看指定区域的规则明细:
sudo firewall-cmd --zone=<zone> --list-all
添加允许访问的端口:
sudo firewall-cmd --zone=<zone> --add-port=<port>/tcp [--permanent]
添加拒绝访问的端口:
sudo firewall-cmd --zone=<zone> --add-port=<port>/tcp --permanent
移除端口的访问规则:
sudo firewall-cmd --zone=<zone> --remove-port=<port>/tcp [--permanent]
添加允许访问的IP地址或网络:
sudo firewall-cmd --zone=<zone> --add-source=<ip_or_network> [--permanent]
添加拒绝访问的IP地址或网络:
sudo firewall-cmd --zone=<zone> --add-source=<ip_or_network> --permanent
移除IP地址或网络的访问规则:
sudo firewall-cmd --zone=<zone> --remove-source=<ip_or_network> [--permanent]
进行端口转发:
sudo firewall-cmd --zone=<zone> --add-forward-port=port=<port>:proto=<protocol>:toport=<to_port> [--permanent]
请注意,上述命令中的<zone>
可以替换为具体的区域名称,<port>
和<to_port>
可以替换为具体的端口号,<ip_or_network>
可以替换为具体的IP地址或网络。加上--permanent
选项可以使规则永久生效。
推荐先学习Firewalld的基本概念和原理,了解其工作机制和特点。
通过实际操作和练习,加深对Firewalld的理解和掌握,获取经验。