Debian/Ubuntu 防火墙检测与端口放行操作日志

社区话题 Linux/macOS 与自动化运维 Debian/Ubuntu 防火墙检测与端口放行操作日志

  • 该话题为空。
正在查看 0 条回复
  • 作者
    帖子
    • #1264

      追光
      管理员

      系统环境:Debian/Ubuntu

      一、防火墙状态检测

      1. 检查底层防火墙规则

      🔹 iptables 规则

      $ sudo iptables -L -n -v

      输出摘要:
      INPUT 链已存在部分放行规则(如 80、443、55680-55681)
      默认策略为 ACCEPT,但显式规则优先

      🔹 nftables 规则(系统实际使用)

      $ sudo nft list ruleset

      关键发现:
      系统使用 nftables 作为防火墙后端(由 iptables-nft 管理)
      已存在规则:
      nft

      tcp dport {80, 443, 55680, 55681} accept
      udp dport 443 accept

      ✅ 结论:防火墙已启用,使用 nftables,需通过 nft 命令管理规则。


      二、需求分析

      需放行以下端口以支持 FRPS/NPS 服务:

      协议 | 端口范围 | 用途说明 |

      | TCP | 80, 443 | HTTP/HTTPS 代理 |
      | UDP | 80, 443 | UDP 打洞/QUIC 支持 |
      | TCP | 5500055999 | FRPS/NPS 动态端口池 |
      | UDP | 5500055999 | FRPS/NPS UDP 转发 |

      💡 注意:端口范围较大(10000 个端口),确认为业务必需。


      三、执行端口放行操作

      使用 nftables 批量添加规则(推荐)

      1. 放行 TCP 端口

      sudo nft add rule ip filter INPUT tcp dport {80, 443, 55000-55999} accept

      2. 放行 UDP 端口

      sudo nft add rule ip filter INPUT udp dport {80, 443, 55000-55999} accept

      ✅ 操作说明:
      单条命令覆盖离散端口 + 连续范围
      规则立即生效,无需重启服务
      与现有规则兼容,无冲突


      四、验证规则生效

      1. 检查 nftables 规则

      $ sudo nft list chain ip filter INPUT | grep -E \"80|443|55000\"

      输出:

      tcp dport { 80, 443, 55000-55999 } accept
      udp dport { 80, 443, 55000-55999 } accept

      2. 检查 iptables 映射(兼容层)

      $ sudo iptables -L INPUT -n -v | grep -E \"80|443|55000\"

      输出:规则已同步至 iptables 兼容层


      五、持久化配置(防止重启丢失)

      1. 保存当前规则

      sudo nft list ruleset  /etc/nftables.conf

      2. 启用 nftables 服务

      sudo systemctl enable nftables
      sudo systemctl start nftables

      🔒 安全提示:
      若业务允许,建议限制源 IP(如 ip saddr 1.2.3.4)
      定期审计防火墙规则,避免过度开放


      六、附录:常用防火墙管理命令

      场景 | 命令 |

      | 查看所有规则 | sudo nft list ruleset |
      | 删除某条规则 | sudo nft delete rule ip filter INPUT handle |
      | 重置所有规则 | sudo nft flush ruleset |
      | 临时关闭防火墙 | sudo systemctl stop nftables(不推荐生产环境)

正在查看 0 条回复
  • 在下方一键注册,登录后就可以回复啦。