Google Analyticsに限らずアクセス解析していてすごく邪魔な存在である「スパムリファラー」。スパムリファラーはアクセス解析レポートにアクセスしてほしいサイトのアドレスが表示されるようにして、レポートを見た人が「何このページ」と思ってアクセスしてくれるかもしれないという地味なアクセスアップ対策。
というと聞こえはいいのですが、アクセスしたら別ページへリダイレクトされたり、ひどいものになると悪意のあるソフトを仕込まれたりするらしくとってもうっとおしいものなんです。
私もこのリファラースパムに苦しんでいて、とんでもない量のアクセスがある日もあり、全然アクセス解析レポートの数字が信用できない状態になったこともあります。
いろいろなサイトを参考にしてブロックしてきたのですが、1つ1つブロックしていてもきりがないですし、ブロックしたつもりでもできてないかったりすることもあります。
今回は方法がある程度まとまりましたので、Google Analyticsを使っていて同じ苦しみを味わっている方の参考になればと思い、私の行っているスパムリファラーのフィルター設定手順を紹介したいと思います。
上から順番にやっていくと一番効率がいいと思います。
なお、フィルターを使った方ならご存じだと思いますが、フィルター設定をしても即時反映はされません。設定してからしばらく時間が経過すると適用されますので、1つやっては様子を見てという感じで対処するといいです。
大抵のスパムはこれでブロックできる
いろいろ苦労しましたが、これが一番!!というフィルター設定です。実際のドメインとは別のものを使って偽装し、次々に発生してくるスパムリファラー。でもほとんどのスパムで共通している点を発見しました。それは・・・
リファラスパムのほとんどの言語が「(not set)」であること
です。これが分かった瞬間今までやっていたことのほとんどが無駄になりました。これが実際の設定内容
ちょっと見にくいかもしれないので簡単に解説すると
- フィルタ名は適当につける
- 「フィルタの種類」をカスタムにする
- 「フィルタフィールド」を「言語設定」にする
- 「ビューにフィルタを設定」を「すべてのウェブサイトのデータ」にする
たったこれだけの設定です。
これによって本当にページへアクセスした人の言語が「(not set)」のものも非表示にはなってしまいますが、私が作成しているサイトではきちんとフィルターだけされているようです(中には数件あるかもしれませんが気にするレベルではないかも)。
本当にこれで大抵のものはブロックできました。今まで1つ1つ設定していたものを削除してからやったので結構確度の高い情報だと思います。
最近結構出てきた「○○.xyz」ドメインのリファラスパムも皆無になりました。最初からこうしておけばよかった!!
言語設定があり、ドメインやページ名を偽装されているものは別の方法で
「○○.xyz」と並んで最近多いのが「secret.ɢoogle.com」というスパム。ちなみにここへアクセスすると「トランプ次期大統領のことどう思う?」というページが開かれます。
このスパムで厄介なのがgoogleの「g」が小文字の大きさなのになぜか大文字ということ。メモ帳などへコピーしてみると判明するのですが、この「ɢ」は記号なんですね。途中に記号が入っていて、記号はそのまま認識されないようで、そのままの形でフィルタ設定してもブロックできませんでした。敵もよく考えますね。
こういう輩を排除するには・・・
元ドメインを調べてドメインごとフィルタする
方法をとります。
この「secret.ɢoogle.com」は調べるとロシアのドメインなんですね
調べ方は
- Analyticsの「ユーザー」「サマリー」を開いて、右側に表示される一覧の中に「Secret.ɢoogle.com You are invited! Enter only with this ticket URL. Copy it. Vote for Trump!」(別の文字列のときもある)をクリック
- グラフとリストの間にある「プライマリディメンション」の右側にある「その他」をクリック
- 一覧へ戻るとどこのドメインから送られているかが表示される
ここに表示されているドメインをフィルタすれば完了!!
ころころと経由ドメインを変えているようで、日付範囲を広げると凄い数のドメインが出てきますが、最近のものだけブロックすればいいかと思います。
今回は「clodo.ru」「ertelecom.ru」の2つでした。どちらもロシアのドメインです。ロシアから正規のアクセスがある場合でもこの「secret.ɢoogle.com」を偽装してアクセスしているドメインなのですからほとんどの場合不要なドメインです。
早速ブロックします
画面のように
- フィルタ名は適当につける
- 「フィルタの種類」は定義済のままで「除外」を選択する
- その右の項目を「ISPドメインからのトラフィック」にする
- その右の項目を「等しい」にする
- 「ビューにフィルタを設定」を「すべてのウェブサイトのデータ」にする
たったこれだけの設定でブロックできます。
過去のレポート分も非表示にしたい場合は日付範囲を広げてブロックすれば全部消えますがそこまでする必要はないかもしれませんね。
さいごに
今のところこの2つの方法で自身の持つサイトでは100%ブロックできています。今後またいろいろと登場するはずですからその都度どちらの方法がいいかを選択してブロックすればレポートデータは守られそうです。
ほかにも類似の記事をいくつか書きましたが、この方法が一番正しく一番確実だと思います。
フィルター設定してしばらくするとレポートから非表示になり、そこから一定期間過ぎるとデータそのものが削除されるようになっているようですから、失敗かな?と思ったときはフィルター設定を削除して様子を見てください。時間がある程度過ぎ、データが残っていれば復旧されます。