Linux:firewalld

firewalld作为CentOS/RHEL 7+默认的动态防火墙管理工具,以其灵活的区域(zone)管理富规则(rich rule)功能,成为替代传统iptables的优选方案。本文将深入解析firewalld的核心配置与实战技巧,助你轻松掌握这一高效防火墙工具!


一、firewalld的核心:区域(Zone)管理

1. 默认区域的作用

  • 默认区域决定了未明确匹配其他区域规则的流量处理方式。

  • 查看与设置默认区域:

    firewall-cmd --get-default-zone          # 查看当前默认区域
    firewall-cmd --set-default-zone=home     # 临时设置默认区域为home
    firewall-cmd --permanent --set-default-zone=public  # 永久生效

2. 关联源IP或网卡到区域

  • 关联源IP网段

    firewall-cmd --permanent --add-source=10.0.0.0/24 --zone=home  # 永久添加
    firewall-cmd --reload  # 重载配置生效
  • 关联网卡

    firewall-cmd --permanent --add-interface=ens33 --zone=public
    firewall-cmd --reload

3. 查看与验证关联关系

firewall-cmd --list-all --zone=home        # 列出home区域所有配置
firewall-cmd --query-source=10.0.0.0/24 --zone=home  # 检查源IP是否关联

二、基本规则配置:服务与端口管理

1. 允许HTTP服务

firewall-cmd --permanent --add-service=http --zone=public
firewall-cmd --reload

2. 开放指定端口

firewall-cmd --permanent --add-port=8080/tcp  # 开放TCP 8080端口
firewall-cmd --reload

3. 移除规则

firewall-cmd --permanent --remove-service=ftp  # 移除FTP服务
firewall-cmd --permanent --remove-port=21/tcp  # 关闭21端口
firewall-cmd --reload

三、高级策略:富规则(Rich Rule)实战

富规则支持精细化的流量控制,如基于源IP、协议和端口的策略。

1. 允许特定网段访问HTTP,拒绝FTP

firewall-cmd --permanent --add-rich-rule='rule family=ipv4 source address=10.0.0.0/24 service name=http accept'
firewall-cmd --permanent --add-rich-rule='rule family=ipv4 source address=10.0.0.0/24 service name=ftp reject'
firewall-cmd --reload

2. 拒绝ICMP(Ping请求)

firewall-cmd --permanent --add-rich-rule='rule family=ipv4 source address=10.0.0.0/24 protocol value=icmp reject'
firewall-cmd --reload

四、网络地址转换(NAT)配置

1. SNAT:内网访问外网(IP伪装)

firewall-cmd --permanent --add-masquerade  # 开启IP伪装(SNAT)
firewall-cmd --reload

2. DNAT:外网访问内网服务(端口转发)

# 将外网8000端口转发到内网172.16.0.100的80端口
firewall-cmd --permanent --add-forward-port=port=8000:proto=tcp:toport=80:toaddr=172.16.0.100
firewall-cmd --reload

五、特殊流量处理

1. 允许OSPF动态路由协议

firewall-cmd --permanent --add-rich-rule='rule protocol value=ospf accept'
firewall-cmd --reload

六、总结与最佳实践

  • 规则优先级:富规则优先于基本规则,精确匹配优先于范围匹配。

  • 默认区域风险:避免在默认区域开放高风险服务。

  • 持久化配置:始终使用--permanent保存规则,并通过--reload生效。

  • 验证与测试:使用curltelnet等工具测试规则是否生效。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值