空の下でひっそりと

てきとーに更新していきます。レーザーカッターや3Dプリンタが好き

フォーラムに大量のスパムコメントが来たので一括削除した

f:id:yabu_sw:20181220032121p:plain

昨夜からこのようなスパムがきていたらしく気づいたらコメント数が6万以上来ていました。

調べてみるとbbpressで作成したフォーラムにコメントとして書かれまくってた様子。

放置しても邪魔になるので一括で消したいなと思いつつ、一つ一つ削除するのは面倒だなと思っていたので、データベースから削除する方法を参考にして一括削除をしました。

参考サイトはこちら↓

incloop.com

1.データベースのバックアップをとる。

phpmyadminを利用してデータベースを管理していたので、export機能を使って全体のバックアップをとりました。

2.wp1_postmetaを削除する。

データベースを見てみるとwp1_postmetaとwp1_postsの量が圧倒的に増えています。

そこにスパム投稿とそれに関する情報が入ってそうなので、そこを調べていきます。

f:id:yabu_sw:20181220032356p:plain

wp1_postmetaの中身を見てみるとどれがフォーラムに投稿されたデータかを判別できないので、wp1_postsと結合させて調べます。

フォーラムへの投稿を削除したいので、guidの列に”forums"が含まれている部分のみを検索しました。

今回自分の場合は、直近3日間のフォーラムへのコメントが全てスパムだったので、日付と"forums”のみで判別しています。

———————————————SERECT———————————————
SELECT * 
FROM `wp1_postmeta` 
INNER JOIN wp1_posts 
        ON wp1_postmeta.post_id = wp1_posts.ID
WHERE post_date LIKE "2018-12-17%"
AND guid LIKE "%forums%"

———————————————DELETE———————————————
DELETE `wp1_postmeta` 
FROM `wp1_postmeta` 
INNER JOIN wp1_posts 
    ON wp1_postmeta.post_id = wp1_posts.ID
WHERE post_date LIKE "2018-12-18%"
AND guid LIKE "%forums%"

“SELECT"で検索して値があるか確認し、”DELETE"で削除します。

3.wp1_postsも削除する。

wp1_postmetaと同じように日付とguidの文字列に”forums”が含まれていたら抽出、ざっくり確認したら削除という手順で実行します。

———————————————SERECT———————————————
SELECT * 
FROM `wp1_posts` 
WHERE post_date LIKE "2018-12-18%"
AND guid LIKE "%forums%”

———————————————DELETE———————————————
DELETE `wp1_posts`
FROM `wp1_posts` 
WHERE post_date LIKE "2018-12-18%"
AND guid LIKE "%forums%"

ぼくは3日分のコメントが溜まっていたので、2と3の作業を3回実行しました。

4.スパム対策

今回のスパムは一旦削除することができたので、次から来ないように対策をします。

スパム対策にはakismetを使用しました。

それと今回はコメントに大量のスパムが投稿され続けてしまったので、連続投稿の間隔を10秒→1分に変更しました。

参考にしたリンクはこちらです。

akismetの設定

pasolack.com

bbpressの設定

wordpressで掲示板を作るならbbpress!使い方の完全マニュアル

この記事もspam対策にはよさそうだったので、akismetで防げない場合は試してみたい。

netaone.com

感想

初めから対策しとけよって感じですね、、、 bbpressを使っての対策であれば、投稿スロットル時間の間隔を長くすること。 Akismetは使っていたけど、もうちょいちゃんとするならreCapthchaとかも使った方がいいかなと思いました。

参考リンク :

incloop.com

qiita.com

pasolack.com

wordpressで掲示板を作るならbbpress!使い方の完全マニュアル

netaone.com