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