0

最近,我看到来自诸如 bidvertiser 等垃圾邮件域的 GA 推荐流量大幅增加。com,easyhits4u。com 或交通漩涡。com。这些在 GA 中弄乱了很多数据,导致转换率突然下降,导致数据无法使用。

你可以很容易地看到哪些推荐是不好的,因为它们有一些特点:

  1. 跳出率高
  2. 在页面上花费的时间少(每个用户的页面浏览量更少)
  3. 0 次转化(如果你衡量这样的事情)

查看日志我发现了这样的行

52.33.56.250 - - [10/May/2017:08:39:05 +0000] "GET / HTTP/1.0" 200 18631 "http://ptp4all.com/ptp/promote.aspx?id=628" "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; WOW64; Trident/6.0; .NET4.0E; .NET4.0C; .NET CLR 3.5.30729; .NET CLR 2.0.50727; .NET CLR 3.0.30729; MALCJS)"
74.73.253.77 - - [10/May/2017:08:39:05 +0000] "GET / HTTP/1.0" 200 18631 "http://secure.bidvertiser.com/performance/bdv_rd.dbm?enparms2=7523,1871496,2463272,7474,7474,8973,7684,0,0,7478,0,1870757,475406,91376,112463629579,78645910,nlx.lwlgwre&ioa=0&ncm=1&bd_ref_v=www.bidvertiser.com&TREF=1&WIN_NAME=&Category=1000&ownid=627368&u_agnt=&skter=vgzouvw%2B462c%2B40v10h%2Bghru%2Bmlir%2Bhoveizn%2Bsxgzd&skwdb=ooz_wvvu" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36"

如何处理?

4

1 回答 1

0

您需要做的主要有 2 件事:

1. 服务器级别- 您必须从一开始就阻止垃圾邮件请求。

我认为最好准备动态过滤器来阻止来自执行垃圾邮件流量的特定 IP 的请求。

我为此目的使用了fail2ban,但没有任何规则可以帮助你做到这一点。首先,您需要创建一个新的监狱过滤器(我正在使用 Plesk,所以这里是如何在 Plesk 中执行此操作https://docs.plesk.com/en-US/onyx/administrator-guide/server-administration/protection-against -brute-force-attacks-fail2ban/fail2ban-jails-management.73382/)。对于那些不使用 Plesk 并使用 ssh 的用户,您可以在这里查看https://www.fail2ban.org/wiki/index.php/MANUAL_0_8

监狱的定义是这样的:

[Definition]
failregex =
ignoreregex = 

一定要包括ignoreregex否则它不会保存。

之后,在访问日志中查找您在 Google Analytics 中找到的域。你会发现很多类似上面的请求。

确定域后,您需要添加如下规则:

failregex = <HOST>.+bidvertiser\.com
    <HOST>.+easyhits4u\.com
  • HOST - 是fail2ban 使用日志中的ip 的关键字。
  • 请注意“.+” - 这将使 fail2ban 忽略所有文本,直到他们在该行中找到您要查找的域
  • bidvertiser.com - 导致“。”问题的域 被“\”转义。
  • 新行(新域)应该在规则之前有一个 TAB 字符,否则它不会保存

我的规则如下所示:

[Definition]
failregex = <HOST>.+bidvertiser\.com
    <HOST>.+easyhits4u\.com
    <HOST>.+sitexplosion\.com
    <HOST>.+ptp4all\.com
    <HOST>.+trafficswirl\.com
    <HOST>.+bdv_rd\.dbm
ignoreregex = 

你可以看到bdv_rd\.dbm. 那不是域,而是他们用来产生垃圾邮件的脚本。因此,他们可以很容易地更改域并使用相同的脚本。这增加了额外的过滤层。我补充说,因为 fail2ban 将搜索与模式匹配的任何字符串。

注意 1:请确保不要干扰您自己的网站 URL,因为这会阻止合法用户,而您不希望这样。

注意2:您可以像这样在ssh中测试您的正则表达式

:# fail2ban-regex path/to/log/access_log "<HOST>.+bidvertiser\.com"

这应该产生以下输出:

 Running tests
=============

Use   failregex line : <HOST>.+bidvertiser\.com
Use         log file : access_log
Use         encoding : UTF-8


Results
=======

Failregex: 925 total
|-  #) [# of hits] regular expression
|   1) [925] <HOST>.+bidvertiser\.com
`-

Ignoreregex: 0 total

Date template hits:
|- [# of hits] date format
|  [4326] Day(?P<_sep>[-/])MON(?P=_sep)Year[ :]?24hour:Minute:Second(?:\.Microseconds)?(?: Zone offset)?
`-

Lines: 4326 lines, 0 ignored, 925 matched, 3401 missed
[processed in 3.14 sec]

Missed line(s): too many to print.  Use --print-all-missed to print all 3401 lines

现在这意味着您的过滤器找到了与该域匹配的 925 个请求(如果您问我,很多请求),这些请求将转化为来自您的 Google Analytics(分析)中的推荐 bidvertiser.com 的 925 个命中。

您可以验证这一点,下载日志并使用 Notepad++ 之类的工具进行搜索。

现在你的定义已经准备好了,你应该添加一个 jail 和一个规则。

我使用上面的定义来阻止该 IP 的所有端口 24 小时。


在我在短短几个小时内安装了这个之后,我有近 850 个被阻止的 IP。有些在亚马逊 AWS 网络中,所以我在这里提出了滥用投诉https://aws.amazon.com/forms/report-abuse

您可以使用此服务https://ipinfo.io/来查找该 ip 的所有者。

2.谷歌分析级别

在这里你有一些我不会在这里描述的选项,因为它不是这个地方,并且有关于这个主题的写得很好的资源:

https://moz.com/blog/how-to-stop-spam-bots-from-ruining-your-analytics-referral-data https://www.optimizesmart.com/geek-guide-removing-referrer-spam -谷歌分析/


几点注意事项:

  1. 这些家伙在某些地方使用.htaccess阻塞。这也是我在这里没有使用的一个选项,因为在我的过滤器中我还使用脚本名称而不仅仅是域。

  2. Fail2Ban将使用iptables来阻止来自这些 IP 的任何其他请求,而不仅仅是 http/https 端口。

  3. 第一个请求将始终通过并在 Analytics 中创建 1 个命中,然后取决于脚本是否仍访问您的网站,当禁令到期时,另一个命中

  4. 您可以使用recidive过滤器永久禁止这些 IP https://wiki.meurisse.org/wiki/Fail2Ban#Recidive

  5. Analytics 过滤器不会过滤掉历史数据。

于 2017-05-10T14:10:34.400 回答