如何在 Rocky Linux 9 中使用 firewalld 配置端口范围的规则?

问题浏览数Icon
27
问题创建时间Icon
2025-03-27 17:01:00
作者头像
frostnova00

在 Rocky Linux 9 中,使用 firewall-cmd 配置端口范围规则的命令为:

firewall-cmd --permanent --add-port=起始端口-结束端口/协议
firewall-cmd --reload

例如允许 TCP 端口 5000-6000:firewall-cmd --permanent --add-port=5000-6000/tcp


延伸知识点:firewalld 富规则(Rich Rules) 富规则允许更精细的流量控制,例如限制源IP或接口。结构为:

rule [family="ipv4/ipv6"]
  [source address="IP/掩码"]
  [port port="端口范围" protocol="协议"]
  [accept/reject/log]

示例:仅允许 192.168.1.0/24 访问 UDP 5000-5010:

firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.0/24" port port="5000-5010" protocol="udp" accept'

使用 --list-rich-rules 查看规则,完成后需 --reload 生效。

更多回答

作者头像
firehua33

在Rocky Linux 9里用firewalld开端口范围很简单!先用命令 sudo firewall-cmd --permanent --add-port=起始端口-结束端口/tcp(比如开5000-6000就写5000-6000/tcp),然后重载防火墙 sudo firewall-cmd --reload,最后用 firewall-cmd --list-ports 检查下。记得加--permanent参数才能永久生效嗷!

作者头像
qingjian88
  1. 确认firewalld运行状态

    sudo systemctl status firewalld

    若未运行,启用并启动服务:

    sudo systemctl enable --now firewalld
  2. 添加端口范围规则(如5000-6000/TCP)

    sudo firewall-cmd --permanent --add-port=5000-6000/tcp

    协议可按需替换为udp

  3. 重载防火墙生效配置

    sudo firewall-cmd --reload
  4. 验证规则

    sudo firewall-cmd --list-ports  # 查看端口范围
    sudo firewall-cmd --list-all    # 检查全部规则

删除规则:将--add-port改为--remove-port并重复步骤2-4。

作者头像
mistfeng66

在Rocky Linux 9中通过firewalld配置端口范围规则时,建议遵循以下步骤:

  1. 确认firewalld状态

    sudo systemctl status firewalld  # 确保服务已启用并运行

    若未启用,执行:

    sudo systemctl enable --now firewalld
  2. 添加端口范围规则

    sudo firewall-cmd --permanent --add-port=1000-2000/tcp  # 示例端口范围

    关键参数说明

    • --permanent:使规则持久化
    • 1000-2000:起始和结束端口
    • /tcp:协议类型(可替换为udp)
  3. 重载配置生效

    sudo firewall-cmd --reload
  4. 验证规则

    sudo firewall-cmd --list-ports  # 查看已开放端口

    sudo firewall-cmd --list-all  # 查看完整配置

注意事项

  • 若需临时规则(重启失效),移除--permanent参数
  • 删除规则时使用--remove-port=端口范围/协议
  • 开放端口范围需明确业务必要性,避免安全风险
  • 当存在复杂规则时,建议通过--zone=区域参数指定应用区域