「アドセンス狩り」とは、自分のサイトの広告を他人に大量にクリックされてしまう、いたずらのことを指します。
言ってみれば「第三者からの嫌がらせ」なのですが、Google様からは、不正クリックも嫌がらせも、「すべてサイト管理者の責任」と見なされてしまいます。
「アドセンス狩り」にあってしまったサイトは、Google 様から広告を止められたり、最悪の場合はアカウントを止められてしまうことも。
そんな筆者も、少し前にアドセンス狩りの被害に遭ってしまいました。ひー!
そして当事者として、筆者が対策を徹底的にリサーチした結果、次の方法が有効だと分かりました。
この記事を読めば、以下の対策について分かっちゃいます。
- IPアドレスを解析し、アクセス禁止にする対策
- Google Analytics(無料ツール)でアクセス解析する方法
- リサーチアルチザンプロ(有料ツール)でアクセス解析する方法
- プラグインAICPを入れる対策
- 注意点:設定画面をオンにしただけじゃダメ!
アドセンス狩り対策をしたい人は、この記事を読んでおきましょう。
アドセンス狩り対策1:怪しいIPアドレスをアクセス禁止にする
筆者がリサーチした結果、現時点で最も効果的な対策は、次のとおりです。
- Google AdSenseとアナリティクスを連携させ、不正クリックが行われていないかを常時チェックする
- 訪問者のIPアドレスを記録しておく
- 不正クリックを繰り返すIPアドレスを割り出して、アクセス禁止にする
このように、Google アナリティクスなどのアクセス解析ツールを使い、訪問者の状況をモニターすることがポイントです。
そして、もし不正クリックを繰り返す人がいたら、IPアドレス情報を入手し、サイトへのアクセスを禁止してしまいましょう。
プラグイン「WP-Ban」ですぐに対応できる
運営サイトへのアクセスを禁止にする方法は、いたってシンプル。IPアドレスさえ分かっていれば、ワードプレスのプラグイン「WP-Ban」を使えば、サクッと設定できちゃいます。
まずは次のように、プラグイン「WP-Ban」をダウンロードし、有効化しておきます。
プラグイン「WP-Ban」をダウンロードすると、ワードプレスの管理画面には、下の画像のような「Ban」という項目が追加されます。
「Ban」をクリックしたら、次のような流れで、怪しいIPアドレスのアクセス禁止を設定できます。
- 「Ban」をクリックする
- 「Banned IPs」に、アクセス禁止したいIPアドレスを入力する
- 「Save Changes」で変更を保存する
以上。簡単ですね!
※間違ってもご自分のIPアドレスを登録しないようにご注意ください。
「でも、IPアドレスってどうやって入手するの?」と思われた人もいるのではないでしょうか。
そこで次の項目から、「訪問者のIPアドレスの入手方法」について、2パターンに分けて解説していきます。
訪問者のIPアドレス入手方法①:Google Analytics(無料)
サイト訪問者のIPアドレスを入手する方法のなかで、まずは「Google Analytics」(以下、GA)という無料ツールに設定を加えて、解析するやり方をご紹介します。
GAは、専用の設定をしない限りは、IPアドレス情報が閲覧できないようになっています。理由は恐らく、個人情報保護の観点だと予想します。
そんな事情もあるからでしょうか、この方法って、あまり情報が出回っていないんですよね!筆者は設定に苦労してしまい、結構時間がかかりました。
以下に、一番参考になった記事(外部サイト:Index-Lab様)のリンクを貼らせていただきます。
こちらの記事は、素晴らしい情報ではあるものの、何ぶん「分かっている人向け」に話が進んでいるため、正直言って初心者には理解がキビシイ部分も。(T-T)
ただ、ぱっと見は若干難しそうに見えますが、一つ一つの操作は複雑ではないです。地道に進めていけば、筆者にも設定できました。
設定の工程は、大きく分けて次の2つ。
- グーグルアナリティクスで、カスタムディメンションを設定する
- 運営サイトに、タグを設置する
次の項目からは、筆者が行き詰まったポイントを含めて解説していきます。それでは見ていきましょう。
1)GAでカスタムディメンションを設定
まずは、グーグルアナリティクス内で、「カスタムディメンションの設定」を行います。
GAにログインし、次のようにクリック。
- GAにログイン → 管理 → カスタム定義 → カスタムディメンション → 新しいカスタムディメンション
上の工程で、「新しいカスタムディメンション」を開いたら、次の赤枠の部分を入力し、「アクティブ」にチェックが入っていることを確認します。
上の画像のように「クライアントID」を設定。
「クライアントID」が設定できたら、続いて「アクセス時間」、「ユーザーエージェント」、「IPアドレス」などを同様に新規設定しておきます。
すると、「カスタムディメンション」の画面は以下のようになります。
参考記事:
(4.カスタムディメンションの設定と注意点)
2)運営サイトにコードを設置する
次に、運営サイトにコードを設置します。
まず筆者の場合、元々のGAのアクセス解析タグは、次のような感じでした。(UAから始まる番号は、青色にしてあります)
<!-- Global site tag (gtag.js) - Google Analytics -->
<script async="" src="https://www.googletagmanager.com/gtag/js?id=UA-xxxxxxxxxx-x"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'UA-xxxxxxxxxx-x');
</script>
続いて、下の長いバージョンが、変更後のコードです。
赤文字部分が、今回新たに加えた所。
<script type="text/javascript" src="//www.analyticsip.net/getIP/public_html/ra/script.php"></script><noscript><p><img src="//www.analyticsip.net/getIP/public_html/ra/track.php" alt="" width="1" height="1" /></p></noscript>
<!-- Global site tag (gtag.js) - Google Analytics -->
<script async src="https://www.googletagmanager.com/gtag/js?id=UA-xxxxxxxxx-x"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'UA-xxxxxxxxx-x', {
'custom_map': {
'dimension1': 'clientId',
'dimension2': 'access_time',
'dimension3': 'ua',
'dimension4': 'ip_value'
},
'access_time': trackCommonMethod.getAccessTime(),
'ip_value': trackCommonMethod.getIP(),
'ua': navigator.userAgent
});
</script>
上のように赤文字部分を加えれば、完了です。
後半部分の「Dimension 1~4」には、自分が必要な情報を入れますが、先ほど設定したカスタムディメンションの項目と一致させることをお忘れなく。
筆者の場合は、設置した翌日ぐらいに、GAの次の場所などで、アクセス解析情報を見ることができました。
- GAにログイン → 行動 → パブリッシャー → パブリッシャーのページ → セカンダリディメンション → IPアドレスなど
上の順番でクリックすると、次の画像のように情報が閲覧できます。
ただ、この画面に到達するまでに、筆者は試行錯誤しちゃいました。
ご参考までに、色々と間違えた経験から、注意したいポイントを書いておきます。
注意点(初心者向け)
後々考えてみれば、次のことを先に確認してから作業に移ると、スムーズでした。
- 自分のGAコードが、ユニバーサルアナリティクス(analytics.js)と、グローバルサイトタグ(gtag.js)かを確認する
- 自分のサイトが、PHPファイルを使える環境かどうか確認する
- PHPがよく分からない場合は、「外部サーバーを使う方法」を試す
ご紹介したリンク先の記事では、「ユニバーサルアナリティクスか、グローバルサイトか、PHPファイルが使えるか、使えないか」という分類で、4つの方法に分けられています。
筆者が参照した記事はその中の一つ、「グローバルサイトで、PHPが使えない場合」の方法でした。
ちなみに調べた所、2017年以降はGAで「グローバルサイトタグ」が実装されている様子。つまり、2017年以降に最近GAを使い始めた人は、「グローバルサイトタグ」の可能性が高いです。
筆者は、当初よく分からなかったので適当なコードを入れてしまいました。その結果、コードが機能しなかったり、モバイル画面のレイアウトが崩れてしまうことも。
コードを元に戻せば直るので、「間違えた」と思ったら直せばOKですが、コード入力後は、モバイルやタブレットからの画面チェックも、お忘れなく。ワードプレスのプレビューからは正しく見えていても、実際にスマホで見てみると、画面が崩れていることがありました。
訪問者のIPアドレス入手方法2:リサーチアルチザンプロ(有料)
次は、GAを使う方法が上手くいかない人や、時間が無いから手っ取り早く設定したい人向けです。
有料ツールを使って、簡単にアクセス解析する方法もあります。「リサーチアルチザンプロ (Research Artisan Pro)」は、初心者にも扱いやすいツールで、お値段も良心的。
有料ではあるものの、最初の一か月は無料で試すことができ、とても便利です。
リサーチアルチザンプロの設置方法
設置方法は、非常にカンタンです。
リサーチアルチザンプロのHPから「ユーザー登録」し、自分のサイトに解析用タグを設置するだけ。
サイト内でのタグの設置場所は、次の通りです。
- タグの設置場所:各ページのHTML内のbodyタグ(<body>〜</body>内)に貼り付ける
上記のように、自分の運営サイトの上の設置場所に、解析用タグを設置します。
筆者はサイトのテーマ「Cocoon」を使用しているので、次の場所にコードを貼りました。
- Cocoon設定 → アクセス解析・認証 → フッター用コード
コード設置後は、すぐにアクセス情報を解析し始めます。
上の画像のような画面から、IPアドレスや企業名、サイト内滞在時間まで分かっちゃいます。
このツール、使ってみるととても便利です。
当初は「アドセンス狩り対策」で導入したものの、それだけでなく、「訪問者が自分のサイトをどのように回遊してくれているか」が分かり、運営上も非常に参考になります。
アドセンス狩り対策2:プラグインAICPを使う
そしてアドセンス狩り対策2としては、プラグイン「Adsense Invalid Click Protector(AICP)」を使う方法もあります。
ただ結論から言って、このプラグインを入れていても、不正クリックを100%検知することは難しいです。対策を徹底したいなら、上にご紹介した、何らかのアクセス解析と併用するのがよさそう。
「なぜ、プラグインAICPの検挙率が100%ではないのか?」というその理由は、次の通りです。
注意①:スマホ・タブレットには対応していない点
「Adsense Invalid Click Protector」のマニュアルによると、このプラグインはデスクトップパソコンからの不正クリックを感知する仕組みになっています。
赤いハイライト部分、開発者の英語コメントを簡単に和訳してみます。
- このプラグインは、スマホやタブレットなど、モバイル機器(からの攻撃)には対応していない
- なぜならモバイル機器は、マウスでクリックするのではなく、タッチスクリーンを使っているから
- このタッチスクリーン仕様により、モバイルからの不正クリックは、当プラグインでは検知できない
上記のとおり、「スマホやタブレットからの不正クリックは、このプラグインはモニターできない」ということが分かりました。
とはいえ、デスクトップからの不正クリックには対応しています。ワードプレスを使ったサイトを運営している方は、入れておくに越したことは無いでしょう。
注意②:Cookieを使っている点
注意点②として、このプラグインは、Cookieを使用した対策を取っています。つまり、攻撃者がCookieを削除したり、無効化してしまうと、検知できない場合がでてきます。
ということで、上の2点の理由から、このプラグインだけで、不正クリックを完全に防ぐことは難しいことが分かります。
とはいえ、プラグインを入れないよりは、入れておいた方がマシ。こういった対策を全く行わないよりは、「やっておいた方がよい」です。
次に、設定方法についての注意点も書いておきます。設定は、次の2ステップ。
設定方法①プラグイン設定画面での有効化
まずは、プラグイン設定画面に必要な情報を入力し、有効化します。
- Set the Ad Click Limit → 「回数制限:何回広告をクリックしたら制限するか」(例: 3回)
- Click Counter Cooke Expiration Time → 「時間制限:何時間以内か」(デフォルト: 3時間)
- Set the Visitor Ban Duration → 「期間制限:上記に抵触したユーザーをバンする期間」(デフォルト: 7日間)
ここで入力が必要なのは、主に上記の部分です。
デフォルトでは、上から「3回、3時間、7日間」という数字になっているかと思います。数値は管理者様のお好みで設定して、「変更を保存」しましょう。
いくつかのブログ記事では、ここまでの説明だけで終了していました。
しかし、この画面設定だけで終わってしまうと、「設定完了」とは言えません。プラグインのマニュアルによると、コードの設定も必要なのです。
実は筆者は、当初ここまでしか設定していなかったため、アドセンス狩りに遭ってしまいました。皆さまはご注意ください。
設定方法②コードを貼り付ける
次は、コードを貼り付ける作業です。
functions.phpというファイルに記載する必要があるのですが、これは「初心者がミスると、一瞬でサイトが真っ白になる」という噂も。プログラミングの知識がある人以外は、直接触らない方が無難です。
そこで今回は、「Snippets」というプラグインを入れて、ショートコードを追加する方法をご紹介します。
ちなみにプラグイン「AICP」の開発者は、「Ad Inserter」というプラグインを使っていました。「同じようなプラグインは他にもあるので、お好みで使ってよい」とのこと。
ただ初心者目線では、こちらの「Snippets」の方が、操作が簡単に見えたので、今回はSnippetsを使用しています。
プラグイン「Snippets」でコードを挿入
ワードプレスのプラグイン画面から、「Snippets」をダウンロードします。
ダウンロードすると、左側のメニューに「Snippets」という項目ができるので、そこをクリック。
- プラグイン「Snippets」をダウンロードして、有効化する
- 「Snippets」→「Add new」をクリック → タイトルに「Google AdSense」と入力する
- コード部分に、下のコードを貼り付けて、保存する
Snippetsの編集画面に入ったら、下のようなコードを入力して、保存です。
このときの注意点は、自分のアドセンスコードを、5行目に挿入するということ。
function ad01Func() {
if( aicp_can_see_ads() ) {
$adCode = '
<div class="aicp">
【ここに自分のアドセンスコードを貼り付ける】
</div>';
return $adCode;
} else {
return '<div class="error">広告の表示がブロックされています。</div>';
}
}
add_shortcode('ad01', 'ad01Func');
そして、一番最後の行にある、’ad01’という部分がショートコードになります。
このショートコードは、使う時には[]で囲みます。つまり、ad01を[]で囲んだショートコードを、自分のサイトの広告の部分に貼ればOK。
筆者の場合はテーマがCocoonなので、次の場所に貼りました。
- Cocoon設定 → 広告 → アドセンス設定:広告コード
これで、設定は終了です。
Banned User Detailsを確認
不正クリックをした人は、Banned User Details(禁止されたユーザー情報)という画面で、詳細を確認できます。
プラグイン「AICP」を有効化すると、ワードプレスの管理画面に、次のような画面が現れます。
上の画面で怪しいIPアドレスの持ち主を確認したら、アクセス禁止措置を取りましょう。
注意
上記ソースコードを利用することで発生したトラブルや損失、損害に対して、当方は一切責任を負いません。ご自身の責任において行っていただきますよう、お願い致します。
まとめ
以上、アドセンス狩り対策として、まずは徹底的に身を守る方法を書かせていただきました。
- IPアドレスを解析し、アクセス禁止にする対策
- Google Analytics(無料ツール)でアクセス解析する方法
- リサーチアルチザンプロ(有料ツール)でアクセス解析する方法
- プラグインAICPを入れる対策
- 注意点:設定画面をオンにしただけじゃダメ!
こうしたアドセンス狩りのような迷惑行為は、広告主とメディアの双方にとって影響が大きく、サイト運営者や広告主から訴えられてもおかしくない行為です。
被害に遭ってしまった後は、「Google AdSenseに不正クリックをレポートする」ということも必要ですが、まずは今回ご紹介したような対策を取るなどして、自分で自分の身を守り、被害を防ぐことが重要ではないでしょうか。
運営者としては、迷惑行為に対しては徹底的に対応していきたいですね。
コメント
[…] mikolog外部リンクアドセンス狩り対策2021年版:IPアドレス解析方法2つとプ… […]
[…] https://greenawayweb.com/protect-your-adsense-account-from-click-bombing/#WP-Ban […]