]]>
ваш баннер
]]>

Блог на WordPress. Есть ли надежная защита от спама?

10 мая, 2008

Akismet logo
С недавних пор для борьбы со спамом я использую службу Akismet.

И должен сказать, что работает она не плохо. Количество спама существенно уменьшилось. Если до установки в день приходило 10-20 спамерских трекбеков и около 10 бессмысленных комментариев, явно добавленных вручную, то через пару недель после установки Akismet спамеры похоже обо мне забыли (как бы не на каркать :-) ).

Т.е. спам появляется, но гораздо реже. То количество, которое раньше появлялось за день сейчас приходит за недели 2-3, и оседает в спам-фильтре. Конечно, туда попадают и нормальные комментарии (за 2 месяца – штук пять). Поэтому списки спама приходится регулярно просматривать.

Но я не об этом. На днях заметил одну интересную особенность Akismet. Похоже, кто-то просто игрался с формой добавления комментариев и оставил такой коммент:
Имя: m
eMail: g@mail.ru (вряд ли он настоящий)
URL: отсутствует
Текст: <code></code><em><strong> (т.к. текст состоит только из тегов, комментарий выглядит пустым).

И Akismet спокойно пропустил этот комментарий.

Я понимаю, что отнести его к спаму сложно, т.к. отсутствует ссылка, т.е. спамер не получит никакой выгоды.

Но с другой стороны в FAQ Akismet написано.

Цитирую:

When a new comment, trackback, or pingback comes to your blog it is submitted to the Akismet web service which runs hundreds of tests on the comment and returns a thumbs up or thumbs down.

Перевод:

Когда новый комментарий, трэкбек или пингбек приходит на ваш блог, он отправляется на веб сервис Akismet, который пропускает его через сотни тестов и возвращает решение, принять или отклонить.

Интересно, какие именно тесты из этих сотен прошел комментарий?

Очень похоже на то, что Akismet просто проверяет, есть ли ссылки и только после этого запускает остальные тесты.

В общем-то, логика здесь есть. Нет ссылок – нет выгоды спамеру, нет выгоды – значит это не спам.

Но может возникнуть другая проблема. Если кто-то просто решит завалить ваш блог мусором, то чистить его придется исключительно ручками.

А что вы думаете по этому поводу? Может кто-то работал с другими службами?

Понравилась статья? Подпишитесь на продолжение rss link !

]]>

Добавьте эту страницу в google.com bobrdobr.ru del.icio.us technorati.com linkstore.ru news2.ru rumarkz.ru memori.ru moemesto.ru

]]>

Опубликовано в WordPress, Разное

]]>

Комментарии (21)

Вы можете отслеживать обсуждение записи с помощью RSS 2.0 rss link

