DDoS Deflate高级配置教程:白名单、端口限制与带宽控制终极指南 🛡️
【免费下载链接】ddos-deflateFork of DDoS Deflate with fixes, improvements and new features.项目地址: https://gitcode.com/gh_mirrors/dd/ddos-deflate
DDoS Deflate是一款强大的DDoS防御工具,专门为服务器管理员提供简单高效的攻击防护方案。本文将深入探讨DDoS Deflate的高级配置技巧,帮助您充分发挥其防护能力,保护服务器免受恶意流量攻击。
为什么需要DDoS Deflate高级配置? 🔧
默认安装的DDoS Deflate虽然能提供基本的防护功能,但通过高级配置可以显著提升防护效果和灵活性。合理的白名单管理、精确的端口限制和智能带宽控制是构建坚固防御体系的关键。
核心配置文件解析
DDoS Deflate的主要配置文件位于config/ddos.conf,这个文件控制着工具的所有行为。让我们深入了解最重要的配置选项:
白名单配置:保护合法流量 ⚠️
白名单是DDoS防御中最重要的功能之一,确保合法用户和服务的正常访问不受影响。
IP地址白名单配置
编辑config/ignore.ip.list文件,您可以添加以下类型的IP地址:
# 单个IP地址 192.168.1.100 # IP地址范围 192.168.1.50-192.168.1.100 # CIDR网段 10.0.0.0/24 # IPv6地址 2001:db8::1默认情况下,配置文件已经包含了常见的私有网络地址段:
127.0.0.0/8- 本地回环地址10.0.0.0/8- A类私有地址172.16.0.0/12- B类私有地址192.168.0.0/16- C类私有地址
主机名白名单配置
通过config/ignore.host.list文件,您可以基于主机名设置白名单:
# 搜索引擎爬虫 googlebot.com bingbot.com # 监控服务 uptimerobot.com pingdom.com # CDN服务节点 cloudflare.com端口连接限制:精准防御策略 🎯
DDoS Deflate支持基于端口的连接限制,这对于保护特定服务特别有用。
启用端口限制功能
在config/ddos.conf中设置:
# 启用端口限制功能 ENABLE_PORTS=true # 设置端口连接规则 PORT_CONNECTIONS="80:150:600 443:150:600 22:50:300 3306:30:300"端口规则格式说明
格式为:端口:最大连接数:封锁时间(秒)
- 80:150:600- HTTP服务,最多150个连接,封锁600秒
- 443:150:600- HTTPS服务,最多150个连接,封锁600秒
- 22:50:300- SSH服务,最多50个连接,封锁300秒
- 3306:30:300- MySQL服务,最多30个连接,封锁300秒
端口范围支持
您还可以指定端口范围:
# 端口范围示例 PORT_CONNECTIONS="20-21:100:600 8000-9000:200:600"带宽控制:智能流量管理 📊
DDoS Deflate的带宽控制功能可以有效限制恶意流量对带宽的占用。
启用带宽控制
在config/ddos.conf中配置:
# 启用带宽控制 BANDWIDTH_CONTROL=true # 带宽限制阈值(触发限速的值) BANDWIDTH_CONTROL_LIMIT="1896kbit" # 限速后的带宽值 BANDWIDTH_DROP_RATE="512kbit" # 限速持续时间(秒) BANDWIDTH_DROP_PERIOD=600 # 仅统计入站流量 BANDWIDTH_ONLY_INCOMING=true带宽控制参数详解
- BANDWIDTH_CONTROL_LIMIT- 当单个IP的带宽使用超过此值时触发限速
- BANDWIDTH_DROP_RATE- 触发限速后的带宽限制值
- BANDWIDTH_DROP_PERIOD- 限速持续时间
- BANDWIDTH_ONLY_INCOMING- 仅统计入站流量(推荐开启)
带宽单位说明
- kbit- 千比特每秒(如:512kbit = 64KB/s)
- mbit- 兆比特每秒(如:10mbit = 1.25MB/s)
连接状态过滤:精确识别攻击 🔍
通过连接状态过滤,您可以更精确地识别恶意连接。
连接状态配置
# 默认连接状态(推荐) CONN_STATES="connected" # 详细连接状态(更严格) CONN_STATES="established:syn-sent:syn-recv:fin-wait-1:fin-wait-2"常用连接状态说明
- established- 已建立的连接
- syn-sent- 发送SYN包等待响应
- syn-recv- 收到SYN包等待确认
- fin-wait-1- 等待关闭连接
CloudFlare支持配置 ☁️
如果您的网站使用CloudFlare CDN,需要启用特殊配置以获取真实用户IP。
启用CloudFlare支持
# 启用CloudFlare支持 ENABLE_CLOUDFLARE=true此功能通过分析CloudFlare的CF-Connecting-IP头部来获取真实用户IP地址。
防火墙集成配置 🔥
DDoS Deflate支持多种防火墙,自动检测或手动指定:
# 自动检测防火墙 FIREWALL="auto" # 或手动指定 # FIREWALL="iptables" # Linux标准防火墙 # FIREWALL="apf" # Advanced Policy Firewall # FIREWALL="csf" # ConfigServer Security & Firewall # FIREWALL="ipfw" # FreeBSD防火墙邮件通知配置 📧
设置邮件通知,及时了解攻击情况:
# 接收通知的邮箱 EMAIL_TO="admin@example.com" # 封锁时间(秒) BAN_PERIOD=600运行模式选择 ⚙️
DDoS Deflate支持两种运行模式:
守护进程模式(推荐)
# 守护进程检查频率(秒) DAEMON_FREQ=5守护进程模式每5秒检查一次连接,响应速度最快。
Cron任务模式
# Cron任务频率(分钟,最大59) FREQ=1Cron模式每分钟检查一次,适用于资源受限的环境。
实战配置示例 🚀
企业级防护配置
# 基础连接限制 NO_OF_CONNECTIONS=200 # 仅监控入站连接 ONLY_INCOMING=true # 端口限制规则 ENABLE_PORTS=true PORT_CONNECTIONS="80:200:600 443:200:600 22:30:300 3306:20:300" # 带宽控制 BANDWIDTH_CONTROL=true BANDWIDTH_CONTROL_LIMIT="10mbit" BANDWIDTH_DROP_RATE="1mbit" BANDWIDTH_DROP_PERIOD=900 # 邮件通知 EMAIL_TO="security@company.com" BAN_PERIOD=1800高防服务器配置
# 宽松连接限制(高防服务器) NO_OF_CONNECTIONS=500 # 详细连接状态监控 CONN_STATES="established:syn-sent:syn-recv" # 端口限制 ENABLE_PORTS=true PORT_CONNECTIONS="80:500:300 443:500:300" # 快速响应守护进程 DAEMON_FREQ=3 # 长期封锁攻击IP BAN_PERIOD=3600配置验证与测试 ✅
验证配置文件语法
# 检查配置文件语法 bash -n /etc/ddos/ddos.conf # 测试配置加载 source /etc/ddos/ddos.conf echo "配置加载成功"测试白名单功能
# 查看当前白名单 ddos --ignore-list # 测试特定IP是否在白名单中 grep "192.168.1.100" /etc/ddos/ignore.ip.list测试端口限制
# 查看端口规则 ddos --ports # 模拟连接测试 netstat -an | grep :80 | wc -l常见问题解决 🛠️
问题1:白名单不生效
解决方案:检查ignore.ip.list文件权限,确保DDoS Deflate有读取权限:
chmod 644 /etc/ddos/ignore.ip.list问题2:带宽控制无效
解决方案:确保系统安装了iftop和tc工具:
apt-get install iftop iproute2问题3:CloudFlare支持不工作
解决方案:确保服务器可以访问CloudFlare IP,并检查tcpdump权限:
setcap cap_net_raw,cap_net_admin=eip /usr/sbin/tcpdump性能优化建议 ⚡
- 合理设置检查频率:守护进程模式建议5-10秒,Cron模式建议1分钟
- 优化连接数阈值:根据服务器负载调整
NO_OF_CONNECTIONS - 使用端口限制:为关键服务设置独立的连接限制
- 启用带宽控制:防止带宽耗尽攻击
- 定期审查白名单:确保白名单保持最新
安全最佳实践 🔒
- 最小化白名单:只添加必要的IP和主机名
- 定期更新规则:根据业务变化调整配置
- 监控日志文件:定期检查
/var/log/ddos.log - 备份配置文件:修改前备份原始配置
- 测试配置变更:在生产环境前充分测试
总结 📝
通过合理配置DDoS Deflate的白名单、端口限制和带宽控制功能,您可以构建一个多层次、智能化的DDoS防护体系。记住,没有一种配置适合所有场景,您需要根据实际的业务需求和服务器环境进行调整。
关键配置文件位置:
- 主配置文件:config/ddos.conf
- IP白名单:config/ignore.ip.list
- 主机名白名单:config/ignore.host.list
- 主脚本文件:src/ddos.sh
定期审查和优化这些配置,确保您的服务器在面对DDoS攻击时能够保持稳定运行。记住,最好的防御是主动监控和及时响应! 🛡️
【免费下载链接】ddos-deflateFork of DDoS Deflate with fixes, improvements and new features.项目地址: https://gitcode.com/gh_mirrors/dd/ddos-deflate
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考