Ban Ahrefsbot

垃圾蜘蛛AhrefsBot封禁方法 附AhrefsBot爬虫IP列表

前面的文章“宝塔和LNMP环境下Nginx图片防盗链的设置方法”说了,奶爸的一个站流量用超了,最开始以为是图片被盗链导致了。分析了下日志才发现,是AhrefsBot这个垃圾机器人在疯狂的爬站,不到一天时间爬取了6000多次,我X。果断研究如何封禁AhrefsBot。

AhrefsBot是什么

AhrefsBot是一个国外的搜索引擎蜘蛛。不过对你的网站来说除了浪费资源外,没有任何好处。

简单说,AhrefsBot是一个营销网站的爬取蜘蛛,负责分析你网站的链接信息,这个工具对于国内用户来说,有luan用。

详细的介绍你可以查看他们官网的英文解释。https://ahrefs.com/robot

AhrefsBot的IP段

奶爸通过对一天的网站日志进行分析,你们猜猜一共有多少个不同的AhrefsBot蜘蛛ip来抓取网站数据?

居然有561个IP,而且只是不到一天的日志记录。

官方公布的AhrefsBot爬虫IP段如下:

54.36.148.0/24
54.36.149.0/24
54.36.150.0/24

195.154.122.0/24
195.154.123.0/24
195.154.126.0/24
195.154.127.0/24

好了,既然这样变态,下面就开始来想办法封禁AhrefsBot的抓取吧。

直接封AhrefsBot ip段

被AhrefsBot蜘蛛爬取的站服务器用的阿里云,阿里云后台有安全组可以使用,所以直接屏蔽AhrefsBot的IP段,是最简单粗暴,效果立竿见影的方法。

进入阿里云后台,进入你的服务器列表,点击服务器的安全组,配置安全组规则。

禁止AhrefsBot蜘蛛按照上图的方法配置,把下面这些ip段全部添加进去就行了。(奶爸是直接把54.36.*.*和195.154.*.*的IP都封了)

54.36.148.0/24
54.36.149.0/24
54.36.150.0/24

195.154.122.0/24
195.154.123.0/24
195.154.126.0/24
195.154.127.0/24

使用robots.txt封禁

通常来说,只要是遵循robots规则的蜘蛛或者爬虫,都可以使用robots.txt来禁止它爬取。AhrefsBot官方也说遵守这个规则,不过实际上是如果你不是一开始就添加了这个规则,你都不知道它蜘蛛什么时候才会重新爬取你的robots.txt文件来修改抓取规则。

所以暴力点,直接封IP比较快。如果要添加,规则如下:

User-agent: AhrefsBot
Disallow: /

使用apache或者nginx来封禁

这个方法参考之前的文章:WordPress网站阻止特定机器人和爬虫访问的方法

如果使用的nginx的话,也可以单独添加下面这串代码到你虚拟机配置文件来实现屏蔽AhrefsBot

if ($http_user_agent ~* AhrefsBot) {
   return 403;
}

 

4.2/5 - (5 votes)
滚动至顶部