Как изменить/скрыть URL административной консоли WordPress

Для тех, кто использует WordPress, актуальным является вопрос защиты блога. Основной угрозой является взлом административной консоли блога. Это самый распространенный вид атаки, так называемый “брутфорс” – взлом учетной записи путем перебора.

Одним из самых простых, но весьма эффективным способом защиты административной консоли WP, является изменение адреса административной консоли с известного всем /wp-admin на что-то более сложное и известное лишь администраторам. Конечно, можно вообще предоставить доступ к админ. консоли только с определенных IP, но это не всегда удобно.

Изменить/скрыть URL административной консоли WP можно несколькими способами:

  • Установить плагины – много ненужного функционала + замедление работы сайта
  • Изменить файлы темы или CMS (переименование файла wp-login.php и т.п.) – надо помнить про все “ручные” изменения, необходимость повторять их при обновлении
  • Изменить файл .htaccess web-сервера

Последний вариант показался мне самым предпочтительным, поэтому рассмотрим подробнее как необходимо модифицировать файл .htaccess. Честно признаюсь, что синтаксис и директивы, используемые ниже, сгенерированы плагином Better WP Security. Это хороший плагин для комплексной защиты блога, но лишь для скрытия URL админ. консоли, ставить его нецелесообразно.

В файл .htaccess необходимо вставить следующий код:

Где:
custom_admin_url – новый URL админ. консоли
yoursite.com – название вашего сайта, без http://
your_secret_key – секретный ключ, сложная последовательность букв и цифр. Например, 2le0snq3oiqpkl7w2frc. Секретный ключ следует придумать самому, запоминать его нет необходимости.

После добавления такого фрагмента в .htaccess:

  • При попытке обратиться к yoursite.com/wp-admin ответом будет 404 ошибка
  • При попытке обратиться к yoursite.com/wp-login.php ответом будет 404 ошибка
  • Доступ к админ. консоли WP будет возможен лишь по следующему URL: yoursite.com/custom_admin_url

Цель достигнута!

