服务器怎么解决在Nginx环境下拒绝wget在线扒站

wget在线扒站现在比较多,源码也有很多,轻轻松松就可以把一个网站给扒了下来,那有没有什么办法来阻止扒站呢,Nginx环境下只需要写入规则就好了。

1、User-Agent来阻止spider抓取

把以下内容添加到站点的conf文件中,之后重启nginx或者重启服务器即可。

#### 拒绝wget在线扒站 ####
if ($http_user_agent ~* (Wget|ab) ) {
   return 403;
}
 
if ($http_user_agent ~* LWP::Simple|BBBike|wget) {
            return 403;
}
##

2、利用防火墙来阻止过多的链接达到阻止扒站的目的

以Linux下的iptables为例,如下配置将限制同一个IP一分钟内最多建立15个连接,超出的连接会被iptables丢弃,不会到达nginx,具体设置多少根据自己的情况灵活运用,如果使用的是宝塔面板,也可以在网站流量处限制。

/sbin/iptables -A INPUT -p tcp --dport 80 -i eth0 -m state --state NEW -m recent --set
/sbin/iptables -A INPUT -p tcp --dport 80 -i eth0 -m state --state NEW -m recent --update --seconds 60  --hitcount 15 -j DROP
service iptables save

Avatar photo

请叫我行长

人送外号行长,一个很爱折腾的医学生,总喜欢鼓捣东西,很喜欢数码产品和折腾服务器,然后一直在找一个志同道合又爱打游戏、爱折腾的御姐。你懂的!

相关推荐

暂无评论

发表评论