トラックバック spam対策
提供: MRK Laboratory
Drupalでトラックバックスパムの多いホストからのアクセスを拒否するためのbatchを作成した。
導入条件
承認されていないトラックバックの数をカウントして登録するため、トラックバックの登録承認が自動になっていないことが条件となります。
バッチの準備
下記の通りファイルを作成して、cronにで一定時間ごとに実行する。
#!/bin/sh DB=drupal USER=user PASSWORD=password COUNT=4 /usr/bin/mysql -u $USER --password=$PASSWORD $DB -e "insert into access (mask,type,status) (select site,'host','0' from trackback_received where status = '0' and not site in(select mask from access) group by site having count(*) > $COUNT order by count(*))"
DBはデータベース名、USERはデータベースにアクセスするユーザ名、PASSWORDはデータベースパスワード、COUNTは承認されていないtrackbackの数