firewalld服务

firewalld 服务管理

# 启动 firewalld
sudo systemctl start firewalld

# 停止 firewalld
sudo systemctl stop firewalld

# 重启 firewalld
sudo systemctl restart firewalld

# 查看 firewalld 状态
sudo systemctl status firewalld

# 设置 firewalld 开机自启动
sudo systemctl enable firewalld

# 禁用 firewalld 开机自启动
sudo systemctl disable firewalld

查看和管理防火墙规则


# 查看防火墙状态和规则
sudo firewall-cmd --state
sudo firewall-cmd --list-all

# 查看当前区域
sudo firewall-cmd --get-active-zones

# 查看指定接口所属区域
sudo firewall-cmd --get-zone-of-interface=<interface>

# 查看某个区域的所有规则
sudo firewall-cmd --zone=<zone> --list-all

添加和移除端口

# 永久添加端口(例如 TCP 端口 80)
sudo firewall-cmd --permanent --add-port=80/tcp
# TCP 端口 8080,9090
sudo firewall-cmd --add-port={8080,9090}/tcp --permanent

# 永久移除端口(例如 TCP 端口 80)
sudo firewall-cmd --permanent --remove-port=80/tcp

# 重新加载防火墙以应用永久规则
sudo firewall-cmd --reload

添加和移除服务

# 永久添加服务(例如 HTTP 服务)
sudo firewall-cmd --permanent --add-service=http

# 永久移除服务(例如 HTTP 服务)
sudo firewall-cmd --permanent --remove-service=http

# 重新加载防火墙以应用永久规则
sudo firewall-cmd --reload

临时规则(重启后失效)

# 临时添加端口
sudo firewall-cmd --add-port=80/tcp

# 临时移除端口
sudo firewall-cmd --remove-port=80/tcp

# 临时添加服务
sudo firewall-cmd --add-service=http

# 临时移除服务
sudo firewall-cmd --remove-service=http

管理区域和接口

# 将接口添加到某个区域
sudo firewall-cmd --zone=<zone> --add-interface=<interface> --permanent

# 将接口从某个区域移除
sudo firewall-cmd --zone=<zone> --remove-interface=<interface> --permanent

# 重新加载防火墙以应用永久规则
sudo firewall-cmd --reload

其他常用命令

# 查看所有可用服务
sudo firewall-cmd --get-services

# 查看所有开放的端口
sudo firewall-cmd --list-ports

# 查看所有开放的服务
sudo firewall-cmd --list-services