Is there any way to rename or hide wp-login.php?
Any way to change the wp-login.php url? It seems insecure that everyone that’s ever used WordPress could easily see if your site is using it, and get right to the login page. There used to be a plugin called «Stealth login,» but it wasn’t updated. (And hence our reluctance to rely on plugins).
99.3k 10 10 gold badges 156 156 silver badges 294 294 bronze badges
asked Jan 6, 2011 at 1:46
711 2 2 gold badges 11 11 silver badges 15 15 bronze badges
Well. you must also hide /wp-admin/, right?
Jan 6, 2011 at 2:46
See my response at wordpress.stackexchange.com/questions/217828/… it does exactly what you need and block the original path, so no one will know you actually use WordPress wordpress.org/plugins/wp-hide-security-enhancer
Feb 29, 2016 at 10:25
WPS Hide Login plugin wordpress.org/plugins/wps-hide-login
Sep 20, 2017 at 9:17
4 Answers 4
If you are doing this for your own site then using .htaccess might be the easiest way although it could get tricky if you want to make it work for a plugin as there would be lots of different subtle configuration differences to support.
Here are some articles that could help; not all are directly answering your question but they all address your security concern in one way or another:
- Hide WordPress WP-Admin Login Page
- How to prevent attacks on WordPress wp-login.php page
- Secure Your WordPress, Playing With Your .htaccess File.
- How to: change from wp-login.php to login
- How to protect wp-login and wp-admin
- Hardening WordPress with Mod Rewrite and htaccess
And of course that’s no blog expert on Apache and WordPress than the guy who writes AskApache. Be sure to check out these:
- AskApache Password Protection, For WordPress
- Security with Apache htaccess Tutorial
- The list of «WordPress» tagged posts on AskApache
answered Jan 6, 2011 at 9:06
MikeSchinkel MikeSchinkel
37.4k 14 14 gold badges 115 115 silver badges 132 132 bronze badges
wp-login.php still work with rewrite, is right?
Feb 4, 2014 at 8:48
we need fixed ip to use deny from all, allow from Ip, but this technic limit access from anywhere if a person want access from his phone or tablet from a different places that is not in allowed ip.
Feb 4, 2014 at 9:18
I ran into the same problem recently, and you’re right that the Stealth plugin is no longer supported. However, because I finally realized that the Stealth plugin was the best option, I did a clean install of WordPress to the last version of WordPress that the Stealth plugin supported to figure out how the plugin works. Turns out, the only thing that the plugin is doing is creating a .htaccess file with some magic. The .htaccess file will look a little something like this:
RewriteEngine On RewriteBase / RewriteRule ^logout wp-login.php?action=logout&_wpnonce=asdfasdf&stealth_out_key=asdfasdfasdfasdf [L] RewriteRule ^login wp-login.php?stealth_in_key=asdfasdfasdf&redirect_to=http://example.com/login [R,L] RewriteRule ^admin wp-admin/?stealth_admin_key=asdfasdfasdfasdf [R,L] RewriteCond % !^http://example.com/wp-admin RewriteCond % !^http://example.com/wp-login\.php RewriteCond % !^http://example.com/login RewriteCond % !^http://example.com/admin RewriteCond % !^stealth_in_key=asdfasdfasdfasdf RewriteCond % !^stealth_out_key=asdfasdfasdfasdfasd RewriteCond % !^stealth_reg_key=asdfasdfasdfasdfasdf RewriteCond % !^stealth_admin_key=asdfasdfasdfasdfasdf RewriteRule ^wp-login\.php http://example.com [R,L] RewriteCond % ^loggedout=true RewriteRule ^wp-login\.php http://example.com [R,L] RewriteCond % !-f RewriteCond % !-d RewriteRule . /index.php [L]
I have changed all of the keys to some variation of «asdfasdfasdf» — obviously you would need to create some secret keys for yourself.
How to hide wp-admin and wp-login.php from attacks
Hiding wp-admin is an easy yet effective way of reducing the number of attacks from dumb bots and hackers. It’s a great tool for reducing the attack surface.
With WP Cerber Security you can do that with several clicks.
- Open WP Cerber main settings page.
- Turn on Disable automatic redirection to the login page when /wp-admin/ is requested by an unauthorized request
- Enter your desired custom login URL into the Custom login URL field
- Turn on Block direct access to wp-login.php and return HTTP 404 Not Found Error
- Save settings
Settings to hide wp-admin and wp-login.php
Have any questions?
If you have a question regarding WordPress security or WP Cerber, leave them in the comments section below or get them answered here: G2.COM/WPCerber.
Как скрыть wp login php wordpress
Нет плагин не поддерживает мультисайты. Это временно, мы постараемся добавить поддержку мультисайтов в будущем.
Я забыл адрес страницы входа, что делать?
Способ 1:
Зайдите в ваш почтовый адрес и найдите письмо с темой «[Скрыть страницу логина] Изменен адрес страницы логина» и перейдите по ссылке для восстановления доступа к логину.
Способ 2:
Найдите в базе данных в таблице wp_options опции с названием wp_options table option named wbcr_hlp_login_path, wbcr_hlp_hide_login_path, wbcr_hlp_hide_wp_admin, wbcr_hlp_cache_options и удалите их.
Способ 3:
Удалить плагин Hide WP login из директории /wp-content/plugins. Авторизуйтесь и снова установите плагин Hide WP login.
Как получить доступ к регистрации и к странице восстановления пароля?
После изменения адреса страницы логина, адрес страницы регистрации и страницы восстановления пароля будут следующими:
http://site.com/login?action=register и http://site.com /login?action=lostpassword
Отзывы
Not secure as-is
This sort of works. for about a split second. Type yoursite/wp-admin immediately reveals the ‘hidden’ login page Not sure if wordpress is redirecting to the hidden page or if some other plugin is doing that. In either case this does not protect the login page if someone types yoursite/wp-admin instead of wp-login.php
TOPS
Excellent security from Clearfy/Webcraftic THANKS UPDATE: 5/22/22 We keep going back to this company. We’re glad they’re still around! see our comments on their Clearfy + Disable Comments. Bob + Steph Fox «;-) n Kitty
Disappointed
I don’t recommend this plugin to anyone. Firstly, as explained by another user in the support forum, it is possible for a hacker to circumvent this and all other plugins of this type if they use Firefox. So if none of the hackers that know this happen to target your site, you’ll be fine, but it is highly probable that you will still be targeted by brute-force attacks. You’ll get fewer of them, but won’t eliminate them. As if that isn’t bad enough, after using this plugin for a while, both the default login page and the custom one generated by this plugin returned a 404, locking me out of my admin panel. I had to manually delete or rename the plugin folder in my file manager in order to regain access. No plugin is worth that kind of a headache, particularly if it isn’t even blocking all attacks to begin with. Aside from all that is the fact that this plugin receives absolutely zero support. Check the support forum and you will easily see that the developer has never responded to anything, ever. So, if it happens to work for you, great. But it probably won’t, and if it doesn’t, you will get absolutely no help. Just use a good password and maybe throw in a plugin like Limit Login Attempts or Wordfence or something of that nature.
Thank You
I already have «limit login attempts» installed along with «two factor login» but that doesn’t stop hackers from trying. They get logged out after three attempts but then a change of IP address and they try again. So far today in the 15 hours since midnight I’ve had 166 logouts on one of my sites. Each time I get an email advising me. I’ve just installed this plugin and it’s all stopped. How about that!! I must confess I was concerned about the install just in case something went wrong but all is well. Any author who is willing to offer their expertise free of any formal charge is to be commended. Thank you very much. I only think it’s a pity the author does not acknowledge and respond to the one or two people who ask for assistance but from me it’s five stars. EDIT I guess it either works and gets five stars or it doesn’t and gets one star. Despite having changed my login address to something «unguessable» and known only to me, a hacker has found the login page. This is not the first time. I reported this in a support thread some while ago and the author claimed it was not possible. I can only say the author needs to look again as right now this plugin has a security flaw that somehow allows a hacker to penetrate it. Perhaps because it’s not been updated for some while and needs some further attention. Pity as it was doing so well.
Как скрыть URL входа админ-панели WordPress
Приветствую, дорогой гость! В данной статье мы рассмотрим, как скрыть URL входа админ-панели WordPress. Похожая тема уже была затронута на блоге DayAfterNight, она называлась «Как изменить адрес входа в админ-панель WordPress«. Ко мне очень часто обращались со следующим:
Почему не скрывается админ-панель?
Если набрать wp-admin, откроется новая страница логина.
Друзья, прошлая статья была направлена именно на замену страницы логина WordPress, а не на ее скрытие от посторонних глаз. Мы заменяли wp-login.php на свое название, например, admin-login.php. Сегодня, скроем данную страницу.
Итак, для того, чтобы скрыть страницу входа, нам потребуется зайти на хостинг и отредактировать файл .htaccess, который находится в папке вашего WordPress.
Например: Ваш_хостинг/httpdocs/wordpress/.htaccess
В файл .htaccess нужно вставить следующий код:
# Hide admin URL startRewriteEngine On RewriteRule ^my_admin_url/?$ /wp-login.php?my_secret_key [R,L] RewriteCond % !^.*wordpress_logged_in_.*$ RewriteRule ^my_admin_url/?$ /wp-login.php?my_secret_key&redirect_to=/wp-admin/ [R,L] RewriteRule ^my_admin_url/?$ /wp-admin/?my_secret_key [R,L] RewriteCond % !^(.*)admin-ajax\.php RewriteCond % !^(.*)site.com/wp-admin RewriteCond % !^(.*)site.com/wp-login\.php RewriteCond % !^(.*)site.com/my_admin_url RewriteCond % !^my_secret_key RewriteCond % !^action=logout RewriteCond % !^action=rp RewriteCond % !^action=postpass RewriteCond % !^.*wordpress_logged_in_.*$ RewriteRule ^.*wp-admin/?|^.*wp-login\.php /not_found [R,L] RewriteCond % ^loggedout=true RewriteRule ^.*$ /wp-login.php?my_secret_key [R,L] # Hide admin URL end
my_admin_url — замените название, на желаемое. По этому адресу будет доступен ваш сайт.
Например: uznipc.com/my_admin_url
my_secret_key — вместо данной строки придумайте сложный ключ и запишите его.
site.com — замените на домен вашего сайта.
Также, если вы воспользовались предыдущей статьей о замене страницы wp-login.php (стандартная страница входа), измените строки в коде.
Например: Ваша страница называется admin-login.php, замените 5 значений wp-login в коде на admin-login.
После этих простых манипуляций мы получим:
- Ошибка not_found при наборе site.com/wp-admin
- Ошибка доступа при наборе site.com/wp-login.php
- Доступ к сайту по красивой, придуманной вами ссылке, такой, как site.com/my_admin_url
- Доступ к URL админки по придуманному вами паролю site.com/wp-login.php?my_secret_key. Например, для измененной страницы и выдуманного пароля site.com/admin-login.php?234sdf79862gsdf7634yrgksf876
Данная статья была написана после полугодовалого перерыва. Что случилось со мной, а также другие увлекательные уроки и полезности вы сможете прочитать в следующих статьях.
Похожие статьи
Прозрачные счетчики сайта (статистика)
Украшаем сайт, Новый год
Нагрузка WordPress, кэширование в WP-SuperСache
0 0 голоса
Рейтинг статьи
Пожалуйста, войдите, чтобы прокомментировать
58 комментариев
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
8 лет назад
Спасибо за Вашу подробную инструкцию. Всё отлично получилось с первого раза.
8 лет назад
Ответить на Татьяна
8 лет назад
Здравствуйте.
Отличная статья. с одним сайтом все получилось, но возникла проблема с кириллическим доменом. Если адрес сайта указывать в Punycode, то все работает, как будто ничего и не менялось, если в формате мой-сайт.рф, то всегда происходит переадресация на страницу 404. в чем может быть проблема?
8 лет назад
Ответить на Павел
Здравствуйте, Павел.
Спасибо
Не приходилось работать с кириллическими доменами, даже не знаю, что вам подсказать, извините
8 лет назад
Сергей, а как вы сделали, чтобы у вас не отображался автор постов?
8 лет назад
Ответить на Ярослав
Ярослав, в index.php (главная страница) либо с page.php удалите или заккоментируйте вывод автора
8 лет назад
Ответить на Сергей
У меня нет слова author в этих файлах. Ни в корне, ни в папке темы. Видимо это зависит от версии ВП. Как ещё, по-вашему, может это решаться?
8 лет назад
Ответить на Ярослав
Решение где-то в вашей теме. Скиньте тему на seregadadk(СобакА)mail.ru, я гляну
8 лет назад
Ответить на Сергей
О, вы так любезны!
Отправил тему Вордпресс в которой хочется скрыть автора.
8 лет назад
Ответить на Ярослав
8 лет назад
Ответить на Сергей
О! Получилось! Автор теперь не отображается! Большое спасибо! ))
8 лет назад
Ответить на Ярослав
8 лет назад
Заполнять только это? А то не получается у меня что — то.
RewriteCond % !^(.*)site.com/wp-login\.php
RewriteCond % !^(.*)site.com/my_admin_url
RewriteCond % !^my_secret_key
8 лет назад
Ответить на Владька
Здравствуйте, Владислав. Заменять нужно:
my_admin_url – замените название, на желаемое. По этому адресу будет доступен ваш сайт.
my_secret_key – ключ
site.com – замените на домен вашего сайта.
Также, если вы воспользовались предыдущей статьей о замене страницы wp-login.php (стандартная страница входа), измените строки в коде.
8 лет назад
Добрый день, спасибо за данный материал.
Из предыдущей статьи (про изменение файла wp-login.php) работает всё, но админка по прежнему доступна по адресу /wp-admin , просто происходит редирект на новый файл, который заменил wp-login.php. Из-за этого попробовал внедрить на сайт материал, написанный в данной статье.
Не получилось ничего, кроме того, что при наборе /wp-admin выдаёт ошибку 404 (что в принципе хорошо). Секретный код не работает и новый урл админки тоже. Сейчас доступ в админку один, через файл /wp-login.php (с изменённым названием конечно).
Возможно, это происходит по следующей причине: когда я пытался включить кэширование фалов сайта при помощи функции в файле .htaccess, возникли большие проблемы, как оказалось эта функция включается со стороны моего хостинга и включали кэширование уже они на своей стороне (после обращения в техническую поддержку), без моего участия. Может ли с этим быть связана моя проблема, как Вы считаете? Странно, что после внедрения данного кода замаскировалась страница /wp-admin – значит, часть кода сработала.
При наборе свой сайт.wp-login.php после данных изменений, выдаёт не 404, а цикличное перенаправление на странице-это нормально?