Как защитить 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.
- Используйте заголовки ответа HTTP 403, если хотите отслеживать журналы доступа Apache.
- Использование файлов syslog для мониторинга неудачных попыток входа в систему.
- Использование пользовательского файла журнала для мониторинга неудачных попыток входа в систему.
Отслеживайте журналы доступа 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) имеет разрешение на запись в указанный файл.
Дополнительная информация: