Защита сайта BuddyPress от регистраций спам-ботов
Те, у кого установлен WordPress MU и BuddyPress с включенной регистрацией, давно заметили, что достаточно быстро боты узнают каким-то образом о вашем сайте и начинают атаку, которая заключается в массовой регистрации спам-пользователей, которые создают блоги и иногда даже публикуют в них записи.
Получается, что из 100 пользователей, при полном отсутствии ручной чистки, до 60% (иногда больше) – боты. Вычисляются они достаточно легко – у них имена даже вообще не читаемые, хотя не всегда все же. Поэтому найти и удалить их можно без проблем. Но кому хочется этим периодически заниматься? Правильно, только мазохистам.
Поэтому я нашел способ, адаптированный для BuddyPress, защиты вашей социальной сети от левых регистраций. Он достаточно прост и потребует от вас минуты 2 на все про все.
1. Открываем файл .htaccess, который находится в корне вашего WPMU сайта правильным редактором.
2. Перед #uploaded files вставляем следующее:
# BEGIN ANTISPAMBLOG REGISTRATION
RewriteCond %{REQUEST_METHOD} POST
RewriteCond %{REQUEST_URI} .register*
RewriteCond %{HTTP_REFERER} !.*yourhomedomain.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^$
RewriteRule (.*) http://die-spammers.com/ [R=301,L]
# END ANTISPAMBLOG REGISTRATION
3. Редактируем yourhomedomain на имя вашего домена.
В чем суть данного метода? При попытке спаммера зарегистрироваться, его будет перебрасывать на несуществующий домен die-spammers.com
. Определение, является ли пользователь спаммером, осуществляется по наличию идентификатора user-agent. Если он пустой – то это бот (в 99% случаях).
Вот и все. Никаких плагинов, хаков, редактирования php файлов. Ничего более. Пользуйтесь.
сделал, как написал, вот только yourhomedomain надо писать как vanicon или vanicon.ru и оставлять звездочки или нет*vanicon*
Надо писать vanicon.ru, чтобы стало !.*vanicon.ru.* [OR]
спасибо , исправил, а вот как проверить работает ли
просто подождать :) У меня на демо сайте не прошло еще ни одного спаммера-регистратора.
Насколько я понял, дра есть еще в bbpress. возможно регистрируются через него и синхронизируется с базой БП. Поправьте если я ошибаюсь
@BRED:
Да, если найдут форум, то могут и через него. Поэтому ставьте плагин для bbPress, которые исправят это.
Я не понял, а что если человек пришел с поисковика или любого другого сайта ?
RewriteCond %{HTTP_REFERER} !.*yourhomedomain.* [OR]
будет неправильное перенаправление
Не понял, а почему неправильное перенаправление? Ведь User-agent у него есть? У любого пользователя он есть. Только у некоторых (только некоторых!) ботов его нет. Ну и почти у всех спаммеров.
на Demo.cosydale.com – есть каптча для регистрации.. где можно взять?:) а то Register Plus – он если напрямую пытаться зарегистрироваться на блоге…
Заранее спасибо!
@Александр:
В рубрике Плагины есть все, что вам надо :) Седьмой пост сверху.
Не помогает. Эту фичу я прописал еще месяца два назад. Сначала вроде попустило, а потом всё вернулось на круги своя: масса регистраций ников/блогов с именами типа fritrathothutr, emobwahaha, stuchemetriduc, brucefinley1966 и т.д. Базу, твари, раздувают своими бесполезными регами, +8 таблиц каждый раз…
wcp,
а регистрация через активацию?..
тупые боты не могут получать почту и активировать свои логины :)
@Александр:
Они могут через форум или напрямую с файлом wp-signup.php работать.
@wcp:
Прочти:
http://perishablepress.com/press/2009/12/22/protect-wordpress-against-malicious-url-requests/
http://perishablepress.com/press/2009/03/16/the-perishable-press-4g-blacklist/
Может помочь.
slaFFik,
а если делать редирект?..
Александр,
Редирект с какой страницы? Типа сделать копию файла wp-signup в файл reg.php (к примеру) и в htaccess сделать перенаправление на этот новый? Вариант…
Пролистал свои списки блогов/юзеров и собрал адреса, с которых в основном регались спамеры. Внес в черный список в “параметрах” – с начала года ни одного мусорной регистрации:
pisem.net
myspacee.info
emaildesechable.info
trikapalanet.net
raffinato.fr
iwantmail.org
sellthenrent.org.uk
mysace.info
host-a-site.info
onlq.com
alabonnebranlette.com
wcp,
ТТТ ни одной мусорной :)
slaFFik,
/wp-login.php, или на /registration
@wcp:
Круто, список хороший! СПАСИБО!!!
@Александр:
Что такое ТТТ?
И на registration лучше, по-моему.
ТТТ – тфю три раза (выражение такое ;) )
U menya naverno ne rabotaet ( .. shto ya ne tak delal . please help
для последних версий WP и BP это все еще актуально или нет?
спасибо!
Думаю, что еще да.
Проверьте :)
А как же быть с тем что уже давно спам-боты передают в заголовок header параметр user-agent? Неужели нету качественного решения с борьбой по регистрации ботов? ((((
Не понимаю, про какую папку тут речь? Какой именно .htaccess? В какой папке? Явно не про корень сайта.
“Открываем файл .htaccess, который находится в корне вашего WPMU сайта правильным редактором.” – что за папка такая WPMU? У меня такой нет.
Если речь о плагине, то где ссылка на него? В поиске WP под этим ключом очень много всего.
Можно описать подробнее?
Спасибо.
.htaccess
в корне сайта – как в посте и написано – в корне сайте.WPMU – это то, что было до WP 3.0, сейчас это называется WPMS.
Ни о каком плагине речи не идет.
Написано и так подробно.