Начинающим веб-мастерам стоит задуматься о защите сайта от несанкционированного проникновения, а проще говоря, нужно защитить сайт от взлома. Тут и встает вопрос как-же все-таки защититься от злоумышленников?
Я думаю, что вы уже удалили аккаунт по умолчанию и поменяли пароль и логин «admin» на новый? Если нет, то это нужно cделать в обязательном порядке. Об этом написано в статье, ссылку на которую вы увидите внизу страницы.
В этой теме речь пойдет о том, как защитить админ-панель от взлома на сайтах, работающих под управлением вордпресс и не только. По этой аналогии можно защищать сайты под управлением других движков.
На самом деле существует много способов защиты сайта, так-же как и способов проникновения. Я не буду здесь раскрывать сложные методы, а предложу простой, но в ту-же очередь эффективный способ защиты сайта от взлома.
Защитить админ-панель от взлома поможет простой способ, который заключается в замене адреса входа в админ-панель. Все, что вам потребуется, так это Notepad++(советую скачать, если нет, легкий в использовании и функциональный) и 5-10 минут свободного времени.
Заходим на хостинг в раздел, где у вас находятся папки с файлами. У меня на хостинге Таймвеб этот раздел называется файловый менеджер. Находим в корневой папки файл под названием:
wp-login.php
скачиваем его себе на компьютер. Перед тем, как менять файл, советую все-таки создать дубликат этого файла на случай если что-то пойдет не так.
Далее переименовываем имя этого файла на любое, которое вы придумали. Только оно должно состоять из латинских букв нижнего регистра и без пробелов, вида:
wp-block.php
Расширение .php в конце ставить обязательно.
Следующим шагом нужно открыть файл с помощью Notepad++ иди другого редактора и в коде заменить все имена wp-login.php
на свое ранее придуманное. В моем случае это — wp-block.php
. В Notepad++ наберите горячие клавиши CTRL+F и появится окно, вбейте в него: wp-login.php
и замените на wp-block.php
Таким образом вы замените все слова в файле на нужные. Сохраняйте.
Внимание !
Заменяйте все вхождения wp-login.php
на wp-block.php
. В редакторах есть такая функция, типа найти все
, заменить все
.
Смотрите скриншот:
Нам осталось лишь залить файл wp-block.php
на хостинг, туда-же где лежит файл: wp-login.php, после этого нужно удалить файл: wp-login.php
.
Откройте файл wp-includes/general-template.php
и также произведите замену всех wp-login.php
на
wp-block.php
После этих несложных манипуляций адресная строка входа в панель администратора изменится с http://site.ru/wp-login.php
на http://site.ru/wp-block.php
Если вы используете стандартный виджет «Мета» — удалите его, так как при наведении на ссылку «Войти» виден URL страницы входа, которую вы изменили.
Все, если раньше наш сайт открывался по адресу http://имя сайта/wp-login.php , и его знали все хорошие и не очень люди, то теперь такого адреса просто не существует! Теперь вы можете зайти в админ-панель набрав в окне браузера:
http://имя сайта/wp-block.php
Теперь можно настроить переадресацию. В файл .htaccess добавьте строчку:
Redirect 301 /wp-login.php http://адрес вашго сайта
Тем самым, все кто наберет старый адрес входа в админку siteurl/wp-login.php
, будет автоматически перенаправлен на главную страницу вашего сайта.
А теперь еще один важный момент. Обязательно наберите в поисковой строке site url/wp-admin
.
Вместо site url напишите адрес своего сайта.
Если вы попадаете на страницу входа своего сайта, а в строке браузер выдаст наш новый файл, то это не есть хорошо, но исправимо. Просто нужно добавить в файл functions.php , после открывающего тега <?php нижеприведенный код :
add_action( 'init', 'blockusers_init' ); function blockusers_init() { if ( is_admin() && ! current_user_can( 'administrator' ) && ! ( defined( 'DOING_AJAX' ) && DOING_AJAX ) ) { wp_redirect( home_url() ); exit; } }
Теперь убедитесь еще раз, что все работает. После вставки кода в functions.php, если вы наберете ваш сайт/wp-admin , то автоматически должно перекидывать на главную страницу сайта, а не на вход в админку.
У меня, кстати, так и была админка открыта, при том, что я заменил файл wp-login.php как написано в начале этой публикации. Заменил думаю, и нормально. Короче успокоился на этом. Пока в однажды у меня на сайте не появился такой комментарий :
Вот короткий отрывок нашей переписки :
— я уже давно на этот «косяк» с редиректом обратила внимание — он у многих присутствует))) Только вы не в файле .htaccess ищите, а вставьте в functions.php вот этот код (чтобы редирект с wp-admin осуществлялся на главную страницу — правило действует только для пользователей):
Большое спасибо Екатерине за то что она не только указала в комментарии на этот недочет, а еще и откликнулась на мою просьбу о помощи. Код который я опубликовал, предоставила Екатерина.
Кстати, некоторые хостинги сразу предлагают автоматически заменить адрес входа в админку.
Защитить админ-панель от взлома помогут различные плагины, например, «Captcha», который можно скачать с официального сайта просто вбив название плагина в админ-панеле, в разделе установки плагинов. Это будет как дополнение к вышеприведенному способу для подстраховки от ботов. Но если вы использовали этот простой способ защиты сайта от взлома, то можно обойтись и без капчи.
Если вам понравилась статья «Простой способ защиты сайта от взлома» отметьте ее в соц сетях. Как обычно, жду ваших вопросов. А как вы смогли защитить сайт от взлома?
Актуальная ссылка на глаз бога телеграм бот eyegod.tech.
Егор, я рада, что теперь «проблема» с wp-admin осталась у Вас в прошлом))) И спасибо за добрые слова в мой адрес O=) Хорошим людям всегда приятно помогать)))
С вашей помощью разве это проблема! *THUMBS UP*
Супер, Егор! Всё получилось. Спасибо за внятное объяснение! А при обновлении вордпресс, нам не придется всё снова менять в файлах?
Здравствуйте. У меня вот уже несколько обновлений было, все норм. Эти то файлы не обновляются видимо. Там обновлять нечего.
добрый день. сделал все по инструкции, но наблюдаю такую проблему: при добавлении к урл сайта /wp-login.php, получаю ответ сервера: «На этой странице обнаружена циклическая переадресация». при добавлении /wp-admin — никаких проблем нет, просто осуществляется переход на главную. подскажите, пожалуйста, в чем может быть дело?
Добрый день. А так-то все нормально? Открывается по новому адресу вход в админку с формой логин и пароль? Если все так, то можно настроить переадресацию на главную, прописав в файле .htaccess
Redirect 301 /wp-login.php http://filwebs.ru
(свой домен пропишите) , а можете написать сайт ФСБ или МВД
да, нет, я лучше свой пропишу, с этими ребятами лучше не связываться!
редирект решил проблему, все работает, спасибо!
Я пошутил насчет ФСБ
Егор, благодарю вас за ценную статью! Разобрался, настроил, теперь спать спокойнее будет, зная, что блог лучше защищен.
Пользуйтесь, на здоровье. Как один из способов в комплексе, вполне пойдет. А вообще, можно поставить один из плагинов защиты сайта. Но они нагружают сайт нехило. Хотя можно выбрать что-нибудь подходящее.