ワードプレスの問合わせフォームに来るスパムメールを撃退する方法

WordPressの問い合わせプラグイン「Contact Form 7」は非常に便利ですが、そのまま使うとスパムメールや迷惑メールなど大量のメールが届きます。。あのメールをなんとかしたいってことで6つの対策をご紹介します。

この記事でわかること
  1. WordPressの迷惑メールやスパムメールがやばすぎる!
  2. Contact Form 7のセキュリティ強化で簡単にできる方法
  3. Contact Form 7のセキュリティ強化でプラグインを使った方法
  4. Contact Form 7のセキュリティ強化で知識はいるけど確実な方法
マメ子   マメ子
問い合わせフォームなら「Contact Form 7」が便利だけど
迷惑メールが大量に来るのってどうにかできない?
マメボー  マメボー
Contact Form 7のセキュリティ強化方法は、
いくつか方法があるのでご紹介するね!

WordPressのお問い合わせフォームなら「Contact Form 7」が定番ですよね!

メールアドレスを直接晒すのは危険ですしフォームも簡単に設置でき非常に便利です。

ただ、、、、「Contact Form 7」は、あくまで問い合わせフォームプラグインなので、

これを狙ったスパムメールや迷惑メールが大量に届きます。。。

「ヴィトン」とか「エルメス」とか、ただの宣伝なら良いですが、クリックするとパソコンを乗っ取られるような超危険なウイルス系もあり注意が必要です。

Contact Form 7を超便利に使うためにセキュリティ対策はしっかりしておきましょう。

本日は、6つの撃退方法をご紹介していきます。

ABOUT この記事を書いた人

記事プロフィールマメボー
2010年から本格的なブロガーとして活動。アフィリエイトなど1年で月収200万円を達成し最高月収1500万円、43歳で累計4億円稼いでセミリタイア。仲間3人でノウハウをまとめた教材を販売し2万本以上売り日本一売れたアフィリエイト教材を販売。現在セミリタイヤしながら自身のノウハウや資産運用、節約術など、もともと凝り性なので徹底的に調べて、わかりやすくブログで発信中。

今やスパムメールや迷惑メールは超危険がいっぱい!

こんにちは、マメボーです。

ここ最近「迷惑メールが多い、、、」って問い合わせを多くいただいていたのですが、

ついに私にもWordPressの問い合わせフォームから大量スパムメールが来るようになりました。。

こんな感じです↓

全部スパムメール

ルイヴィトンやらエルメスやらグッチやら財布とか時計とかもう・・・

こんなことして誰が買うの?ってぐらい変な広告メールが・・・

これ、すべてWordPressの問い合わせフォーム経由で来ているのですが、「Contact Form 7」を狙った迷惑メールで同じような経験をしている方は多いと思います。

Contact Form 7は便利過ぎるのでWordPressを使うなら必ず導入したいプラグインですが、有名すぎるあまりツールを狙ったスパムメールが大量にきたりします。。

便利過ぎる悩みって感じですよね。。

私も今まではポツポツ来る感じだったので、無視していたのですが、ここ数日は、大量に届くようになり、

こうなったら無視出来ないので改善策に乗り出します!

最も簡単な方法としては、問い合わせフォームの入力必須項目を増やし複雑にすればボット系スパムは追い払えますが、

その分、実際に利用者のユーザビリティを下げてしまいます。

今回、いくつかご紹介しますが、全て行えばセキュリティ強化出来る分、利便性を損ない、またブログの表示速度もダウンしてしまうので、

バランスを考えて導入しましょう。

それでは早速ご紹介します。

1.レンタルサーバーのセキュリティ機能でスパム対策!

レンタルサーバーのセキュリティ設定

意外と忘れがちですが、お使いのレンタルサーバーで「WordPressのセキュリティ機能」が付いている場合があります。

特に下記3つがあれば必ず設定しましょう。

スパム対策に便利な機能
  • 国外IPアクセス制限設定
  • コメント・トラックバック制限設定
  • ログイン試行回数制限設定

スパムメールや迷惑メールのほとんどが海外なので、「国外IPアクセス制限設定」と「コメント制限」の機能があれば90%ぐらいのスパムを撃退できます。

私が利用しているエックスサーバーには標準で搭載していますが、ここ最近は結構セキュリティ機能が充実して追加されているので、確認してみましょう。

あれば絶対にONですね!

これだけで圧倒的に少なくなります!

2.一番簡単でユーザーの負担も少ないスパム対策方法

一番簡単でユーザーの負担も少ないスパム撃退方法

それでは、まず1つ目の対策ですが、フォーム内に「承諾ボタン」を追加して、送信時の最後にチェックしてもらう方法です。

この方法が、もっとも簡単に追加可能でさらに利用者の負担も少ないです。

またこの方法は利用者の誤送信を防止する効果もあり、利便性アップにもつながりますね!

承諾ボタンの追加方法

