firewalld 是 CentOS 7/8/9 及 RHEL 系的默认防火墙,支持运行时与永久两套配置,大鹏云 CentOS 镜像已预装。
基本操作
sudo systemctl enable --now firewalld
sudo firewall-cmd --state
sudo firewall-cmd --list-all
端口管理
sudo firewall-cmd --permanent --add-port=80/tcp
sudo firewall-cmd --permanent --add-port=443/tcp
sudo firewall-cmd --reload
不加 --permanent 的规则重启后丢失,可先临时测试再固化。
服务名与来源限制
sudo firewall-cmd --permanent --add-service=http
需按来源 IP 精细控制时可使用 rich-rule 规则。
注意:修改 SSH 端口后,先放行新端口再重启 sshd;永久规则需 --reload 后才生效。