在Linux系统中,防火墙是保障系统安全的重要屏障之一。firewalld
作为新一代的动态防火墙管理工具,以其丰富的特性和灵活的规则配置能力,逐渐成为了许多Linux发行版的首选。今天,我们就来深入解析firewalld
的核心命令——firewalld-cmd
,帮助你更好地掌握这一强大的防火墙管理工具。
一、firewalld-cmd
基础介绍
firewalld-cmd
是firewalld
服务的命令行界面,它允许用户以非交互式方式管理防火墙设置。通过该命令,你可以轻松地查看、添加、删除和更新防火墙区域(zones)、服务(services)、端口(ports)以及直接规则(direct rules)。
二、常用命令概览
-
查看当前区域设置
firewall-cmd --get-active-zones
-
查看所有支持的区域
firewall-cmd --get-zones
-
设置默认区域
sudo firewall-cmd --set-default-zone=public
这里,
public
是一个示例区域,你可以根据需要替换为其他区域。 -
添加服务到区域
sudo firewall-cmd --zone=public --add-service=http --permanent
该命令将HTTP服务添加到
public
区域,并设置为永久生效。注意,使用--permanent
选项后需要重载防火墙规则。 -
重载防火墙规则
sudo firewall-cmd --reload
在修改了永久配置后,必须执行此命令使更改生效。
三、重点命令详解
-
服务管理:除了添加服务,你还可以使用
--remove-service
来移除服务,以及--list-services
来列出某个区域的所有服务。 -
端口管理:对于非标准端口,可以使用
--add-port
和--remove-port
来添加或移除。例如,sudo firewall-cmd --zone=public --add-port=8080/tcp --permanent
会向public
区域添加TCP协议的8080端口。 -
直接规则:对于复杂的配置需求,
firewalld
还支持直接规则(direct rules),允许你编写自定义的iptables规则。使用--direct
选项可以访问这一功能。
通过上述重点内容的介绍,相信你已经对firewalld-cmd
命令有了较为全面的了解。掌握这些命令,将帮助你更加灵活地配置和管理Linux系统的防火墙,为系统安全保驾护航。