-
确认应用端口及协议:通过应用文档或运行命令(如
ss -tulnp | grep 应用名
)确定所需开放的协议(TCP/UDP)及端口号。 -
检查预定义服务:执行
firewall-cmd --get-services
查看是否存在与应用匹配的预定义服务(如http
/ssh
)。若存在,直接使用服务名更安全便捷。 -
添加规则(二选一):
- 通过服务名添加:
sudo firewall-cmd --permanent --add-service=服务名
- 通过端口添加:
sudo firewall-cmd --permanent --add-port=端口号/协议(如 8080/tcp)
- 通过服务名添加:
-
重载防火墙:
sudo firewall-cmd --reload
-
验证规则:
sudo firewall-cmd --list-all # 查看当前区域生效规则
-
特殊场景:若需限制来源IP或细化规则,可使用富规则(Rich Rule):
sudo firewall-cmd --permanent --add-rich-rule='rule family=ipv4 source address=192.168.1.0/24 port port=端口号 protocol=协议 accept'
注意:
- 默认操作区域为
public
,若需指定其他区域,添加--zone=区域名
参数 - 若应用使用临时端口(如数据库连接),需额外开放对应端口范围