Блог о программировании, электронике и рыбалке

Ограничение доступа к страничке авторизации WordPress по IP

Главная » Wordpress » Ограничение доступа к страничке авторизации WordPress по IP

страница защита Авторизация Wordpress nginx IP DDOS Apache .htaccess  wordpress  Сегодня просмотрел статистику плагина Limit Login Attempts (Ограничение попыток авторизации в WordPress) и ужаснулся. За 2 недели заблокировано 16 587 IP адресов за неудачные попытки авторизации.

Хорошо конечно, что заблокировано, но серверу от этого не легче. Запросы все равно приходится обрабатывать. А когда их такое количество, то сервер начинает падать.

страница защита Авторизация Wordpress nginx IP DDOS Apache .htaccess  wordpress

Проблему с ботами надо срочно решать. Такой поток обращений создает неслабую DDOS атаку.

Решил применить грубую силу и запретить доступ к авторизации всем, кроме меня. Дома у меня статический IP, поэтому особых неудобств я испытывать не буду.

Приступив к реализации столкнулся с проблемой. Общепринятый метод блокировки через .htaccess у меня не сработал. Сервер блокировал всех и меня вместе с ними.

Умная мысль пришла позже. У меня на сервере стоит связка nginx + Apache – это и вызывало проблему. Благо, не я один такой, поэтому довольно быстро нашел на буржуйском форуме рабочее решение.

В результате, делюсь с вами рабочим вариантом.

Для блокировки доступа к страничке авторизации WordPress по IP необходимо в файл .htaccess добавить следующий код:

# закрываем доступ к wp-login.php
<FilesMatch "wp-login.php">
SetEnvIf Remote_Addr ^186\.157\.61\.44 testrule # поменяйте IP на свой
Order Deny,Allow
Deny from all
allow from env=testrule
</FilesMatch>

Теперь, всем нежеланным гостям будет выдана такая ошибка:

страница защита Авторизация Wordpress nginx IP DDOS Apache .htaccess  wordpress

Нагрузка на сервер сразу снизилась примерно на 50%. Проблема решена.

страница защита Авторизация Wordpress nginx IP DDOS Apache .htaccess  wordpress

logo

1

Добавить комментарий

Яндекс.Метрика