Protect your dashboard with a game-changing authorization code. The login form will never be the same again.
What it does
Without locking down access via IP address or file permissions, this plugin creates a secret login authorizaiton code. Those who do not enter this additional authorization will be automatcally redirected to a customizable URL.
This is the first plugin that blocks external bot login requests – login requests must comply with the full login sequence or the request is rejected.
Why it exists
To screw with hackers, brute-force attacks, and bot-nets. Screw with them, too.
This does NOT replace the need for security “best practices” such as a strong password or a secure hosting environment. This is an additional layer of security, best combined with a login limiter such as Limit Login Attempts or Login Lockdown.
- Upload contents of the directory to /wp-content/plugins/ (or use the automatic installer)
- Activate the plugin through the ‘Plugins’ menu in WordPress
- Configure the settings to create the secret authorization code and redirect URL.
- Verify it works by going to your login form.
Add the following variables to wp-config.php if you are on a MU site and want to globally activate it with the same settings on all sites (change what is in quotes to your liking):
- I’ve been locked out! HELP!
Step 1: breathe
Step 2: login to FTP or hosting and rename the stealth-login-page folder in /wp-content/plugins
Step 3: login
If those steps don’t work, then it’s possible you have a server caching or a caching plugin or a CDN that is still delivering the plugin files. Clear all caches (not your browser cache).
- I never got an e-mail of the code when I clicked the checkbox.
Ensure that you clicked the Save Settings button after the box was checked. In every case I’ve seen, clicking it a second time always sends it.
- Does this work on MU sites?
Version 3.0.0 and greater is fully network-activated, includes uninstall, and bypasses all the settings pages with wp-config.php variables. See the Intallation tab or above in this file for instructions.
- I noticed Limit Login Attempts or Login Lockdown still reporting lockouts. Why?
We’ve realized that bots (or really bored people) can enter a URL string in the address bar that attempts to log in without ever showing the login form. If the guess is unsuccessful, then they are redirected just the same and their IP address is logged by the other plugins. This reinforces the need for a 3-prong approach: strong credentials, login limiter plugin, and a stealthy login page.
- Are both the redirected folder /wp-admin and the page wp-login.php secured?
Yes, as long as you are not actively logged into the site on that computer. You may enter your dashboard normally if you’re in an active session. Once the session expires, you’re further protected by it automatically redirecting rather than gaining access to the login form since WordPress redirects session timeouts to wp-login.php, unaware of the new URL string.
- What do I do if I forget my code and can’t find the e-mail the plugin sent me?
You’ll need FTP access to your site. Renaming the stealth-login-page folder in /wp-content/plugins/ will remove the stealth security and allow you back into your dashboard. If you have used variables in the wp-config.php file, delete or comment out those lines.
This is a handy plugin.
This can be extremely useful when you have a client that can’t (or won’t) use other 2FA systems, or you need to get something in place fast.
much more secure to have that extra sign-in code. Very simple to set up too!
Seems to work fine, but…
I have a WP site that I almost *never* need to login to (maybe a few times a year) and I was still seeing a lot of bot attempts, so I stopped using this and simply added ‘exit;’ after the opening PHP tag in the wp-login.php page.
This basically kills the login page dead and prevents ANY login, even legitimate ones. Yes, it’s crude, but it stops 100% of ALL login attempts cold.
If I need to login, I ftp in, remark out the ‘exit’ command and login. Yes, it’s a little bit more cumbersome but for a site that is almost never logged in to it works perfectly.
I added this plugin yesterday and the next time I tried to access my dashboard it redirected me to a blank login page. Blank as in plain white.
It took some searching to find out bad plugin code can do this. When I deleted the files for stealth login off my server, everything went back to normal.
Please fix, ASAP!
Contributors & Developers
“Stealth Login Page” is open source software. The following people have contributed to this plugin.Contributors
Interested in development?
- TOTALLY re-worked mehodology. It is backwards compatible.
- WordPress 3.6 compatibility.
- Complete re-build of the structure, code, and methodology of its security.
- Added full MU support.
- Disabled the login/logout/lost-password URL filtering – it knows if you’re logged in.
- Added wp-config.php settings support to bypass the settings page if you’re locked out or in a MU environment.
- Efficiencies improved.
- Edited global variables for efficiency.
- Eliminated potential conditional statment oversights in later updates.
- Bugfix – stealth re-enabled AND fixed the lost password link on the login page.
- Pending a fix to correct the redirect upon logout. It involves a WP redirect of a one-time URL that the plugin needs to allow. I can’t allow it without allowing all remote attacks again.
- This plugin is solid, once again.
- Corrected the logout link in the dashboard and the lost password link on the login page.
- Bugfix – activating plugin error
- Fixed login redirect bug if logged out.
- Updated Polish translation for v2.0.x
- Plugged security hole that allowed remote form submissions – CRITICAL UPDATE
- Requires all fields be filled in on the settings page to avoid saving incomplete entries.
- Added Settings Link on the Plugins page to link to the settings.
- Added useful links to the settings page.
- Polish localization.
- Updated FAQ with new information on why lockouts can still happen. I am working out how to protect from that, also, if it is at all possible.
- Bugfix: PHP debug error when activated by not enabled.
- Elaborated readme.txt to point out that this does not replace “best practices” for security protocol in other areas. This is simply another layer.
- Localization release.
- Initial release.