如何配置宝塔面板的CC防御规则的黑白名单的动态规则的IP黑白名单规则?
美国、香港服务器
如何配置宝塔面板的CC防御规则的黑白名单的动态规则的IP黑白名单规则?
02-07 来源:
配置宝塔面板 CC 防御动态 IP 黑白名单,核心是基于请求频率、攻击行为实现 IP 自动封禁 / 释放,与静态 IP 名单协同并联动日志闭环,形成 “检测 - 封禁 - 恢复 - 优化” 的自动化防御,以下是面板可视化 + 命令行全流程方案。
一、动态 IP 规则核心逻辑与优先级
优先级:静态 IP 白名单 > 静态 IP 黑名单 > 动态 IP 白名单 > 动态 IP 黑名单 > CC 动态频率规则,静态名单优先,动态规则仅对非静态名单 IP 生效。
动态触发机制:请求频率超限、异常请求特征(如路径扫描、参数注入)等触发临时封禁,过期自动释放,避免规则冗余。
CDN 适配:安全 → Web 防火墙 → 设置,开启 “获取真实 IP”,确保封禁源 IP 而非 CDN 节点 IP。
二、面板可视化动态 IP 规则配置(快速部署)
1. 全局 CC 动态 IP 防御基础配置
路径:安全 → Web 防火墙 → CC 防御 → 全局配置。
关键参数设置:
表格
参数 说明 推荐值(通用)
周期 统计请求的时间窗口 60 秒
频率 窗口内允许的最大请求数 50 次
封锁时长 触发后动态封禁时间 3600 秒(1 小时)
自动模式 开启后根据流量自动调整阈值 开启
增强模式 开启后严格检测请求特征 高风险站点开启
四层防御 基于 TCP 层限制并发连接 开启
操作:设置参数后点击 “全局应用”,对所有站点生效;如需个性化,在 “站点配置” 单独调整。
2. 站点级动态 IP 规则定制
路径:网站 → 目标站点 → 设置 → CC 防御。
配置步骤:
关闭 “继承全局配置”,自定义周期、频率、封锁时长,适配站点业务(如 API 站调高频率,管理后台调低)。
开启 “自动拉黑攻击 IP”,将触发 CC 防御的 IP 自动加入动态黑名单。
配置 “IP 白名单”,添加信任 IP(如公司办公 IP),避免误封。
示例:管理后台设置为 “60 秒 30 次请求,封锁 3600 秒”,API 站点设置为 “60 秒 100 次请求,封锁 1800 秒”。
3. 动态 IP 规则与日志联动(精准防御)
路径:安全 → 攻击日志 → CC 防御,筛选攻击 IP 记录。
操作:点击 “加入动态黑名单”,设置过期时间(如 1 小时),实现 IP 动态封禁。
计划任务自动清理:计划任务 → 新增 Shell 脚本,定期清理过期动态 IP 规则:
bash
运行
# 清理24小时前的过期动态黑名单IP
bt firewall clean blacklist --expire=86400
三、命令行底层动态 IP 规则配置(批量 / 自动化)
1. 编辑 WAF 动态 IP 配置(config.lua)
打开配置文件:
bash
运行
vi /www/server/panel/vhost/wafconf/config.lua
配置动态 IP 防御参数:
lua
CCDeny = "on", -- 开启CC动态防御
CCrate = "50/60", -- 60秒50次请求触发
CCexpire = 3600, -- 动态封禁3600秒
autoBlackIP = "on", -- 攻击IP自动加入动态黑名单
ipWhitelist = {"127.0.0.1", "192.168.1.0/24"}, -- 静态IP白名单
保存后重启服务:
bash
运行
nginx -s reload && bt reload firewall
2. 动态 IP 规则批量管理脚本
bash
运行
#!/bin/bash
# 动态IP规则批量配置与清理脚本
# 1. 设置全局CC动态防御参数
bt waf set cc --cycle=60 --rate=50 --expire=3600 --auto=on
# 2. 为站点xxx.com配置个性化动态规则
bt site set cc --domain=xxx.com --cycle=30 --rate=30 --expire=1800
# 3. 清理24小时前的过期动态黑名单
bt firewall clean blacklist --expire=86400
# 4. 重载规则生效
bt reload firewall && nginx -s reload
3. 联动 Fail2ban 增强动态 IP 防御
安装 Fail2ban:软件商店 → 搜索 “Fail2ban” → 安装。
配置 Fail2ban 联动 WAF 日志:
路径:软件 → Fail2ban → 设置 → 新建规则,日志路径填 /www/wwwlogs/waf/attack.log,匹配攻击 IP,设置触发条件(如 10 分钟内 10 次攻击),封禁时长 3600 秒。
重启 Fail2ban:systemctl restart fail2ban。
四、动态 IP 规则有效性验证与故障排除
验证方法
面板查看:安全 → 防火墙 → 动态黑名单,确认触发的 IP 已被封禁且有过期时间。
命令行验证:
bash
运行
tail -f /www/wwwlogs/waf/attack.log
bt firewall list blacklist --dynamic
fail2ban-client status nginx
模拟测试:用非白名单 IP 高频访问,检查是否触发动态封禁,日志是否记录攻击行为。
常见故障排除
动态封禁不生效:检查 CC 防御是否开启,全局配置是否 “全局应用”,CDN 真实 IP 获取是否开启。
误封正常用户:调大频率阈值,将误拦 IP 加入静态 / 动态白名单,开启 “爬虫白名单”。
规则冲突:检查静态与动态规则优先级,确保静态白名单未被动态规则覆盖。
三二互联专业提供香港VPS,美国VPS主机,香港云服务器租用等业务香港美国到大陆CN2 GIA速度最快