在 Linux 中,你可以使用以下命令来管理防火墙:
-
检查防火墙状态:
sudo systemctl status firewalld
:检查 firewalld 服务的状态(适用于使用 firewalld 的发行版,如 CentOS、Fedora 等)。sudo systemctl status iptables
:检查 iptables 服务的状态(适用于使用 iptables 的发行版)。
-
启动、停止和重启防火墙服务:
sudo systemctl start firewalld
:启动 firewalld 服务。sudo systemctl stop firewalld
:停止 firewalld 服务。sudo systemctl restart firewalld
:重启 firewalld 服务。sudo systemctl start iptables
:启动 iptables 服务。sudo systemctl stop iptables
:停止 iptables 服务。sudo systemctl restart iptables
:重启 iptables 服务。
-
配置防火墙规则:
sudo firewall-cmd --zone=public --add-port=80/tcp
:在 public 区域添加允许 80 端口的 TCP 连接。sudo firewall-cmd --zone=public --remove-port=80/tcp
:在 public 区域移除允许 80 端口的 TCP 连接。sudo firewall-cmd --zone=public --list-ports
:列出 public 区域允许的端口。
-
保存和重新加载防火墙配置:
sudo firewall-cmd --runtime-to-permanent
:将临时配置保存为永久配置。sudo firewall-cmd --reload
:重新加载防火墙配置。
这些命令仅提供了一些常见的防火墙管理操作,具体命令和选项可能因发行版和防火墙软件的不同而有所差异。请根据你所使用的 Linux 发行版和防火墙软件进行适当的调整。
在使用 firewalld 防火墙管理工具时,可以使用 --permanent
参数来永久性地应用规则。此参数将在防火墙配置文件中进行修改,以便规则在系统重启后仍然有效。
以下是一些常见的使用 --permanent
参数的示例:
-
添加端口规则:
sudo firewall-cmd --zone=public --add-port=80/tcp --permanent
-
移除端口规则:
sudo firewall-cmd --zone=public --remove-port=80/tcp --permanent
-
列出永久性规则:
sudo firewall-cmd --permanent --zone=public --list-all
-
重新加载防火墙配置:
sudo firewall-cmd --reload
记住,在使用 --permanent
参数时,更改将立即写入防火墙配置文件,但要使更改生效,仍然需要重新加载防火墙配置。
请注意,--permanent
参数只适用于 firewalld 防火墙管理工具,对于其他防火墙工具(如 iptables),可能会有不同的语法和选项。请根据你使用的具体防火墙工具进行适当的调整。