База знаний Виртуальный хостинг Хостинг для CMS Drupal Как добавить капчу на сайт Drupal? (Google reCAPTCHA)

Как добавить капчу на сайт Drupal? (Google reCAPTCHA)

Защита комментариев и форм обратной связи от ботов в Drupal является важной задачей для владельцев сайтов, использующих данную CMS.  Благодаря удобной системе расширений в Drupal, можно легко защитить Ваши формы и комментарии от спама с помощью reCAPTCHA.

Наш цикл статьей по reCAPTCHA от Google поможет вам понять принципы работы данного бесплатного продукта, который защищает миллионы сайтов в интернете от ботов, а также, поможет интегрировать данный вид защиты на ваши сайты.

В данной статье мы рассмотрим интеграцию reCAPTCHA в Drupal версии от 9.0.

Для начала,  вам необходимо ознакомиться с двумя статьями по reCAPTCHA:
1. В чем отличия между reCAPTCHA v2 и v3? – данная статья поможет вам выбрать тот тип капчи, который вы хотите видеть на своем сайте.
2. Как получить приватный и публичный ключи для reCAPTCHA – в этой статье вы узнаете, как получить API-ключи, необходимые для работы капчи на вашем сайте. Данные ключи понадобятся в момент настройки работы капчи через плагины.

Ознакомившись с данными статьями можно перейти к установке reCAPTCHA на Ваш сайт. Установку мы будем проводить с помощью расширения Update Manager. По умолчанию оно может быть не установлено в drupal, поэтому, в случае его отсутствия,  для начала, необходимо провести установку данного расширения.

Установка Update Manager:

1. Зайдем в панель администратора drupal под вашими данными (страница site.ru/admin, где вместо site.ru надо указать домен вашего сайта).
2. Перейдем в раздел Расширения и введем в поиске Update Manager. Вы увидите плагин ядра с данным названием. Поставьте галку рядом с ним и нажмите Установить:

После этих действий Update Manager будет установлен, а мы сможем перейти к установке reCAPTCHA.

Установка CAPTCHA + reCAPTCHA.

Для работы reCAPTCHA необходимо установить 2 расширения – CAPTCHA и reCAPTCHA, в силу того, что второе расширение работает на основе первого.

1. Перейдем на сайт хранилища расширений drupal, а именно, на страницу расширения reCAPTCHA: https://www.drupal.org/project/recaptcha
И на страницу CAPTCHA: https://www.drupal.org/project/captcha
2. Внизу, найдем раздел Downloads и в нем найдем актуальную версию reCAPTCHA, работающую на необходимой Вам версии Drupal, после чего, скопируем ссылку одного из архивов (tar.gz или zip):


Аналогичную ссылку необходимо будет получить и для CAPTCHA.

3. Перейдем обратно в админку сайта, в раздел Расширения, нажмем на кнопку Add new module:




4. Вставим ссылку, полученную в пункте 2) текущей инструкции, в поле Add From a URL и нажмем Продолжить:



Расширение reCAPTCHA будет установлено на ваш сайт. Аналогичным образом необходимо установить расширение CAPTCHA, ссылку на которую мы предоставили в пункте 1).

Активируем установленные расширения:

5. Вернемся в раздел Расширения в админке вашего сайта, после чего, в поиске введем CAPTCHA. Вы увидите плагин CAPTCHA в результатах поиска, возле него необходимо поставить галку и нажать Установить:



6. Аналогично 5) пункту необходимо установить расширение reCAPTCHA.

Теперь настроим работу API-ключей.

7. Перейдем в раздел админки Конфигурация -> CAPTCHA module settings.



8. Зайдем в меню reCAPTCHA и введем в поле Site key ваш публичный ключ, а в поле Секретный ключ введем ваш приватный ключ от reCAPTCHA v2. Данные ключи вы должны были получить ранее, в соответствии с инструкцией: Как получить приватный и публичный ключи для reCAPTCHA.



9. Сохраним изменения нажав на кнопку:

10. Перейдем в раздел Настройка CAPTCHA и выберем Тип проверки по умолчанию как reCAPTCHA (из модуля recaptcha), а также, поставим галку возле пункта Вызвать по-умолчанию на всех формах:



11. Сохраним изменения нажав на кнопку:

На этом настройка reCAPTCHA на сайте будет завершена. Элементы, связанные с формами регистрации, восстановления пароля, комментариями и так далее, теперь будут защищены капчей.
При попытке воспользоваться данными формами вы будете видеть чекбокс "Я не робот": 



Подведем итоги.

Как вы видите, настройка reCAPTCHA на вашем сайте работающим под CMS Drupal является довольно легкой процедурой, но от того не менее эффективной. После установки и настройки плагинов для работы reCAPTCHA на вашем сайте, вредоносные боты больше не смогут оставлять спам и приносить проблемы связанные с этим вектором атаки.