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. Использование файлов syslog для мониторинга неудачных попыток входа в систему.
  3. Использование пользовательского файла журнала для мониторинга неудачных попыток входа в систему.

Отслеживайте журналы доступа Apache на предмет HTTP-ответов 403.

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

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

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

 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.