用 firewall-cmd 在 firewalld 中开放端口

在 Fedora/RHEL/CentOS 的 firewalld 防火墙中永久放行 TCP 或 UDP 端口,让服务能被网络访问。

Linux端口firewalld 防火墙防火墙中风险
运行 sudo firewall-cmd --permanent --add-port=8080/tcp,再执行 sudo firewall-cmd --reload 即可永久开放端口。

01命令

命令
$ sudo firewall-cmd --permanent --add-port=8080/tcp && sudo firewall-cmd --reload

02作用说明

firewalld 用 zone 来组织规则;不带 --permanent 的命令在下次 reload 或重启后就失效,所以要永久开放必须加 --permanent 并执行 reload。用 /tcp 或 /udp 指定协议,用 --list-ports(加 --permanent 查看已保存规则)验证结果。如果是 http、ssh 这类常见服务,优先用 --add-service=http,比裸端口更好读。

03风险

风险中风险
使用条件firewalld (default on RHEL, Fedora, CentOS, openSUSE)
!注意: 开放端口等于把该服务暴露给所在网络——只放行服务真正监听的端口,不用时用 --remove-port 关掉。

04撤销

撤销
$ sudo firewall-cmd --permanent --remove-port=8080/tcp && sudo firewall-cmd --reload

05来源

最后验证: 2026-09-18 · 分类: 网络