Написанное относиться в версиям Друпала 5,6,7.
Всё изложенное - личный опыт. А значит, не IMHO, но имеет естественные ограничения. То есть дополнения принимаются, возражения по существу сказанного - нет. Я не силён в друпале как кодер. Но с большим опытом эксплуатации, начиная с 4.5. Это, вроде, уже больше пяти лет.
Пару слов о закрываемых формах. Материалы, доступные анонимным пользователям, регистрация пользователей, комментарии пользователей, различные формы контактов и гостевые книги.
Существует четыре способа борьбы со спамом в друпале. Ну или, точнее, четыре способа борьбы со спамом на сайтах, созданных на CMS Drupal. Причём по тому же личному опыту именно эти способы и только эти способы. Всё остальное рано или поздно роботы пробъют.
Условно можно разделить их на способы, реализуемые при помощи модулей внутри друпала, внутренние комментарии подключаемая сторонняя фильтрация спама и подключаемые сторонние сервисы комментариев.
Коротко. Шаг вправо-шаг влево. Считаешься спамером
Суть. Совмещение различных способов распознавания и блокировки спама, реализуемых несколькими модулями. То есть, во-первых, блокировка сообщений, содержащим множество http ссылок. Во-вторых, предложение комментатору поставить галку "Я не спамер", что спам-роботы обычно игнорируют. И наконец, подстановка дополнительных полей скрытых при помощи css, не видных обычному пользователю и т.д.
Совместное использование следующих модулей
- Spamicide
Для седьмой, шестой и пятой версии Друпала
- Block Anonymous Links
Для седьмой, шестой и пятой версии Друпала
Есть модификация модуля под шестой друпал, позволяющая устанавливать точное количество http ссылок в сообщении, после которого сообщение будет блокироваться.
- Simple AntiSpam
Для шестой версии: Пишем простой модуль защиты от спама | xandeadx.ru
Simple AntiSpam для пятой версии движка легко бэгпортируется заменой аргументов hook_form_alter.
Hidden CAPTCHA (для 5,6,7 версии), соответственно, вместе с модулем CAPTCHA
По правде говоря, вам вполне может хватить сочетания любых двух модулей из этой четвёрки. Три из четерёх перечисленных модулей гарантированно закроют вход зловредным роботам. Однако я рекомендую держать наготове (в каталоге дополнительных модулей) все четыре.
Отдельно советую использовать модули получения комментариев на почту (например Comment Mail /5,6/, или его аналоги), чтобы мониторить результативность модулей, и, разумеется, включить запись действия вышеперечисленных модулей в логи (для тех модулей у которых предусмотрено это отдельной опцией).
Если ваш сайт заспамили и он находился в загаженном состоянии несколько месяцев. Придётся потерпеть и поставить все эти модули. И внимательно последить-побороться пару месяцев, пока вы не исчезните из баз спаммеров, как потенциальная лёгкая жертва.
Коротко. Спам робот теряется в нестандартных формах отправки комментариев-материалов.
Это второй инлайн, внутридвижковый, внутрисайтовый способ, требует подключения модуля ckk и немного фантазии.
Способ относиться к сайтам, где комментарии и отправка некоторых видом материалов разрешены анонимным пользователям. Относится прежде всего к публикации нод, а не комментариев. Может быть применён к комментариям при условии установки дополнительных модулей, позволяющих присоединять ckk формы к комментариям.
Надо сказать что сложные состоящие из множества полей и групп материалы ckk сами по себе являются препятствием для спам-ботов. Так было примерно четыре, три, два года назад, но не сейчас.
Например у меня на сайте brnk.ru с некоторых пор роботы стали заполнять и постить некоторые материалы.
Делаем ещё одно поле ckk и превращаем его в простейшую капчу.
Введите телефонный код города Брянска 4832
В другой форме: "введите год основания города Брянска".
Эти материалы ещё и в некоторой мере отсеивают материалы не относящиеся к тематике сайта, а именно к г. Брянску
На сайте ecolib.ru я использовал ещё более очевидное решение: "введите в поле название домена".
В настройках поля ckk, используется обязательный аргумент (скриншот).
Надо сказать что модулей - spamcide из предыдущего способа использует очень похожий принцип.
Регистрация пользователей закрывается аналогично нодам с использованием модуля Content Profile, то есть профайлы пользователей становятся нодами, к которым можно привязать поля ckk .
Ещё раз. Для памяти.
Нестандартные поля, обязательные к заполнению, особенно со строгим списком значения, сами по себе являются великолепными антиспам средствами, без установки дополнительных модулей. Поэтому если ваш сайт завязан на матераилах незарегистрированных пользователей и идея сайта позволяет творчески переосмыслить поля в публикуемых материалах, делайте это!
Далее условно внешние способы фильтрации спама.
Коротко. Комментарии на вашем сайте. Их проверка на стороннем сайте.
Пока не использую, но если делать большой сайт с внутренним комментированием, то стоит использовать, хотя бы для того, чтобы разгрузить свой сервер.
Вынос комментариев во внешние внедряемые в сайт сервисы: Фейсбук, вконтакте и дискус.
Именно эти три сервиса на 90 процентов перекроют всю вашу аудиторию. Всё зависит от того зачем вам комментарии. К конкретной статье или, возможно, ко всему сайту. Возможно вас устроит даже один reformal вообще без всяких заморочек. Это может быть прямое использование api сервисов путём темизации и сниппетов или же при помощи модулей.
При совместном использовании здесь пригодится ещё модуль Quick Tabs для реализации переключения между системами через закладки.
См. форму комментариев к этому сайту. Я ещё сам до конца не протестировал этот способ, поэтому воздержусь от оценки его трудоёмкости и способа модерации. Но сам буду использовать во всех новых проектах.
Я не сказал про все существующие модули. Лично мне кажется бесполезными и трудоёмкими все, основанные на .
Я обошел внимением некоторые тонкости вроде малозначимых здесь ньюансов отличия борьбы со спамом разрешенных и анонимных комментариев и сайта заспамленного в результате неконтролируемой регистрацией пользователей уже после регистрации спам-ботов в качестве пользователей. Здесь не обойтись без триггеров и пользовательских рангов-ролей. Но мне это не интересно.
И наконец, немного повторюсь подводя итоги. Что же использую я?. Первый способ. Второй способ для материалов, но не для комментариев (здесь пока обхожусь первым). Частично третий способ на этом сайте. Но на новых сайтах буду комбинировать третий и четвёртый для комментариев и второй для материалов. Всё идёт к тому, что даже комбинация нескольких модулей и способов борьбы на локальном движке будет либо обходится роботами, либо становится неудобной для пользователей-людей и борьба со спамом при помощи нескольких модулей в комментариях самостоятельно будет слишком трудозатратна. К тому же многие уже привыкли или привыкнут (или их приучит те же 3dnews.ru и mobile-review.com) оставлять комментарии под своими аккаунтами в соцсетях или под OpenID.
Я затеял эту заметку в том числе и потому, что уже через год придётся придумывать новые или варьировать старые способы борьбы со спамом. Памятка для себя. Побеждённый спам уже не так раздражает, на правда ли?
Update февраль 2014. Дополнительно читайте это: http://xandeadx.ru/blog/drupal/701
Комментарии
Re: Борьба со спамом в комментариях и материалах на Друпале ...
Нормальная статья. Сайт делаю, купил пару ссылок на сапе и откуда то 18 комментов оставили соссылками, причем не только у меня по плагиатусу проверил. Кажется эти самые веб мастера которые заявки принимают и спамят направо и на лево. Уроды.
Re: Борьба со спамом в комментариях и материалах на Друпале ...
Добавить комментарий