上一篇 下一篇 分享链接 返回 返回顶部

1Panel防火墙端口放行不生效的排查与解决方法

发布人: 发布时间:1小时前 阅读量:1

问题现象

用户在1Panel面板中配置防火墙端口放行规则后,外部仍然无法访问该端口,导致服务无法正常使用。这种情况常见于新增规则未生效、规则冲突或系统防火墙干扰。

常见原因与排查步骤

1. 检查1Panel防火墙状态

首先确认1Panel的防火墙功能是否已启用。可在面板左侧菜单进入“防火墙”页面,查看顶部开关状态。若未启用,需先开启。

2. 确认端口是否被其他服务占用

使用命令 netstat -tlnp | grep ss -tlnp | grep 检查端口是否已被其他进程绑定。若端口被占用,1Panel防火墙放行无效,需先停止冲突服务。

3. 检查规则生效顺序

1Panel防火墙规则按列表顺序执行。若有更高优先级的拒绝规则在前,放行规则可能被覆盖。建议将放行规则置于拒绝规则之前,或直接删除无效拒绝规则。

4. 排查系统防火墙与1Panel的冲突

1Panel防火墙默认基于iptables/nftables实现,若系统中同时运行firewalldufw,可能导致规则覆盖。建议仅保留一种防火墙工具。可执行以下命令检查并关闭系统防火墙:

  • CentOS/RHEL:systemctl stop firewalld && systemctl disable firewalld
  • Ubuntu/Debian:systemctl stop ufw && systemctl disable ufw
  • 通用检查:iptables -L -n 查看当前规则链

5. 重启防火墙服务或面板

修改规则后,建议重启1Panel防火墙服务或整个面板:

  1. 在防火墙页面点击“重启防火墙”按钮;
  2. 或通过SSH执行 systemctl restart 1panel-firewall(具体服务名可查看面板文档)。

6. 检查端口监听状态

即使防火墙放行,若目标服务未监听该端口,外部依旧无法访问。使用 curl -v telnet://127.0.0.1:lsof -i : 确认服务是否正常启动。

验证方法

完成排查后,从另一台机器使用 telnet 或在线端口检测工具测试。若仍无法访问,检查云服务商的安全组/网络ACL,确保入方向已放行对应端口。

注意事项

  • 修改防火墙规则前建议备份当前配置。
  • 若使用Docker容器,需同时检查Docker网络规则与主机防火墙关系。
  • 部分云厂商的弹性公网IP独立于OS防火墙,需在控制台同步配置白名单。
目录结构
全文
企业微信 企业微信
微信公众号 微信公众号
服务热线: 400-790-1688
电子邮箱: 3310008520@qq.com