VN:F [1.9.22_1171]
Rating: 4.5/5 (19 votes cast)
Метки: , ,
Опубликовано в Разное
27 комментариев на “Как изменить/скрыть URL административной консоли WordPress
  1. Подскажите. У меня установлен плагин: BulletProof Security, он сам создаёт все необходимые файлы .htaccess, куда именно вставлять ваш код, там итак примерно 200 строк кода.

    VA:F [1.9.22_1171]
    Rating: +1 (from 1 vote)
    • Сергей Кирсанов Сергей Кирсанов:

      В заметке идет речь о файле .htaccess, расположенном в корневой директории сайта. Для редактирования этого файла через плагин BulletProof Security, в консоли WP выберите: BPS Security -> htaccess Core -> htaccess File Editor -> Текущий htaccess-файл корневой папки. Добавьте необходимые строки и нажмите Update File.

      VN:F [1.9.22_1171]
      Rating: -2 (from 2 votes)
  2. Приветствую.
    Всё сделал как написано, но не пускает всё равно по новому адресу. Отдаёт 404 и всё, словно и нет админки, хоть по старому, хоть по новому адресу.

    VA:F [1.9.22_1171]
    Rating: +1 (from 3 votes)
    • Сергей Кирсанов Сергей Кирсанов:

      Добрый день! Сходу трудно сказать в чем именно проблема. Скорее всего Вы ошиблись в конфигурации .htaccess. Попробуйте поставить плагин Better WP Security и настроить доступ к админ консоли через него. Если будет работать, то просто скопируйте код, добавленный плагином, удалите плагин и вставьте обратно код в файл .htaccess. Если не получится, то готов помочь Вам в решении этой проблемы.

      VN:F [1.9.22_1171]
      Rating: +1 (from 3 votes)
  3. herman.prada:

    спасибо, благодаря этой заметке заработал свои первые 300 рублей на воркзиле, заказчику нужно было изменить ссылки на админ панель сразу на 3 блогах, он почему то подумал, что это очень сложная задача и отдал ее на фриланс, он даже поленился поискать в гугле. А ведь это элементарно делается с помощью вашего плагина, потребовалось только установить плагин, активировать, выбрать нужную опцию и сохранить добавленные строки в .htaccess, это для того что бы не устанавливать плагин на другие сайты, а сразу делать правки в хтацесс. Спасибо автору за заметку, хорошо что я ее прочитал.

    VA:F [1.9.22_1171]
    Rating: +2 (from 2 votes)
  4. Здравствуйте! Я все также сделала как у вас написано и у меня выдает при входе в админку : Not Found

    The requested URL /(тут мой ключ) was not found on this server.

    что сделать чтоб исправить? подскажите плиз

    VA:F [1.9.22_1171]
    Rating: +1 (from 1 vote)
  5. Простите, Я кажется поняла свою ошибку .. не секретный ключ надо набирать после названия сайта. Все заработало.

    VA:F [1.9.22_1171]
    Rating: +1 (from 1 vote)
  6. А нет. всеравно не работает. я просто загрузила обычный нормальный .htaccess.txt и оно заработало как wp-admin. а как с того url что я придумала – оно всеравно выдает ошибку №404. Пооччееммууу? Подскажите пожалуйста.

    VA:F [1.9.22_1171]
    Rating: +1 (from 1 vote)
    • Сергей Кирсанов Сергей Кирсанов:

      Здравствуйте! Возможно, проблема в том, что браузер кэширует страницы и, после того как вы внесли изменения, он все равно пытается перекинуть вас на страницу wp-admin. Попробуйте обновить страницу используя Ctrl+F5. Проверьте еще раз содержимое .htaccess, возможно была допущена синтаксическая ошибка. Если не помогает, ставьте плагин Better WP Security и настраивайте доступ к админ консоли через него. Если будет работать, то просто скопируйте код, добавленный плагином, удалите плагин и вставьте обратно код в файл .htaccess.

      VN:F [1.9.22_1171]
      Rating: +2 (from 2 votes)
  7. Олег:

    Спасибо, работает.
    А то уже на второй день опубликования сайта стали целенаправленно бомбить брутфорсом.

    VA:F [1.9.22_1171]
    Rating: +1 (from 1 vote)
  8. Александр:

    такой вопрос, а если сайт лежит в каталоге, сейчас путь такой yoursite.com/nomer/1/wp-admin и каждый месяц будет новый подсайт например yoursite.com/nomer/2/wp-admin Как лучше реализовать скрытие админок на всей сайтах разом ?

    VA:F [1.9.22_1171]
    Rating: +3 (from 3 votes)
  9. Oleg:

    Подсмотреть доступ к админке можно через регистрацию на сайте. Как можно сделать динамическую ссылку в админку?

    VA:F [1.9.22_1171]
    Rating: +1 (from 1 vote)
    • Сергей Кирсанов Сергей Кирсанов:

      Здравствуйте!
      Готовый код не предложу. Пока слабо себе представляю это, тем более, что Вы говорите: “Подсмотреть доступ к админке можно через регистрацию на сайте.”
      Как же тогда пользователь будет заходить в админ консоль, если URL будет динамический?

      VN:F [1.9.22_1171]
      Rating: +1 (from 1 vote)
  10. CTAPOMAK:

    в строке
    RewriteCond %{HTTP_REFERER} !^(.*)yoursite.com/custom_admin_url
    в конце не хватает $
    RewriteCond %{HTTP_REFERER} !^(.*)yoursite.com/custom_admin_url$

    VA:F [1.9.22_1171]
    Rating: +1 (from 1 vote)
  11. CTAPOMAK:

    в строке
    RewriteCond %{QUERY_STRING} !^your_secret_key
    в конце не хватает $
    RewriteCond %{QUERY_STRING} !^your_secret_key$
    PS: в передыдущем коменте неправильно скопировал

    VA:F [1.9.22_1171]
    Rating: +1 (from 1 vote)
  12. “Секретный ключ следует придумать самому, запоминать его нет необходимости.”

    Тут у Вас ошибка в описании, потому как в админку сайта можно будет попасть по пути yoursite.com/wp-login.php?your_secret_key
    Т.е. запоминать его очень даже нужно. Тем более что я так и не смог попасть через wp-admin, а только выше указанным способом.

    Может кому и пригодится.

    VA:F [1.9.22_1171]
    Rating: +1 (from 1 vote)
    • Сергей Кирсанов Сергей Кирсанов:

      Ошибки в описании нет.
      При данном способе вход в админку возможен двумя способами:
      1. Простой и красивый через custom_admin_url.
      2. Используя секретный ключ напрямую:
      yoursite.com/wp-login.php?your_secret_key

      При данном способе следует запоминать только custom_admin_url.
      А секретный ключ запоминать не нужно, при необходимости его всегда можно посмотреть в файле .htaccess web-сервера.

      Смысл предлагаемого способа именно в том, что бы “наружу” сделать красивый и нестандартный URL для обращения к админке, т.е. custom_admin_url, под которым будет скрыт wp-login + секретный ключ, защищающий стандартный wp-login.php

      VN:F [1.9.22_1171]
      Rating: 0 (from 0 votes)
  13. Verticalx:

    нормальная тема, но вы можете подробно объяснить в каком именно месте нужно менять переменные, а в каких нет
    Если заменить тупо все переменные то не работает
    Будьте добры, пожалуйста. а то уже сорок минут башкой бьюсь об стену.

    VA:F [1.9.22_1171]
    Rating: 0 (from 0 votes)
  14. Galina:

    Спасибо. Гениальное решение. Все просто и быстро.

    VA:F [1.9.22_1171]
    Rating: 0 (from 0 votes)
  15. Рафаэль:

    Добрый день. Все сделал все хорошо работает, но на внутренние страницы сайта не переходит – 404 ошибка. В чем может быть дело?

    VA:F [1.9.22_1171]
    Rating: 0 (from 0 votes)
  16. Denny:

    Как угодно пробовал – сайт просто перестает работать.

    VA:F [1.9.22_1171]
    Rating: 0 (from 0 votes)
    • Алексей:

      Сам пользуюсь таким. Может вам надо руки лечить?

      VA:F [1.9.22_1171]
      Rating: 0 (from 0 votes)
  17. Саня:

    Все работает! Спасибо за статью! Тоже сразу ложился сайт но это было из-за моей невнимательности)

    VA:F [1.9.22_1171]
    Rating: 0 (from 0 votes)
  18. Влад:

    И без плагина все понятно, огромное человеческое спасибо!

    VA:F [1.9.22_1171]
    Rating: +1 (from 1 vote)

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

Ваш e-mail не будет опубликован. Обязательные поля помечены *

*

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">

Выбор языка: