cloudflare-https

После того, как мы перешли с http на https, используя SSL-сертификат от CloudFlare, появляется одна из особенностей — реальный IP ваших посетителей подменяется одним из IP адресов сети самого CloudFlare. Эти IP можно видеть, например, в комментариях, оставленных пользователями.

Это же теперь будет относиться к возможным попыткам брутфорс атаки на wp-login.php. IP ботов также будет подменяться, поэтому стандартные решения типа ограничить количество попыток авторизоваться, путем блокировки IP, с помощью таких WordPress плагинов, как например WP Limit Login Attempts уже не будут работать должным образом.

Существуют некоторые плагины, которые восстанавливают реальный IP, но часто просто как дополнительную опцию внутри плагина, т.е имеют избыточный функционал в рамках такой задачи, например плагин Wordfence. Также есть решение от самого CloudFlare в виде модуля для Apache — mod_cloudflare. Что тоже подойдет не всем.

Воспользуемся возможностями CloudFlare, защиты wp-login.php от brute force атак путем добавления нового правила на вкладке Page Rules:

protect wp login with cloudflare

Самое важное здесь, кроме формата самого правила example.com/wp-login.php.* : опции Security — On, Security Level — I’m under Attack, Browser Integrity Check — On. Бесплатный тариф от CloudFlare на данный момент ограничен возможностью добавить всего 3 правила в этом разделе.

Побочным эффектом может стать то, что вы сами будете видеть экран проверки браузера при попытке заново залогиниться (если делали выход или куки просрочены). Если у вас белый IP (постоянный), то лучше всего его добавить в белый список на вкладке Firewall, тогда такая проверка производиться для вас не будет.