Скрыть объявление
Здравствуйте Гость! Не нашли ответа на свой вопрос? Зарегистрируйтесь на форуме, чтобы стать полноценным участником сообщества и задайте свой вопрос! Вам обязательно помогут!

Как защитить админ панель wordpress от ботов и брута без плагинов?

Тема в разделе "Сайтостроение, настройка и технические вопросы", создана пользователем Симбад, 22 июл 2017.

  1. Симбад

    Симбад Пользователь

    Сообщения:
    81
    Симпатии:
    4
    Пол:
    Мужской
    Решил написать небольшую инструкцию как защитить админку wordpress от перебора паролей и ботов без плагинов. Многие скажут, зачем лезть в код, когда есть плагины, которые могут скрыть стандартный адрес админки wordpres, тем самым защитить ее. Так-то оно так, только каждый плагин дает дополнительную нагрузку, какой-то больше, какой-то меньше, а если можно сделать небольшим кодом, то, почему не сделать?

    Все правки будем делать в одном файле, который лежит в корне вашего сайта.

    Имя файла:

    .htaccess

    На самом деле вставка данного кода не займет много времени, но избавит от лишних плагинов.

    Вот что у итоге должно получится (это готовый код, в котором нужно заменить некоторые данные на свои):

    Код:
    RewriteEngine On
    RewriteRule ^urladmin/?$ /wp-login.php?4h5hsh5a589b2ddd20740207357dgrgt6dga6 [R,L]
    RewriteCond %{HTTP_COOKIE} !^.*wordpress_logged_in_.*$
    RewriteRule ^urladmin/?$ /wp-login.php?4h5hsh5a589b2ddd20740207357dgrgt6dga6&redirect_to=/wp-admin/ [R,L]
    RewriteRule ^urladmin/?$ /wp-admin/?4h5hsh5a589b2ddd20740207357dgrgt6dga6 [R,L]
    RewriteCond %{SCRIPT_FILENAME} !^(.*)admin-ajax\.php
    RewriteCond %{HTTP_REFERER} !^(.*)seorunet.com/wp-admin
    RewriteCond %{HTTP_REFERER} !^(.*)seorunet.com/wp-login\.php
    RewriteCond %{HTTP_REFERER} !^(.*)seorunet.com/urladmin
    RewriteCond %{QUERY_STRING} !^4h5hsh5a589b2ddd20740207357dgrgt6dga6
    RewriteCond %{QUERY_STRING} !^action=logout
    RewriteCond %{QUERY_STRING} !^action=rp
    RewriteCond %{QUERY_STRING} !^action=postpass
    RewriteCond %{HTTP_COOKIE} !^.*wordpress_logged_in_.*$
    RewriteRule ^.*wp-admin/?|^.*wp-login\.php /404 [R,L]
    RewriteCond %{QUERY_STRING} ^loggedout=true
    RewriteRule ^.*$ /wp-login.php?4h5hsh5a589b2ddd20740207357dgrgt6dga6 [R,L]
    
    Данный код нужно вставить в самое начало файла .htaccess предварительно внеся небольшие правки под себя.

    В данном коде вход в админ панель будет
    HTML:
    seorunet.com/urladmin
    Вы можете сделать любой url для входа в админку.

    Для этого, везде в коде замените:
    Код:
    urladmin
    
    на свое слово.

    Так же нужно поменять домен на свой:
    HTML:
    seorunet.com

    И последнее, заменить везде данный набор букв и цифр
    Код:
    4h5hsh5a589b2ddd20740207357dgrgt6dga6
    
    Это произвольный набор букв и цифр, можете руками его на клавиатуре нащелкать, но он должен быть ваш уникальный.

    Для удобства замены, используйте блокнот Notepad++ в нем вам будет удобнее поменять во всех строках нужные данные. (поиск-замена).

    Установив данный код, вы скроете стандартный вход в админку wordpress, тем самым скрыв ее от ботов и брута.

    Если у кого есть еще какие советы или инструкции по защите админки wordpress пишите в теме.

     
    Маэстро нравится это.

  2. Next Plus

    Next Plus Пользователь

    Сообщения:
    20
    Симпатии:
    3
    Спасибо за познавательную статью. Много чего нового узнал. Информация по защите сайта всегда будет актуальной, главное не игнорировать меры безопасности.
    Кстати, хотел уточнить, почему надо для замены данных использовать блокнот Notepad++, а не обычны текстовый документ, или майкрософт офис?
     
  3. Симбад

    Симбад Пользователь

    Сообщения:
    81
    Симпатии:
    4
    Пол:
    Мужской
    Так как Notepad++ это редактор кода, а не редактор текста.
    К слову забыл упомянуть после внесения своего кода в файл .htaccess сохранять его нужно в кодировке UTF-8 без BOM иначе сайт может не работать.(к слову если сохранить в word или обычном блокнот, сайт может не работать, как раз из-за кодировки).
     
  4. Альпочино

    Альпочино Пользователь

    Сообщения:
    66
    Симпатии:
    4
    Пол:
    Мужской
    Можно еще по мимо скрытия адреса админки, добавить запрет по работе в админке.
    Можно создать файл .htaccess с таким содержимым:
    Код:
    # Limit logins and admin IP
    <Limit GET POST PUT>
    order deny,allow
    deny from all
    allow from 11.11.111.111
    </Limit>
    и положить данный файл с кодом в папку wp-admin, тем самым запретив вход в админку по ip

    где 11.11.111.111 ваш ip

    если у вас динамический ip можно прописать первые 4 цифры с точкой на конце, так: 11.11.
     
    Симбад нравится это.
  5. Бармалей

    Бармалей Пользователь

    Сообщения:
    31
    Симпатии:
    3
    Пол:
    Мужской
    Можно еще зайти на хостинг и поставить пароль на папку wp-admin, тем самым защищаем доступ и нужно будет вводить два разных пароля, чтобы попасть в админку. Это тоже как вариант для параноиков.
     
  6. Pusadub

    Pusadub Пользователь

    Сообщения:
    34
    Симпатии:
    4
    Пол:
    Мужской
    Какой-то сомнительный метод. Действительно лучше поствить пароль на папку. А от брут форса должен защищать хостинг.
    Так же если это не блог дяди Пети или портфолио Васи Пупкина, а нехилый высоконагруженный проект, то лучше гнать трафик через CloudFlare. Потому что это, цитирую: "The Web Performance & Security Company" (в тайтле их главной странице написано)

    Спортивного интереса ради я настраивал его по мануалам из сети и по документации. Ничего сложного. А если хостер нормальную cPanel загнал на сервак, где CloudFlare можно настроить в несколько кликов, то проблем вообще быть не должно.
     
  7. Здравомыслящий человек

    Здравомыслящий человек Пользователь

    Сообщения:
    96
    Симпатии:
    5
    Я люблю пароли в гугл хроме сохранять, хоть слышал что это не безопасно, но от личного сайта думаю лучше делать так как советует Симбад!
     
  8. Симбад

    Симбад Пользователь

    Сообщения:
    81
    Симпатии:
    4
    Пол:
    Мужской
    Есть три проблемы на бесплатном тарифе.(а 200$ в месяц дорого)

    1. Очень большое количество ip в бане РКН (соответственно трафика из РФ не видать)

    2. Сайты грузятся долго, что не может не влиять на выдачу.

    3. Его бесплатный ssl не принадлежит вашему домену и как я слышал (не подтверждено), тот же google не очень хорошо относится к данному ssl.

    P.s Бесплатный тариф от нормального ddos не спасет в любом случае. И нужен ли CloudFlare с его недочетами, решать нужно самостоятельно.
     
  9. Pusadub

    Pusadub Пользователь

    Сообщения:
    34
    Симпатии:
    4
    Пол:
    Мужской
    Однако, легче ставить плагин. От нормальной атаки все равно ничего не спасет, если кто-то захочет сделать из вашего сайта DDoS бота.

    За информацию о CloudFlare спасибо, однако. Не знал, что все так плохо, и что идиоты Этой Страны продолжают блочить по IP.

    А почему сайты долго грузятся? Вы замеряли как? На каких сайтах? С какой страны? Звучит даже как-то подозрительно, потому что CloudFlare как бы предоставляет content delivery network, что как бы должно "ускорять" сайт.
     
  10. Симбад

    Симбад Пользователь

    Сообщения:
    81
    Симпатии:
    4
    Пол:
    Мужской
    Да пробовал как-то, и после заметил проседание в выдачи, да и так видно что загрузка дольше чем без него. Да и не один я это заметил, многие уже об этом говорят.
    Я думаю, это связано опять же с бесплатным тарифом, на платных тарифах от 200$ в месяц и ip можно сменить если он попадает в бан РКН ну и другие "плюшки" прилагаются, которых нет в бесплатном тарифе.

    P.s Да и с индексацией тоже не все так хорошо, как хотелось бы. Да и серверов у них не так много в СНГ чтобы все быстро отдавать.
     
Черновик сохранён Черновик удалён
Загрузка...