如何防止机器人猜测我网站上的链接

如何防止机器人猜测我网站上的链接

我最近安装的 logwatch 报告显示了以下内容:

--------------------- httpd Begin ------------------------
0.78 MB transferred in 5864 responses  (1xx 0, 2xx 4900, 3xx 0, 4xx 964, 5xx 0)
160 Images (0.16 MB),
857 Content pages (0.62 MB),
4847 Other (0.00 MB)

Requests with error response codes
404 Not Found
  /%E2%80%98planeat%E2%80%99-film-explores-l ... greenfudge-org/: 1 Time(s)
  /10-foods-to-add-to-the-brain-diet-to-help ... -function/feed/: 1 Time(s)
  /10-ways-to-reboot-your-body-with-healthy- ... s-and-exercise/: 1 Time(s)
  /bachmann-holds-her-ground-against-raising ... com-blogs/feed/: 1 Time(s)
  /behind-conan-the-barbarians-diet/: 1 Time(s)
  /tag/dietitian/: 1 Time(s)
  /tag/diets/page/10/: 1 Time(s)
  /tag/directory-products/feed/: 1 Time(s)
  /wp-content/uploads/2011/06/1309268736-49.jpg: 1 Time(s)
  /wp-content/uploads/2011/06/1309271430-30.jpg: 1 Time(s)
  /wp-content/uploads/2011/06/1309339847-35.jpg: 1 Time(s)

我的笔记在这里:确实有很多像上面这样的请求,为了清楚起见,我只粘贴了几个。

  A total of 12 ROBOTS were logged
  Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html) 2 Time(s)
  Mozilla/5.0 (compatible; YandexBot/3.0; +http://yandex.com/bots) 5 Time(s)
  Twitterbot/1.0 1 Time(s)
  Mozilla/5.0 (compatible; AhrefsBot/2.0; +http://ahrefs.com/robot/) 4 Time(s)
  Sosospider+(+http://help.soso.com/webspider.htm) 3 Time(s)
  msnbot/2.0b (+http://search.msn.com/msnbot.htm)._ 1 Time(s)
  Mozilla/5.0 (compatible; MJ12bot/v1.4.2; http://www.majestic12.co.uk/bot.php?+) 1    Time(s)
  msnbot-media/1.1 (+http://search.msn.com/msnbot.htm) 77 Time(s)
  Mozilla/5.0 (compatible; Ezooms/1.0; [email protected]) 1 Time(s)
  Mozilla/5.0 (compatible; bingbot/2.0; +http://www.bing.com/bingbot.htm) 17 Time(s)
  Baiduspider+(+http://www.baidu.com/search/spider.htm) 11 Time(s)
  Mozilla/5.0 (compatible; Butterfly/1.0; +http://labs.topsy.com/butterfly/)    Gecko/2009032608 Firefox/3.0.8 1 Time(s)
  ---------------------- httpd End -------------------------

所以,我认为这是一种机器人(可能是上面列出的机器人之一),所以你能告诉我如何防止他们猜测链接以期找到内容吗?

编辑:因为我有一台 VPS 服务器,上面有很多域名。你能告诉我如何知道哪个域名发生了特定的 404 错误吗?例如:/tag/dietitian/

答案1

实际上,您无法阻止普通用户猜测链接。正确保护您的内容,这将不会成为问题。

模糊的链接并不是隐藏事物的安全方法。

您可以确保您有一个正确配置的 robots.txt - 这将阻止大多数合法机器人。

答案2

一种方法是使用失败2ban并根据您的需要进行配置。简而言之:除了其他功能外,fail2ban 还可以跟踪您的 Apache 访问日志,在 X 数量的 Y 类匹配之后,可以通过阻止客户端 IP XX 分钟来对访问客户端施加 Z 分钟的惩罚。

通常足以吓跑机器人,但要小心,如果您不够小心,这很可能会阻止合法用户。

答案3

搜索引擎爬虫不会猜测链接 - 它们只会跟随链接,除非受到 nofollow 或 robots.txt 规则的劝阻。

如果您对搜索引擎机器人不存在的内容提出请求 - 爬虫程序正在跟踪指向该页面的公开可访问页面上的链接,则正确的操作是更正/删除该引用。

如果它是恶意机器人,你所能做的就是检测它并阻止访问。如果机器人正在宣布自己,这很容易,例如,你可以使用重写规则进行阻止

答案4

您可以将虚拟主机信息添加到日志中,或为每个虚拟主机使用单独的日志

Apache 日志文件文档

相关内容