Вы также можете оставить комментарий, или трекбек с Вашего сайта.

  1. FX Poster 10.05.2008 в 22:20 (Ответить)

    > Если кто-то просто решит завалить ваш блог мусором, то чистить его придется исключительно ручками.

    Хм… Так вот в том-то и проблема - а что считать мусором? Определить, есть ли какой-нибудь смысл в комментарии, в большинстве случаев нереально. Особенно если хотя бы пытаться учитывать тематику поста, на который, собственно, отвечают.

    Один из вариантов - отметить в WP галочку “Comment author must have a previously approved comment” и периодически просматривать то, что попадает в спам. Список читающих и комментирующих (регулярно) пользователей весьма невелик, так что за несколько постов ты большинство авторов комментов зааппрувишь…

    1. Владимир 11.05.2008 в 19:30 (Ответить)

      >> Определить, есть ли какой-нибудь смысл в комментарии, в большинстве случаев нереально.

      Полностью согласен. Я имел ввиду, что если вы кому-то сильно не понравились, он может специально отправлять комментарии с отдельными фразами из какой-нибудь статьи (может даже по близкой тематике), а у вас на проверку и модерацию этих комментариев уходить больше времени чем у него на добавление. (Ситуация конечно придуманная, в реальной жизни не слышал что кто-то с этим сталкивался, и надеюсь не услышу).

      >> отметить в WP галочку “Comment author must have a previously approved comment”

      Чтобы обойти достаточно отправить один хороший комментарий и подождать денек.

      P.S. А вообще, пока у блога посещаемость невысокая больших проблем со спамом не будет, а вот как решают проблему раскрученные ресурсы - вопрос интересный.

      1. FX Poster 11.05.2008 в 19:41 (Ответить)

        Чтобы обойти достаточно отправить один хороший комментарий и подождать денек.
        Если честно, за прошедший год я у себя такого не наблюдал. :)

        А относительно высокопосещаемых сайтов - как ни странно, но там количество комментариев ненамного больше, чем у низкопосещаемых - посмотри хотя бы на интернетные штучки, зато спама, ИМХО, там намного больше => соответственно, существует граница в известности/посещаемости, после которой комментарии следует переключить в режим премодерации, так как удалять спам станет сложнее, чем аппрувить нормальные комменты. Всё ИМХО.

        1. Владимир 12.05.2008 в 19:28 (Ответить)

          >> существует граница в известности/посещаемости, после которой комментарии следует переключить в режим премодерации

          и нанять секретаря, чтобы этим занимался :-) (лучше, конечно, симпатичную секретаршу :-) )

  2. Sam 12.05.2008 в 11:12 (Ответить)

    У Akismet есть проблема: когда начинают действительно засыпать спамом — в спам попадают и нормальный сообщения.

    1. Владимир 12.05.2008 в 19:31 (Ответить)

      К сожалению эта проблема проявляется не только при большом количестве спама.
      Как справедливо заметил FX Poster, определить есть ли смысл в комментарии практически не реально. Ошибки будут даже при ручном модерировании, особенно если комментируют не пост, а другой комментарий.

  3. Алексей 19.05.2008 в 12:38 (Ответить)

    Володь, может вопрос и оффтоповый, но… Я изучая ежедневно много блогов, пришел к выводу, что ваш наиболее удачный с образовательной точки зрения! Проводите ли вы любой формы семинары или тренинги? И как относитесь к дистанционному обучению? Вопрос не несет коммерческой подоплеки и является идеологическим!!! )))

    1. Владимир 19.05.2008 в 15:48 (Ответить)

      Спасибо, конечно, но называть мой блог наиболее удачным еще немного рановато :-)

      Семинары и тренинги я не провожу. И, честно говоря, не очень их люблю. Т.е. я не против семинаров, но в программировании чтобы в чем-то разобраться нужно гораздо больше времени чем длится семинар. Поэтому на таких мероприятиях можно успеть только посмотреть на чье-то решение и послушать доклад (зачастую рекламных).

      А вот дистанционное обучение интереснее.

      В теории при грамотной реализации оно может давать образование не хуже стационара, но тут есть два момента:

      1) практически все технические специальности (программирование пожалуй единственное исключение) требуют проведения лабораторных занятий в спец. аудиториях, попросту говоря, нужна оборудованная лаборатория. Как это реализовать дистанционно не представляю.

      2) на стационаре на студента постоянно “давят” в разных формах (контрольные, семинары, профилактические беседы :-) ), а при дистанционном обучении у студента самодисциплина должна быть выше (если, конечно, нужны знания, а не “корочки”).

      К тому же я знаю несколько “реализаций” дистанционного обучения, которые ничем не отличаются от обычной заочной формы.

      1. Алексей 19.05.2008 в 18:18 (Ответить)

        Володь, спасибо за ответ! Я рад, что люди формирующие приращение знаний в твоем лице, пусть в виде блога или любым другим способом, осознают проблемы и неэффективность ДО сегодня. По этой проблематике мы открыли блог, что убедится на верном ли мы пути. Целью является формирования такого сервиса который позволит избавится от всех вышеописанных проблем и принести в мир новое дистанционное обучение! Если интересно подробнее общаться на эту тему, загляни к нам на страничку. Буде очень рад видеть тебя среди подписчиков и активных создателей контента!!!

        1. Алексей 19.05.2008 в 18:19 (Ответить)

          наш блог:

          1. Алексей 19.05.2008 в 18:20 (Ответить) (Достигнут максимальный уровень вложенности комментариев)

            блог

  4. Dimka 20.05.2008 в 21:09 (Ответить)

    Многие хвалят Akismet. Только сейчас начали требовать какой-то код, чтобы плагин работал. И не один раз уже слышал, что при регистрации (для получения кода) возникают проблемы, поэтому некоторая часть блогеров устанавливают другие плагины.
    На одном из блогов видел описание какого-то другого плагина (не помню как зовут его) так изготовители оного говорят что при его создании использовалась то ли чёрная магия то ли просто магия :)
    И говорят что работает ничуть не хуже Akismet-а.

    1. Владимир 21.05.2008 в 11:41 (Ответить)

      С кодом никаких проблем не было. Достаточно зарегистрировать аккаунт на wordpress.com и код активации будет в письме вместе с другими данными аккаунта. Вся операция заняла от силы минут десять.

      Кстати, по условиям лицензии Akismet перестает быть бесплатным если вы зарабатываете с блога более 500$/мес.

      И, конечно, Akismet не единственная служба. Просто принципы работы у них очень похожие, а вот насчет магии не знаю :-) , тут как повезет.

  5. oqbo 22.05.2008 в 08:52 (Ответить)

    Я в своих блогах использую связку Akismet и самописный тест на проверку. Помогает хорошо.

  6. Виктор 22.05.2008 в 13:43 (Ответить)

    Хорошая статья, познавательная и информативная.
    Спам был, есть и будет есть, как это неприскорбно.

  7. Миша 22.05.2008 в 20:00 (Ответить)

    Лично я использую Wordpress. Это один из самых популярных блог-движков, потому он наверное и лучше всего изучен спаммерами. Роботы без проблем генерируют валидные имейлы, ели это обязательное поле и т. п. Дальше я опишу, как можно защитить Ваш Вордпресс от спама, потратив всего 5 минут. Дальше считаю, что читатель немного знает PHP и HTML, и имеет доступ к файлам Wordpress на сервере.
    Для добавления защиты, понадобится модификация 2х файлов: comments.php (это файл из темы) и wp-comments-post.php - из корневого каталога WP. В comments.php добавляем текстовое поле (например, непосредственно перед полем для тела комментария, обратите внимание на то что немного выше идет проверка типа is user logged in так что лучше добавить поле после нее):
    = 2×2 Я, например, предлагаю пользователю вычислить 2х2. Это довольно интернациональный, лаконичный и простой способ. Теперь в файле wp-comments-post.php добавляем проверку:

    $comment_2×2 = trim($_POST[’comment_2×2′]);

    if($comment_2×2 != 4)
    die( __(’Sorry.’) );

    Я сделал так, если отцы PHP увидят баги, надеюсь, они меня поправят. А в целом как видим, все предельно просто. Думаю, теперь что спама станет хоть немножечко меньше. Вот и все.

    1. Владимир 23.05.2008 в 12:13 (Ответить)

      Миша, спасибо! Вариант хороший.
      Только я немного придерусь :-) .

      Во-первых, то что вы сделали называется captcha и для WP написана куча соответствующих плагинов.
      Например, я использую в этом блоге Math Comment Spam Protection. Кстати, очень похоже на ваш вариант, только посетителю предлагается сложить два числа.

      Во-вторых, в вашем варианте ответ на вопрос не меняется, поэтому если ваш блог получит высокий PR и/или тИЦ, то спамеры очень быстро изменят свои боты так, чтобы они вставляли четверку в ваше дополнительное поле.

      В-третьих, captcha в принципе не решает проблему спама, который оставляют люди, а не боты. Такие комментарии приходится модерировать вручную или использовать службу вроде akismet, только эти службы часто ошибаются.

  8. Владимир 23.05.2008 в 18:55 (Ответить)

    Я отказался от акисмеда - все комментарии подряд помечал как спам, а мне такой фильтр не нужен. Я написал программу под Windows - коммент клиент. Это типа почтового клиента, но для комментариев Wordpress. Очень удобно - для управления комментариями теперь не нужно заходить в админскую панель: все можно делать из клиента, то есть редактировать, удалять, одобрять, помечать как спам и так далее. Чтобы коммет клиент мог удалено управлять комментариями написал плагин - коммент сервер, где реализовал xml-rpc функции для доступа к комментариям. Одной из интересныых фич плагина является возможность разделяемого комментирования: если на вашем блоге и на блоге, куда вы хотите отправить комментарий установлен плагин, то комментарий можно отправить через свой блог - тогда комментарий будет у вас на пециальной странице и там, куда вы его отправвили.

    Что то я много букв написал. Коммент клиент все равно не снимает проблемы спама, например ко мне много валилось спама на английском - написал простой плагин, который пропускает комментарии с русским теекстом, дтак что комментарий с одними тегами у меня не прохдит: еще на до добавления в базу он убивается.

    1. Владимир 23.05.2008 в 20:13 (Ответить)

      Интересный вариант, можно было сразу прямую ссылку на плагин оставить :-) .

      В принципе в движке WP частично этот функционал уже реализован (Настройки-Обсуждение-Направить мне письмо, когда:…), но клиент, конечно удобнее (насколько я понял он авторизируется сам через XML-RPC).

      Но, вы правильно заметили, проблему он не снимает. Если придет много спама, то все равно ручное модерирование отнимет слишком много времени.

      У меня за несколько месяцев работы акисмет заблокировал только 5 или 6 нормальных комментариев.

      Один раз он отфильтровал спамерский коммент, который я бы пропустил при ручном модерировании. Какой-то умник сделал ссылками смайлики (я сразу не заметил), а в контактных данных никаких ссылок не давал.
      В общем, я не спешу отключать акисмет.

  9. Владимир 23.05.2008 в 21:19 (Ответить)

    Давать ссылку в первом комментарии - сразу попасть в спам - уж более чем уверен, что мой комментарий был бы помеченным, так как когда акисмед был у меня установлен, то он все пингбеки помечал как спам, ну и так далее. И так ссылки - плагин коммент клиент:
    http://blogclient.ru/download/commentserver.zip

    во время активизации плагин создает страницу “Мои комментарии” и добавляет ссылку на форму комментирования для коммент клиента. Страница и ссылки убираются в контрольной панели. Далее коммент клиент (1.6Mb):
    http://blogclient.ru/download/wpcommentclientsetup.exe

    для работы которого требуется уже активизированный плагин. Апи для комментариев я придумал лично сам - разработчики WordPress знают о моей разработки, ну и как оно всегда бывает что может быть в будущих версиях включат в ядро… Ну там у меня еще скандал разгорелся - клиентская часть у меня не является open source, на что они обиделись. Ну это лирика. Все вызываемые функции через xml-rpc требуют логина и пароля естественно. Ссылку на плагин не пропускающий комментарии не на русском не помню, но есть точно у меня на:
    http://blogclient.ru/downloads/

    Ситуацию с замаскированными ссылками в коммент клиенте вряд ли бы пропустил - две закладки для просмотра комментариев - браузер и текстовый редактор, где виден исходный html

    1. Владимир 24.05.2008 в 19:27 (Ответить)

      >> Давать ссылку в первом комментарии - сразу попасть в спам

      Это не проблема. Если комментарий хороший и в тему - сразу же восстанавливаю.

      Просмотр комментариев в виде html - действительно нужная вещь.

Оставить комментарий

Введите ваш комментарий

* - обязательные для заполнения поля

Quicktags:

]]>