WordPress – Как защитить админку от взлома?

Логотип Wordpress

Административную панель WordPress можно достаточно легко защитить от взлома, используя уникализированный адрес для авторизации.

Откройте файл .htaccess в корне сайта и добавьте в него код (в самое начало):

RewriteEngine On
RewriteRule ^backend/?$ /wp-login.php?ppdveygfrnn9ajgr49dx [R,L]
RewriteCond %{HTTP_COOKIE} !^.*wordpress_logged_in_.*$
RewriteRule ^backend/?$ /wp-login.php?ppdveygfrnn9ajgr49dx&redirect_to=/wp-admin/ [R,L]
RewriteRule ^backend/?$ /wp-admin/?ppdveygfrnn9ajgr49dx [R,L]
RewriteCond %{SCRIPT_FILENAME} !^(.*)admin-ajax\.php
RewriteCond %{HTTP_REFERER} !^(.*)example.com/wp-admin
RewriteCond %{HTTP_REFERER} !^(.*)example.com/wp-login
RewriteCond %{HTTP_REFERER} !^(.*)example.com/backend
RewriteCond %{QUERY_STRING} !^ppdveygfrnn9ajgr49dx
RewriteCond %{HTTP_COOKIE} !^.*wordpress_logged_in_.*$
RewriteRule ^.*wp-admin/?|^.*wp-login/? /? [R,L]
RewriteCond %{QUERY_STRING} ^loggedout=true
RewriteRule ^.*$ /wp-login.php?ppdveygfrnn9ajgr49dx [R,L] 
RewriteCond %{QUERY_STRING} ^action=lostpassword$ [OR]
RewriteCond %{QUERY_STRING} ^action=logout$ [OR]
RewriteCond %{QUERY_STRING} ^action=rp$ [OR]
RewriteCond %{QUERY_STRING} ^action=postpass$
RewriteRule ^wp-login.php$ /? [L,R=301]
  • ppdveygfrnn9ajgr49dx – секретный ключ, через который можно будет перейти на страницу авторизации (любая случайная комбинация);
  • backend – альтернативный легко запоминаемый адрес админки (любое слово);
  • example.com – ваше доменное имя.
(Оценок – 10, средняя: 4,60)