それでは承諾ボタンの追加方法ですが、「ダッシュボード」⇒「お問い合わせ」⇒「コンタクトフォーム」の編集画面を開きます。

承諾ボタンの設置方法

承諾ボタンの設置したい箇所を選び、タブから「承諾確認」を追加します。

 

承諾ボタンの設置

フォーム生成画面で、「同意条件」に表示したい文字を入力し、「オプション」のチェックを外します。

 

承諾ボタンの設置

このようにタグが追加されるので、あとは回りに<p>タグなど追加して装飾します。

 

承諾ボタンの追加

これでメッセージの送信時にチェックを入れないと送信ボタンが押せなくなります。

3.画像認証でブログ負荷が軽いが効果抜群のスパム対策

画像認証「キャプチャー」を導入する

次の方法ですが、送信前に英数字など画像認証を付けてしまう方法です。

SiteGuardの問い合わせフォーム版って感じですが、今回はReally Simple CAPTCHA」ってプラグインを使います。

画像認証の英数字版って結構見えにくかったりしますが、このプラグインは文字もはっきりしており入力しやすいです。

また、今回紹介するプラグイン系の中では最も軽く、ブログ表示速度に負荷をかけないのもオススメのポイントになってます。

Really Simple CAPTCHAの追加方法

Really Simple CAPTCHAの追加

プラグインの新規追加から「Really Simple CAPTCHA」で検索し「インストール」⇒「有効化」を行います。

 

Really Simple CAPTCHAの追加

有効化が終わったら、コンタクトフォームの編集画面を開き、送信ボタンの前に下記のタグを追加します。

追加するタグ

<p>【画像認証】[captchac captcha-1]
[captchar captcha-1 placeholder “英数字4文字を入力”] </p>

 

Really Simple CAPTCHAの追加

このように追加されます。4文字でシンプルですしブログ負荷も少なくオススメです。

4.商用不可は残念!Akismetを使ったスパム対策!

やっぱりAkismetが最強!連携してスパムを除去!

次に、WordPress純正のスパム対策プラグイン「Akismet」を利用してスパムメールを判別する方法をご紹介します。

「Akismet」はもともとコメントのスパム対策プラグインですが、連携させることで問い合わせフォームでも対応できます。

ただし・・・・2点注意があります!

Akismetの注意点
  • スパム判定はAkismetが行うので利用者の判断はAkismet任せ!最悪消滅もあります。
  • Akismetの利用は商用サイト不可で販売サイトはもちろんアフィリサイトでも利用不可×

「Akismet」はWordPressの純正プラグインで利用している方も多く導入しやすいですが、

スパムの判定自体はAkismetが独断と偏見で行います。

スパム判定された問い合わせは自動で消滅するので便利な分、諸刃の剣になる場合もあり注意です。

また、知ってますか?

Akismet自体が商用サイトでの利用を禁止しており、アドセンスを含むアフィリエイトサイトでは利用出来ません。。

ま~といっても使っている方は多いですが、今後脱Akismet方向に進むなら、別の方法を取り入れるのが良いと思います。

一応、ご紹介しますが、最終判断はお任せします。

Contact Form 7でAkismet機能を追加

まずは、Akismetを有効化、APIキーを入力して稼働状態にさせておきましょう。

Akismet追加設定

Akismet機能の追加は簡単で、各フォームの中に「akismet:」タグを挿入していきます。

種類 タグ 記入例
名前 akismet:author text* your-name akismet:author
メール akismet:author_email email* your-email akismet:author_email
URL akismet:author_url text your-url akismet:author_url

名前、メール、URLなど指定されたAkismetタグを記入していきます。

3つとも指定する必要はなく、1つでもスパム判定は行われますが、多くAkismetタグを設置した方が、精度が上がります。

 

このように入れ替えます。

今回は、名前とメールのみAkismet を有効にしましたが、精度を上げる場合は、URLも追加しましょう。

 

とりあえずテストでスパムと同じ形式で送信してAkismetが機能するかテストしてみます。

テストでスパム

こんな感じで、スパムっぽく入力してみました。

 

テストでスパム

送信ボタンを押したところ見事にシャットアウトされます。

Akismetのフィルタリングテスト

私のようにスパムっぽくテストしなくても、フィルタリングテストが用意されていました。

下記のアドレスを使って送信すると実際にテストして確認出来ます。

Akismetのスパムテスト用アドレス
  • 名前:viagra-test-123
  • メールアドレス:akismet-guaranteed-spam@example.com

5.現状最強!Google「reCAPTCHA」でスパム対策!

reCaptchaとは

次に、ご紹介するのが、Googleの無料サービスの1つで、利用者を人間かスパムか自動で判別してくれるツール「reCaptcha」をご紹介します。

上の画像を見ると「あ~知ってる~!」って方も多いと思います。

「ロボットじゃない」にチェックを入れて、画像認証は標識を選んだり車を選んだりします。

