WP コンタクトフォームからのスパム・迷惑メール対策〜しつこい嫌がらせ相手にはIPブロック
我が家のサイトでは、About meページのコンタクトフォーム(Contact Form 7利用)から連絡をいただけるように設定しています。
ずっと以前は海外からのスパムメールがかなりやってきたんですが、Akismetのスパムキャッチ精度が上がったのと、なによりContact Form 7に「Really Simple CAPTCHA」モジュールを追加したのが効いたような気がします。(GoogleのreCAPTCHA インテグレーションモジュールも追加しておりますがこちらの効果のほどはなんとも...)
Really Simple CAPTCHA – WordPress プラグイン | WordPress.org 日本語
Really Simple CAPTCHA は他のプラグインから呼び出すことを想定して作られた CAPTCHA モジュールです。もともとは Contact Form 7 プラグインのために作られました。
ロボットのスパム攻撃はこれでほぼ撃退できるのですが、個人による嫌がらせが発生するとこれがなかなか厳しい...コメントフォーム規約を作ってチェックマークを設置したところでこの手の嫌がらせには効果がないので最後は「IPブロック」しかありません。
設定>ディスカッション>コメントブラックリスト欄に嫌がらせ相手のIPを入れることで嫌がらせ相手からのフォーム送信自体をブロックします。
「どうやって嫌がらせ相手の送信先IPを取得するか」についてはContact Form 7の<送信関連の特別なメールタグ>から利用します。
[_remote_ip] — このタグは送信者の IP アドレスで置き換えられます。
送信されるメールヘッダの差出人: [your-name] <[your-email]>に加えて「差出人IP: [_remote_ip]」を設定しました。これで送信相手のIPが取得できます。自動返信メールにも加えてみたトコロ、コメントブラックリストに追加する前に嫌がらせが止まった場合もあります。ちょっと賢いヒトなら匿名であってもIPが知られたことに動揺してしまうらしいです。
嫌がらせ迷惑フォームメールに困っているヒトはお試しあれ。