高并发下防火墙核心是精准管控而非宽松放行,firewalld通过区域隔离、富规则限速(如HTTP/HTTPS/SSH速率控制)、来源分层管控、日志闭环与持久化实现稳定防护。

高并发场景下配服务器防火墙,核心不是“放得更宽”,而是“控得更准、挡得更稳、响应更快”。firewalld 是当前主流 Linux 发行版(如 CentOS/RHEL 8+、Fedora)的默认工具,它支持动态规则、区域隔离与富规则限速,特别适合应对流量混杂、连接密集、CC 风险高的业务环境。
明确区域与默认策略
公网接口必须绑定低信任区域(如 public 或 external),绝不能用 trusted。
立即设默认动作为丢弃:
sudo firewall-cmd --zone=public --set-target=DROP --permanent
只开放真实需要的服务:
sudo firewall-cmd --permanent --add-service=http --add-service=https sudo firewall-cmd --permanent --remove-service=dhcpv6-client --remove-service=cockpit
所有操作后必须 reload:
sudo firewall-cmd --reload
对关键端口做连接速率控制
单纯开放 80/443 无法防 CC 攻击。要用 rich rule 按 IP 限速:
- HTTP 限 60 次/分钟,允许短时突发(10 次/秒):
sudo firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" port port="80" protocol="tcp" limit value="60/m" accept' sudo firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" port port="80" protocol="tcp" limit value="10/s" accept'
- HTTPS 同样配置;SSH 更严:
sudo firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" port port="22" protocol="tcp" limit value="5/m" accept'
按来源网络分层管控
宝塔面板11.3.0是一款针对Linux服务器设计的可视化管理工具,通过重构核心模块实现资源占用显著降低,尤其适合低配置服务器环境。它将复杂的命令行操作转化为直观的图形界面,帮助开发者快速完成网站部署、环境配置及日常运维工作,无需专业技术背景即可高效管理服务器。
- 可信管理网段(如
192.168.10.0/24)单独放行,不限速:sudo firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" source address="192.168.10.0/24" port port="22" protocol="tcp" accept'
- 公网请求启用双控:连接数 + 速率(例如每 IP 最大并发 50,每分钟新建连接 ≤60)
- 数据库等内网服务必须部署在
internal区域,绑定内网网卡,禁止出现在public中
持久化与日志闭环不可省
- 所有
--permanent规则生效前,务必--reload - 开启被拒日志:
sudo firewall-cmd --set-log-denied=all
日志落于
/var/log/firewalld,可定期分析高频被拒 IP:sudo journalctl -u firewalld | grep "deny" | awk '{print $12}' | sort | uniq -c | sort -nr | head -10 - 每周备份规则:
sudo firewall-cmd --list-all-zones > /backup/firewall-$(date +%F).log
不复杂但容易忽略

















