宝塔面板免费版+NGINX防采集实战:三步打造网站安全防线
更新日期:2025年4月2日
一、为什么你的网站需要防采集?
最近帮站长朋友处理采集问题,发现某企业站每天被爬取3万多次,导致服务器频繁宕机。采集器不仅盗取内容,更会拖垮服务器性能——这正是咱们今天要解决的痛点。
二、宝塔免费武器库准备
2.1 安装Nginx防火墙插件
面板 → 软件商店 → 搜索「免费Nginx防火墙」→ 安装(注意需卸载付费版)
2.2 核心功能启用
- 开启CC防御:周期1秒/频率15次/封锁1小时(个人博客推荐)
- 激活User-Agent过滤:拦截Scrapy、Python-urllib等30+采集特征
三、三层防御体系构建
3.1 网络层拦截(NGINX配置)
# 在/www/server/nginx/conf下新建agent_deny.conf
if ($http_user_agent ~* "Scrapy|Curl|HttpClient|Python|MJ12bot") {
return 444;
}
# 网站配置文件中添加
include agent_deny.conf;
3.2 应用层防护(防火墙设置)
重点配置:全局设置 → CC防御 → 增强模式开启人机验证
3.3 数据层过滤(特色方案)
- 在/wp-content/uploads/目录添加伪静态规则,阻止.php执行
- 设置IP黑名单自动同步(每天18点导出攻击日志自动封禁)
四、高级防护技巧
场景 | 解决方案 |
---|---|
遭遇代理IP轮询 | 开启「禁止海外访问」+「CDN联动」 |
绕过UA检测 | 添加动态token验证(宝塔计划任务+Redis实现) |
五、避坑指南
- ⚠️ 禁止封禁空UA请求(会误伤部分搜索引擎)
- ✅ 每周分析/www/wwwlogs/站点名.error.log优化规则
- 🔥 重要!修改配置前务必创建服务器快照
通过这套组合拳,某小说站成功将采集请求降低92%。记住:防采集是持续对抗的过程,建议每季度更新一次拦截规则库。如果遇到棘手问题,欢迎在评论区留言交流!
没有回复内容