Защита админки WordPress от подбора паролей, видео
Здравствуйте, дорогие посетители моего блога! Сегодня тема: защита админки WordPress от подбора паролей и взлома. Это будет продолжением моей прошлой статьи, но не совсем так, как предполагалось изначально. Тема безопасности сайта настолько обширна и многогранна, что писать про это можно ещё и ещё – так что не пропустите следующих статей!
Зачем нужна защита админки WordPress от подбора паролей – сам сайт не справится?
Не справится!
Есть выражение: безопасности много не бывает! Понятное дело, если речь идёт о корпорациях с миллионными оборотами и протоколах защиты данных, а мы, блогеры, что? А чем мы хуже?
Вот сидишь, пишешь, записываешь видео, вкладываешься, а тут приходит какой-то заскучавший субъект, которому охота поиграть в хакера ради забавы и потешиться над сайтом.
А если он сделан на wordpress, то движок, весь такой вежливый и предупредительный – заботливо подскажет, где ошибся субъект пытаясь войти. Мало того, что подскажет, где ошибка – в логине или пароле, так ещё будет так подсказывать до бесконечности – мотать головой админкой и предлагать попробовать ещё!
Вообще не понимаю, почему разработчики до сих пор не убрали эту предательскую «вежливость» и «предупредительность» движка?!
А если все попытки подбора умножить на автоматизацию через программы и скрипты, то получится, что нагрузка на хостинге ползёт вверх, сервер «не тянет» от повторяющихся запросов к админке, сайт тормозит, а потом и вообще «падает».
А если ещё и логин стоит по-умолчанию, admin и пароль, что-то вроде 12345678, то сомневаться в скором взломе не придётся – жди беды! Если вы себя узнали, то, как вам перспективка?
Лично меня не радует, поэтому и пишу, чтобы поделиться защитой wordpress от подбора паролей к админке, которой пользуюсь уже давно.
Есть масса решений для усиления стойкости блога против взлома – от простых и доступных, до сложных и дорогих. Сегодня расскажу о простых и доступных любому новичку.
Но, как известно, против лома нет приёма… Взломать можно всё и вся – это лишь вопрос времени и средств. Поэтому наша задача, время и усилия затянуть максимально!
Чтобы усилить стойкость админки против подбора паролей, есть несколько однотипных решений. Это плагин Login LockDown и ему подобный Limit Login Attempts – ссылки на репозитарий wordpress.
Есть один нюанс – первый не обновлялся с 2009 года, а второй более «свежий» -2012 года. Хотя у меня стоит первый вариант и по-прежнему работает с новой версией движка.
Что делает плагин Login LockDown, его аналог и как он работает?
При каждой попытке входа в админпанель блога на WordPress, плагин записывает IP-адрес входившего и в случае нарушений по количеству неудачных попыток блокирует доступ к админпанели для этого диапазона IP-адресов.
Вроде, просто, как три копейки, но уже только эти плагины могут существенно обезопасить блог от подбора паролей.
Установка плагина (вы сами решайте, какой использовать) стандартная – можно найти плагин по названию в админке блога в разделе Плагины – Добавить новый, а можно скачать с wordpress.org архив и загрузить на сайт. Затем установить и активировать. В меню управления сайта появится пункт, отвечающий за настройки.
Сначала пройдемся по Login LockDown.
Настроек всего 6 и можно их не менять, оставив, как есть при установке – плагин уже будет работать. А подробнее настройки будут такие:
Max Login Retries – максимальное количество попыток входа, изначально стоит 3. Если вы поставите здесь 1 и забудете свой пароль, то сразу же будете сами заблокированы на период времени, задаваемый в следующих настройках.
Retry Time Period Restriction (minutes) – период времени в минутах, в течении которого возможны повторные попытки входа, изначально стоит 5 минут. Параметр спорный, так как короткий период приведет к ускоренной блокировке по IP, а более длительный уже сам сделает задержку. Тем более, что общее количество попыток задано первой настройкой.
Lockout Length (minutes) – длина периода блокировки в минутах. Изначально – 60 минут, но чем дольше, тем лучше. У меня это время выставлено на 4 часа. Учтите, что в случае вашей «забывчивости» вы будете заблокированы на это же время – такое уже случалось с моими знакомыми – приходилось сидеть и ждать, либо менять IP-адрес.
Lockout Invalid Usernames? – блокировать неправильные имена пользователей (логины)? Сначала стоит – Нет, желательно поставить Да. Если кто-то будет пытаться «лезть» с неправильным логином, то это тоже приведет к блокировке – что, собственно и надо!
Mask Login Errors? – маскировать ошибки входа? Настоятельно рекомендую поставить Yes = Да! Эта опция отвечает за отключение «вежливых» подсказок движка об ошибках при входе – если будет неправильный логин, то он так и скажет/не скажет – не тот логин. А зачем же подсказывать не там где надо, правильно?
После внесения изменений не забывайте нажать кнопочку Update Settings – Сохранить настройки, иначе они не вступят в силу.
Через некоторое время, на странице настроек плагина, у вас может появиться информация о заблокированных «входящих» в разделе Currently Locked Out – Заблокированы в настоящий момент. Не пугайтесь – это вполне нормально, а для вас, это информация к размышлению, что было бы, если бы они так и продолжали ломиться к вам непрошенными «гостями»?
Да, если такой список появится, то не стоит отмечать их галочками и нажимать кнопочку Release Selected – Отпустить, пусть «томятся»!
Ещё раз упомяну, что если вы забудете свои данные для входа и будете пытаться их вспомнить, то будете заблокированы. Если понадобится войти срочно, то один из вариантов – это сменить IP-адрес. Либо зайти на свой хостинг и «убить» плагин – удалить папку с его файлами. Только если вы так сделаете, то не забудьте позже его восстановить и внимательнее отнестись к своему паролю в будущем!
К недостаткам плагина можно отнести рекламную ссылку автора, которая появится в форме авторизации после установки и отсутствие русского языка. Но стоит плагин один раз настроить и к нему можно не возвращаться.
Добавлено 27.03. В обновленной версии плагина появилась настройка, позволяющая скрыть вывод строки на сайт автора в окне авторизации. Теперь вывод этой строки можно отключить.
Show Credit Link? - показывать ссылку на автора плагина? Если оставить Yes (Да), то ссылка будет отображаться, No (Нет) – не будет, а если поставить средний вариант, Display.., то ссылка будет видна, но к ней будет добавлен атрибут nofollow, закрывающий передачу “веса“. Какую настройку здесь выбрать – смотрите и решайте уже сами. Я показ отключил и через какое-то время появились «дятлы» в списке заблокированных IP. Посмотрю, что будет дальше – может снова включу.
Теперь про плагин Limit Login Attempts.
После установки, он будет называться Ограничение попыток авторизации, в меню Параметры он будет виден как Limit Login Attempts – не запутайтесь!
Настройки внутри аналогичные описанным выше, но все они полностью на русском языке, так что вам не составит труда в них разобраться. Можно оставить все параметры по-умолчанию – плагин и с ними будет работать.
Недостаток его в том, что «вежливость» движка не отключается – он всё равно подсказывает, где ошибка – в логине или в пароле и показывает оставшееся количество попыток для входа – непонятно зачем! Но зато никаких посторонних ссылок в форме входа не появляется – это плюс.
В общем, вы сами смотрите, какой вариант выбрать и какой у вас будет нормально работать – тут угадать нереально, учитывая многообразие вариантов тем и наборов плагинов.
Но не оставляйте это «на потом» – вы же не знаете, что происходит сейчас с вашим сайтом и кто пытается вломиться в него без вашего ведома! Заодно и спать можно будет спокойнее.
В дополнение можно установить ещё один плагин, который предотвращает XSS-атаки на блог – Anti-XSS attack. Если не знаете, что такое XSS-атаки, то можете почитать о них в Википедии – там подробно раписано.
Что делает Anti-XSS attack и как работает?
Суть работы такая: при переходе с одного интернет адреса на другой в браузере пользователя передается информация о переходе – откуда и куда. Такая передача называется referer. Есть её явный вариант (_GET), когда передача записана в ссылке, а есть неявный, то есть скрытый, когда инфы в ссылке нету (_POST).
Чтобы было понятней, представим, что главная страница вашего сайта – это А, а ссылка, по которой вы попадаете в админку – это, допустим, Б. Логично, что вы попадаете в Б через А? В большинстве случаев это так и есть. То есть при переходе А->Б будет передан referer о таком переходе.
Если же вы, или кто-то другой попытается сразу зайти в Б, минуя А, или с другого адреса, отличного от А, скажем В, то referer передан не будет, а если и будет, то его данные будут отличаться в исходных и конечных адресах.
Наличие и совпадение и проверяет Anti-xss-attack. Если есть и совпадает, то скрипт работает и пускает вас, куда надо. Если нет, то работа его останавливается и выдается сообщение об атаке:
Achtung! XSS attack? Confirm transition: и ссылка для ручного подтверждения перехода.
А поскольку методы подбора паролей основаны на прямых множественных переходах к Б (админке), то плагин распознает атаку и её прервёт, вынудив кликнуть по ссылке, чего боты, к счастью, не умеют.
Конечно, есть мнения, что Anti-XSS attack уже не актуален и недееспособен, но это, опять же, из-за многообразия вариантов тем и плагинов вкупе с версиями движка. Почитать о работе плагина и скачать его вы можете здесь mywordpress.ru/plugins/anti-xss-attack – я выбрал версию 0.5. Плагин не имеет настроек – скачали, установили, активировали и забыли – пускай трудится!
За сим извольте откланяться и поблагодарить вас за окончательное прочтение сего опуса, а также нижайше вас попросить сообщить своим коллегам по блогерскому цеху в социальных сетях об этой статье, посредством кнопочек – кому-то это может пригодиться! Да, и приходите на новые статьи – мне будет приятно писать для постоянных читателей. А ещё напишите комментарий – пользуетесь ли Вы подобной защитой? Интересно же!
Для наглядности настроек, установки и демонстрации работы, описанных плагинов, я записал видео – приятного просмотра!
Конечно, это не полная защита админки WordPress (вот написал про ещё одну), но лучше, чем ничего!
Мира Вам и благополучия!
Пройдись по кнопочкам, расскажи о статье друзьям - это к деньгам!
Алексей, благодарю за помощь в консультации и установке этих двух необходимых плагинов. Все четко, понятно и доступно. В Ютубе нашел ваше видео и по нему все сделал.
Всех Вам благ и процветания!
С уважением, Анатолий.
Леша, а если поставить какой-то крутой-прекрутой пароль, который теоретически невозможно будет подобрать? Или хакеры такие умные, что могут любой, даже накрученный от балды, пароль? Плагины классные, просто неохота блог нагружать еще одним плагином. А вобще, информация очень полезная и нужная.Ты помнишь мой блог, по-моему, 3 раза взламывали..?
Это не я помнить должен и меры принимать о защите вашего сайта, а ВЫ! Нагружать блог плагином?
А нагружать его тем, что кто-то постоянного его «долбит», пытаясь взломать – лучше?
Как раз тут, установка нагрузку снижает! Попробуйте плагин – у вас наверняка появятся в списке заблокированные непрошеные «гости»
– все вопросы отпадут сразу!