如何简便阻止引荐垃圾流量 替代htaccess逐条拦截的高效方案
引荐垃圾流量高效拦截方案
由于你使用带root权限的VPS,可直接从Web服务、系统层入手,无需依赖.htaccess逐条添加规则,推荐以下优先级从高到低的方案:
直接拦截恶意请求目标资源
你当前所有攻击都针对
/tick.gif资源,如果该资源并非站点正常使用的资源,直接在Web服务器层面全局拦截所有对该资源的访问,无需匹配引荐域名,一步拦截所有同类攻击:- Apache配置(添加到站点全局配置中):
<Location "/tick.gif"> Require all denied </Location>- Nginx配置(添加到对应server块中):
location = /tick.gif { return 444; }其中444是Nginx专属状态码,会直接关闭连接不返回响应,比403更节省服务器资源。
优化引荐黑名单匹配效率
如果需要保留
/tick.gif的正常访问,可将原来.htaccess逐条匹配的规则替换为服务器层面的批量映射规则,匹配效率从O(n)提升到O(1),不会随黑名单规模增长降低性能:- Apache环境使用
RewriteMap,将恶意引荐域名存放在独立的文本文件中,主配置引用映射规则即可,更新黑名单不需要修改主配置。 - Nginx环境使用
map指令,将恶意域名列表存放在独立conf文件,匹配仅需要一次查询,即使黑名单过万也不会明显影响性能。
- Apache环境使用
系统层自动封禁攻击IP
安装Fail2Ban工具,自定义规则匹配Web服务访问日志,将短时间内多次请求
/tick.gif的IP直接在iptables/nftables层面封禁2-24小时,恶意请求在TCP层就被拦截,根本到不了Web服务,能大幅降低服务器资源消耗。给目标资源加访问校验
如果你确实需要正常使用
/tick.gif资源,可以给资源请求加自定义参数校验,只有携带合法生成参数的请求才能正常访问,无参数的恶意扫描请求直接拦截,从根源上杜绝这类垃圾引荐流量的攻击。
内容的提问来源于stack exchange,提问作者wordpress_queries
相关产品推荐
相关产品推荐

