Защита WordPress от брута.

Если Вы ещё не сталкивались со злыми дядьками пытающимися завладеть доступом к вашему сайту, Вам очень повезло. Но рано или поздно они начнут Вас одолевать. Чаше всего атакам подвергается форма логина сайта, вить за ней всё самое вкусное. В данной статье я расскажу как спрятать форму логина WordPress и пару нужных файлов, как ограничить количество неверных паролей и ещё пару полезных фишек.

Защита WordPress, снижение нагрузки (CPU) на сервер хостера.

Недавно столкнулся с большой загрузкой CPU на хосте, полазив по логам, обнаружил большое кол-во запросов к таким страницам:

  • «wp-login.php»
  • «xmlrpc.php»

Общее количество запросов в день превышало 83 тысячи. Как Вы понимаете это не очень положительно влияет на производительность сервера. Исходя из этого нам необходимо запретить хацкерам возможность брута и вообще доступ к форме логина WordPress. Вариантов масса, от различных плагинов, до полного запрета доступа в файле .htaccess. Расскажу о парочке из них.

Запрещаем всем доступ к форме логина.

Если у Вас не динамический IP, то Вы можете на корню запретить доступ к файлу /wp-login.php, указав для доступа только свой IP. Но тут есть ряд сложностей, если Вы захотите зайти с другого места, то у Вас нечего не выйдет. Да и если Вы работаете в паре и доступ нужен не только Вам к админке, то такой вариант не для нас. Но если Вам подходит такой вариант, то необходимо добавить в файл .htaccess (находиться в корне сайта, если нет, то создайте) следующий код:

Вместо IP «31.100.30.123» прописываете свой IP.

Плагин «Login LockDown».

Самым простым вариантом будет установить плагин «Login LockDown», при помощи него Вы можете ограничить количество попыток ввода неверных данных, после чего IP злоумышленника попадёт в бан лист, по умолчанию на час. Плагин достаточно прост в настройке, думаю разберётесь.

Login LockDown

Login LockDown

Двухфакторная аутентификация.

Грубо говоря, для того что бы получить доступ к форме логина WordPress и запустить обработку файла /wp-login.php, вначале необходимо ввести логин и пароль в другой форме. Таким образом получается, что нам необходимо два раза авторизоваться, первый получаем доступ к форме, второй раз заходим в админку. Это значительно снизит нагрузку на сервер, так как дело не доходит до файла /wp-login.php. Для этого нам необходимо проделать ряд действий.

Двухфакторная аутентификация

Двухфакторная аутентификация

Для начала создаём файл .htpasswd, в него вставляем связку «логин:пароль», естественно пароль в зашифрованном виде. Для получения нужной связки можно воспользоваться онлайн-сервисом, в интернете их масса, например этим. Можно сделать несколько связок, каждая на новой строке.

Внутри файл будет выглядеть примерно так:

Закидываем файл на сервер, рядом с файлом .htaccess. Далее нам необходимо внести изменения в файл .htaccess. Добавляем туда следующий код:

Вместо пути «/var/www/site.net/.htpasswd» укажите свой путь. Если вас одолевают боты, данный метод значительно снизит нагрузку на сервер, и хостер скажет Вам спасибо.

Прячем вход в админку WordPress.

Каждый кто ставил WordPress знает как попасть в админку. Этим же пользуются и боты для брута. Что может быть проще чем набрать стандартную ссылку и начать взлом? Так давайте усложним им жизнь и изменим стандартные ссылки на нашу форму авторизации и админку. Для этого в файле .htaccess добавляем следующий код (Важно: код должен быть в самом верху файла):

  • Вместо «pecehnek_vsem_adminam» вписываем Вашу ссылку, по которой Вы бы хотели попадать в админку. Ссылка будет вида: site.net/pecehnek_vsem_adminam/.
  • Вместо «site.net» указываем адрес своего сайта.
  • «randomniy_klych» меняем на любой набор символов, например g453rg5u7453g5y46u4y3454tg.

В результате при попытке перейти на страницу /wp-login.php или /wp-admin будет редиректить на страницу 404 (/not_found). А попасть в админку можно по новому адресу site.net/pecehnek_vsem_adminam/ (либо /wp-login.php?randomniy_klych).

Закрываем доступ к файлу xmlrpc.php.

Закрыв доступ к данному файлу повлечёт за собой запрет на написание и публикацию статей с внешних приложений и смартфонов. В большинстве случаев данную функцию некто не использует. Поэтому смело закрываем к нему доступ и обламываем кайф злоумышленникам. В файл .htaccess добавляем следующий код:

Блокируем IP злоумышленника.

Ну и самый быстрый способ избавиться от надоедливого зловреда, это заблокировать его IP. Делается это просто. В файл .htaccess добавляем следующий код:

Вместо IP «123.123.123.123» указываем IP злюки, и он навсегда в бане (или пока не сменить IP).

Есть ещё море нюансов, типа сложности пароля, удаления логина «admin», изменение префикса в БД и так далее. В принципе всё из вышеперечисленного спасёт Ваш сайт от зловредных ботов и хацкеров и значительно уменьшит нагрузку на сервер хостера. Но идеальных решений нет и всегда есть дыры в которые кто-то хочет попасть, всё зависит от желания и умений.

На этом пожалуй всё. Не забывайте пользоваться кнопками «Поделиться в соц. сетях», так же подписываться на наш Канал и группы в ВК, Twitter, Facebook.

«Да прибудет с Вами сила!». Всем удачи и море печенек!

Один комментарий

  1. ygosqko

    Спасибо за информацию!!!!!

Лицензионное соглашение

Авторские права публикуемых материалов полностью или частично принадлежат авторам сайта Pechenek.NET в соответствии со статьями 1252 и 1301 ГК РФ. Любое распространение должно быть согласовано с автором материала или с указанием ссылки на первоисточник.