Поскольку существующие сервисы по борьбе со спам ботами работают не всегда эффективно, а иногда под их действия попадают ни в чем не повинные живые люди, в июле месяце 2019 года мной был разработан компонент SPAM OBORONA, который решает вопрос защиты сайта от спама в Joomla

Перейти на страницу скачивания компонента

Установка и настройка

После скачивания архива с расширениями, его необходимо распаковать. В архиве находятся два расширения:

com_spam_oborona.zip — собственно, компонент. Устанавливается первым

plg_spam_oborona.zip — плагин. Обязателен для установки.

Оба расширения устанавливаются стандартно. Через менеджер расширений Joomla.

В 2021 году компонент был полностью переработан. Новая версия успешно работает со всеми установленными на сайте расширениями и предотвращает рассылку спама абсолютно со всех форм.

Настройка защиты от спама

После установки компонента и плагина, необходимо настроить компонент, который можно найти в административной панели в меню «Компоненты — SPAM OBORONA - Логи»

Далее в правом верхнем углу нажимаем на кнопку «Настройки». Откроется новая страница, где необходимо указать необходимые параметры.

Если вы желаете, чтобы компонент анализировал содержимое отправляемых форм и блокировал сообщения, где присутствуют так называемые «стоп слова», переключатель «Проводить проверку на стоп слова» необходимо установить в положение «Да».

Хочется заметить, что даже при отключенной проверке на стоп слова, «СПАМ ОБОРОНА» будет успешно работать и блокировать сообщения от спам ботов. Проверка на «стоп слова» будет полезна от реальных посетителей сайта, которые, через ваши формы обратной связи, будут пытаться отправить вам нежелательные сообщения.

Компонент фиксирует каждый запрос к вашему сайту и анализирует запрос на признак спама. Запросы хранятся в разделе «Логи» и чуть позже мы подробно о них поговорим. Логи могут создаваться ежеминутно. И даже ежесекундно. Это зависит от посещаемости вашего сайта, а также от того, насколько ваш сайт «понравился» спам ботам.

Хранить логи вечно нет смысла, поэтому они удаляются через определенный промежуток времени, который задается в параметре «Время хранения логов (в минутах)»

Существуют компоненты, которые нет необходимости проверять на спам, однако вся их суть состоит из формы и результатов ее данных. В частности, это компонент поиска (com_search). Поэтому в выпадающем списке "Не проверять компоненты" мы укажем "com_search"

Самостоятельное удаление из спам листа

Если переключатель «При добавлении в спам перенаправлять посетителя на страницу самостоятельного удаления из спам-листа» установлен в положение «Да», то после добавления в спам лист посетитель будет перенаправлен на страницу, где получит возможность доказать свою причастность к Homo sapiens.

Выглядеть это будет так, как показано на рисунке ниже:

При вводе правильного ответа, посетитель будет добавлен в белый список и в будущем его IP проверяться не будет.

Что нужно сделать, чтобы перенаправление заработало?

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

Тип пункта меню:

SPAM OBORONA - Страница, где посетитель сайта может самостоятельно удалить себя из спам листа

Раздел «Логи»

Все POST и GET запросы к сайту пишутся в раздел «Логи». Запросы, которые не вызвали у «SPAM OBORONA» подозрений помечены, как опубликованные.

Если снять лог с публикации, то IP, из под которого совершался запрос, будет добавлен в черный список. Увидеть данный IP можно в разделе «IP адреса». Он также будет отмечен, как неопубликованный.

То есть, если мы снимаем с публикации лог или IP адрес, то указанный IP будет отмечен, как спам бот и посетить сайт с данного IP не получится, пока он не будет разблокирован.

В разделе «Логи» кроме IP адреса можно увидеть параметры запроса, дату, а также адрес страницы, с которого был совершен запрос.

Раздел «IP адреса»

В разделе «IP адреса» находятся IP адреса, отправленные в черный список. В таблице можно увидеть IP адрес, а также запрос после которого данный IP был заблокирован.

Если нажать на кнопку «Опубликовать» напротив IP, то IP будет добавлен в белый список.

Раздел «Стоп слова»

Если вы помните, на странице настроек мы наблюдали переключатель, который инициировал проверку на стоп слова.

Так вот, мы наконец-то добрались до раздела, где создаются эти самые стоп слова. Если компонент находит в теле запроса стоп слово, то он автоматически отправляет IP, с которого создавался запрос в черный список.

К примеру, если создать стоп слово «http», то будут блокироваться все сообщения, где вставлена ссылка на любой сайт.

Раздел инструменты

Позволяет осуществлять экспорт и импорт заблокированных IP.

Это имеет смысл, когда есть необходимость перенести заблокированные IP с одного сайта на другой.

Настройка плагина

Заключительный этап настройки «SPAM OBORONA» - настройка плагина.

Для этого перейдем в  административной панели в раздела ПЛАГИНЫ, далее в строке поиска наберем «spam oborona»

Откроем плагин на редактирование. 

Здесь нам необходимо заполнить всего два, но очень важных текстовых поля.

Поле "Название поля, где хранится проверочный код" используется на сайте в формах и служит для подсчета "живых" действий посетителя сайта. 

Это поле настолько важное, что спамеры не ленятся анализировать сайт на его наличие и стали отправлять его вместе с запросом к сайту.

Поэтому рекомендую как можно чаще менять  название поля.

Эту задачу можно автоматизировать

Осуществлять с помощью планировщика вашего сервера (CRON).

Чтобы кто попало не мог это делать, необходимо задать ключ в текстовом поле  "Ключ для обращения CRON".

После сохранения настроек станет видимым URL для обращения CRON.

Остается посетить хостинг панель вашего сайта и создать задание для CRON. Например, чтобы он обращался по данному URL раз в сутки. Желательно ночью.

После того, как название поля заполнено, проследим, чтобы плагин был в состоянии «Опубликован» и сохраняем настройки.

Компонент «SPAM OBORONA» готов к работе.

Заключение

Как видим, настройка компонента и защита сайта от спама с помощью «SPAM OBORONA» не вызывает особых сложностей. Тем не менее, если у вас возникли вопросы, с радостью отвечу, как в личной переписке, так и в группе «Вконтакте», добавиться куда можно по ссылке ниже:

https://vk.com/sitogon

С уважением, Владимир Егоров