Security Blog
Security Blog
Posted By Gregory

Как защитить WordPress с помощью Fail2Ban


English version: How to protect WordPress with Fail2Ban


Используя WP Cerber Security и Fail2Ban вместе, вы можете усилить защиту на наиболее эффективном уровне. Это позволяет защитить WordPress от грубой силы и DoS-атак на уровне ОС с помощью iptables .

Подробнее об атаках: Брутфорс, DoS и DDoS-атаки – в чем разница?

Примечание. Для настройки Fail2Ban вам необходим root-доступ к вашему Linux-серверу.

С WP Cerber Security у вас есть три варианта использования Fail2Ban.

  1. Использование заголовков ответа HTTP 403, если вы хотите отслеживать журнал доступа Apache.
  2. Использование файлов системного журнала для отслеживания неудачных попыток входа в систему
  3. Использование специального файла журнала для отслеживания неудачных попыток входа в систему.

Мониторинг журнала доступа Apache на наличие ответов HTTP 403

Если попытка входа в систему не удалась, WP Cerber возвращает ответ 403 в заголовке HTTP. Этот ответ будет записан в журнал доступа Apache, и эти записи могут отслеживаться с помощью Fail2Ban. Такое поведение WP Cerber включено по умолчанию. Недостатком этого подхода является то, что Fail2Ban должен анализировать весь файл access.log, чтобы найти такие попытки.

Использование системного журнала для отслеживания неудачных попыток входа в систему

По умолчанию WP Cerber использует функцию LOG_AUTH , когда регистрирует неудачные попытки в файле системного журнала. Однако вы можете указать объект со своей стоимостью. Чтобы установить новое значение, вам необходимо определить константу CERBER_LOG_FACILITY с целочисленным значением. Примечание: чтобы включить запись в системный журнал или пользовательский файл (см. ниже), вам необходимо включить Запись неудачных попыток входа в файл в разделе «Активность» настроек плагина.

 define('CERBER_LOG_FACILITY', LOG_AUTHPRIV);

Использование специального файла для отслеживания неудачных попыток входа в систему

Если вы хотите записать все неудачные попытки в любой пользовательский файл журнала, вам необходимо указать имя файла с абсолютным путем, используя константу CERBER_FAIL_LOG . Не забудьте установить разрешение на запись для процесса Apache в папке или файле журнала и включить Запись неудачных попыток входа в файл . Если файл не существует, плагин пытается его создать. Если CERBER_FAIL_LOG определен, плагин не записывает сообщения в системный журнал по умолчанию.

 define('CERBER_FAIL_LOG','/var/log/fail2ban.log');

Убедитесь, что процесс веб-сервера (Apache) имеет разрешение на запись в указанный файл.

Дополнительная информация:

https://timnash.co.uk/using-fail2ban-wordpress/

http://www.fail2ban.org

https://www.digitalocean.com/community/tutorials/how-fail2ban-works-to-protect-services-on-a-linux-server


I'm a team lead in Cerber Tech. I'm a software & database architect, WordPress - PHP - SQL - JavaScript developer. I started coding in 1993 on IBM System/370 (yeah, that was amazing days) and today software engineering at Cerber Tech is how I make my living. I've taught to have high standards for myself as well as using them in developing software solutions.

View Comments
There are currently no comments.