用 firewall-cmd 在 firewalld 中开放端口
在 Fedora/RHEL/CentOS 的 firewalld 防火墙中永久放行 TCP 或 UDP 端口,让服务能被网络访问。
运行 sudo firewall-cmd --permanent --add-port=8080/tcp,再执行 sudo firewall-cmd --reload 即可永久开放端口。
01命令
命令
$ sudo firewall-cmd --permanent --add-port=8080/tcp && sudo firewall-cmd --reload02作用说明
firewalld 用 zone 来组织规则;不带 --permanent 的命令在下次 reload 或重启后就失效,所以要永久开放必须加 --permanent 并执行 reload。用 /tcp 或 /udp 指定协议,用 --list-ports(加 --permanent 查看已保存规则)验证结果。如果是 http、ssh 这类常见服务,优先用 --add-service=http,比裸端口更好读。
03风险
!注意: 开放端口等于把该服务暴露给所在网络——只放行服务真正监听的端口,不用时用 --remove-port 关掉。
04撤销
撤销
$ sudo firewall-cmd --permanent --remove-port=8080/tcp && sudo firewall-cmd --reload05来源
- firewall-cmd(1) — Ubuntu manual page依据: Reference for firewall-cmd port options and runtime vs permanent configuration behavior.
- firewall-cmd(1) — official man page依据: Documents --add-port, --permanent, and --reload for opening ports in firewalld zones.
最后验证: 2026-09-18 · 分类: 网络