查看防火墙状态
cpp
复制代码
sudo systemctl status firewalld
启动/停止防火墙服务
cpp
复制代码
# 启动防火墙
sudo systemctl start firewalld
# 停止防火墙
sudo systemctl stop firewalld
# 启用开机自启
sudo systemctl enable firewalld
# 禁用开机自启
sudo systemctl disable firewalld
配置防火墙规则
查看当前规则
cpp
复制代码
# 查看所有规则
sudo firewall-cmd --list-all
# 查看开放的端口
sudo firewall-cmd --list-ports
# 查看允许的服务
sudo firewall-cmd --list-services
开放指定端口
1、临时生效
cpp
复制代码
# 开放单个端口(如 8080/TCP)
sudo firewall-cmd --add-port=8080/tcp
# 开放端口范围(如 5000-6000/UDP)
sudo firewall-cmd --add-port=5000-6000/udp
2、永久生效
cpp
复制代码
sudo firewall-cmd --permanent --add-port=8080/tcp
sudo firewall-cmd --permanent --add-port=20000-40000/tcp
# 重载防火墙使更改生效
sudo firewall-cmd --reload
3、同时开放多个端口
cpp
复制代码
sudo firewall-cmd --permanent --add-port={5060,5061,20000-40000}/tcp --add-port={5060,5061,20000-40000}/udp
sudo firewall-cmd --reload
4. 允许指定服务(永久生效)
cpp
复制代码
# 查看所有预定义服务
sudo firewall-cmd --get-services
# 允许 HTTP 服务
sudo firewall-cmd --permanent --add-service=http
# 允许 SSH 服务
sudo firewall-cmd --permanent --add-service=ssh
# 允许 HTTPS 服务
sudo firewall-cmd --permanent --add-service=https
# 重载防火墙
sudo firewall-cmd --reload
5. 配置 IP 白名单
cpp
复制代码
# 允许特定 IP 访问(如 192.168.1.100)
sudo firewall-cmd --permanent --add-source=192.168.1.100
# 允许整个子网访问(如 192.168.1.0/24)
sudo firewall-cmd --permanent --add-source=192.168.1.0/24
# 重载防火墙
sudo firewall-cmd --reload