よくGoogle関連のログインなんかで出てきますし、ここ最近はネットサービスのログイン時などにも使われていたりしますね。

この「reCaptcha」は、一般向けにも公開されており、プラグインを使うことで無料で問い合わせフォームに設置出来ます。

で、この「reCaptcha」の最大の利点ですが、スパムにだけ画像認証などをさせる仕組みで、人間には何も表示されず利便性を損ないません。

ただし若干ブログが重くなるデメリットもありますが、現状で最強のセキュリティです。

このページでは、「reCaptcha」を「Contact Form 7」のみに適用させる方法をご紹介しますが、コメントやログインフォームなどにも対応させたい場合は、下記のページを参照ください。

reCaptchaプラグインでブログ全体に適用させる

Google Invisible reCAPTCHAの導入手順

reCAPTCHAを利用するために「Googleアカウント」が必要になります。

持っていない場合は、先に作成してログインしておきましょう。

次にGoogleアカウントにログインしたら、reCAPTCHA登録サイトでサイトキーとシークレットキーを取得していきます。

reCAPTCHAの公式サイトは最初英語で戸惑いますが、登録画面は日本語なので安心して進みましょう。

reCAPTCHAの導入手順

reCAPTCHAのトップページが開いたら赤枠①の「Admin Console」をクリックします。

 

reCAPTCHAの導入手順

登録画面が表示されるので、必要な情報を入力して「送信」をクリックします。

  1. ラベル⇒好きな名前
  2. タイプ⇒v3にチェック
  3. ドメイン⇒例:siyo.org(https://などは省く)、複数ドメインの登録が可能
  4. 同意、送信にチェックを入れる

 

reCAPTCHAの導入手順

サイトが登録されたら「サイトキー」と「シークレットキー」をコピーして「設定に移動」をクリックします。

 

reCAPTCHAの導入手順

次に確認画面が表示されるので、登録ドメインがAMP対応ならチェックして保存しましょう。

※AMPとはサイトの一部が検索エンジンに直接表示される機能です。

 

reCAPTCHAの導入手順

管理画面が表示されますので、お気に入りなどに登録しておきましょう。ここからスパムデータを見たり再設定が可能です。

これで、reCAPTCHAでのキーの取得は終了です。

次にWordPressの設定を行います。

reCAPTCHAの設定

続いてWordPressのダッシュボード「お問い合わせ」⇒「インテグレーション」をクリックします。

 

reCAPTCHAの設定

他のサービスとのインテグレーション」の画面が表示されるので、reCAPTCHAのセットアップをクリックします。

 

reCAPTCHAの設定

先程作った、サイトキーとシークレットキーを登録して、「変更を保存」をクリックします。

reCAPTCHAの設定方法

送信ボタンの下に「reCAPTCHAバッチ」が表示されると設置が完了です。

6.知識はいるがブログ負荷が少なく効果的なスパム対策!

最後の方法ですが、「functions.php」に直接書き込む方法で、日本語が少なく英語が多い場合、エラーメッセージを表示させる方法です。

Omusuvi / Digital Marketing」さんのブログで詳しく書かれていますので参考にしてください。

Omusuvi / Digital Marketingさん

WordPressのダッシュボード⇒「外観」⇒「テーマエディタ」を開き、内部ファイルの「functions.php」に直接タグを貼り付けます。

これ以外にもいろいろな方法が載っているので、Omusuviさんのブログを参照ください。

お問合わせフォームに来る迷惑メールの6つの撃退法まとめ

超便利な「Contact Form 7」ですからね。スパム対策もしっかり行いセキュリティ強化をしましょう。

当然、全部行えば、それだけ強力なセキュリティ強化ですが、ブログに負荷がかかり表示速度が遅くなれば意味がありません。

自分の環境にあった選択をしていきましょう。

紹介した6つの方法
  1. レンタルサーバーのセキュリティ機能⇒設定簡単、負荷無し、効果◎、限定機能
  2. フォームに直接「承諾」チェックを入れる⇒設定簡単、負荷無し、効果△、リスク無し
  3. 画像認証を設置⇒設定簡単、負荷無し、効果○、リスク無し
  4. Akismetで追加スパム対策⇒設定普通、負荷重い、効果◎、リスク有り、商用負荷
  5. reCAPTCHAを設置⇒設定普通、負荷重い、効果◎、リスク無し
  6. functions.phpによる書き込み⇒設定難、負荷無し、効果○、リスク有り

ご紹介した方法をまとめてみました。

一番簡単なのは、「承諾」ボタンですが、その分、効果は薄いです。

効果があるのは「reCAPTCHA」ですが、ブログ負荷が気になります。

速度スコアに余裕があれば迷わず「reCAPTCHA」ですが、ない場合は画像認証と承諾ボタンから様子を見ていくと良いです。

 

以上、「ワードプレスお問い合わせに来るスパムメールや迷惑メール6つの対策」でした。

最後まで読んでいただきありがとうございます。