Wordpress - защита админ панели
Материал из 1GbWiki.
Moofer (Обсуждение | вклад)
(Новая: == Общие сведения == В этой статье описываются варианты защиты административной панели Вашего сайта на...)
К следующему изменению →
Версия 09:48, 7 августа 2020
Содержание |
Общие сведения
В этой статье описываются варианты защиты административной панели Вашего сайта на CMS WordPress.
Решение №1
- Смена адреса админ панели (пример, с site.cc.ua/wp-admin на site.cc.ua/newadmin) через .htaccess.
ВЫПОЛНЕНИЕ. В корневом каталоге сайта найти файл .htaccess, открыть его и в начале добавить код:
<IfModule mod_rewrite.c> RewriteEngine On RewriteRule ^newadmin/?$ /wp-login.php?secretcode[R,L] RewriteCond %{HTTP_COOKIE} !^.*wordpress_logged_in_.*$ RewriteRule ^newadmin/?$ /wp-login.php?secretcode&redirect_to=/wp-admin/ [R,L] RewriteRule ^newadmin/?$ /wp-admin/?secretcode[R,L] RewriteCond %{SCRIPT_FILENAME} !^(.*)admin-ajax\.php RewriteCond %{HTTP_REFERER} !^(.*)site.cc.ua/wp-admin RewriteCond %{HTTP_REFERER} !^(.*)site.cc.ua/wp-login\.php RewriteCond %{HTTP_REFERER} !^(.*)site.cc.ua/newadmin RewriteCond %{QUERY_STRING} !^secretcode RewriteCond %{QUERY_STRING} !^action=logout RewriteCond %{QUERY_STRING} !^action=rp RewriteCond %{QUERY_STRING} !^action=postpass RewriteCond %{HTTP_COOKIE} !^.*wordpress_logged_in_.*$ RewriteRule ^.*wp-admin/?|^.*wp-login\.php /not_found [R,L] RewriteCond %{QUERY_STRING} ^loggedout=true RewriteRule ^.*$ /wp-login.php?secretcode[R,L] </IfModule>
ОБРАТИТЕ ВНИМАНИЕ! newadmin, в коде, нужно заменить на желаемый адрес, site.cc.ua заменить адресом своего сайта, secretcode заменить на свой набор символов, они в коде встречаются несколько раз.
Решение №2
- Ограничение доступа к админ панели с определённых адресов через .htaccess. в корне сайта
- Этот способ подойдёт тем, у кого статический IP адрес. Можно использовать как отдельно этот вариант, так и вместе с первым.
ВЫПОЛНЕНИЕ. В корневом каталоге сайта найти файл .htaccess, открыть его и в начале добавить код:
# Ограничение доступа с IP к определённой странице ErrorDocument 401 http://site.cc.ua/index.php?error=404 ErrorDocument 403 http://site.cc.ua/index.php?error=404 <IfModule mod_rewrite.c> RewriteEngine on RewriteCond %{REQUEST_URI} ^(.*)?wp-login\.php(.*)$ [OR] RewriteCond %{REQUEST_URI} ^(.*)?wp-admin$ RewriteCond %{REMOTE_ADDR} !^Ваши IP$ RewriteCond %{REMOTE_ADDR} !^Ваши IP$ RewriteCond %{REMOTE_ADDR} !^Ваши IP$ RewriteRule ^(.*)$ - [R=403,L] </IfModule>
ОБРАТИТЕ ВНИМАНИЕ! site.cc.ua, в коде, нужно заменить на свой адрес, вместо Ваши IP указать нужные IP.
Решение №2.1
- Ограничение доступа к админ панели с определённых адресов через .htaccess. в админ каталоге
- Этот способ подойдёт тем, у кого статический IP адрес. Можно использовать как отдельно этот вариант, так и вместе с первым.
ВЫПОЛНЕНИЕ. В корневом каталоге сайта найти файл .htaccess, открыть его и в начале добавить код:
# Ограничение доступа с IP к определённой странице ErrorDocument 401 http://site.cc.ua/index.php?error=404 ErrorDocument 403 http://site.cc.ua/index.php?error=404 <IfModule mod_rewrite.c> RewriteEngine on RewriteCond %{REQUEST_URI} ^(.*)?wp-login\.php(.*)$ [OR] RewriteCond %{REQUEST_URI} ^(.*)?wp-admin$ RewriteCond %{REMOTE_ADDR} !^Ваши IP$ RewriteCond %{REMOTE_ADDR} !^Ваши IP$ RewriteCond %{REMOTE_ADDR} !^Ваши IP$ RewriteRule ^(.*)$ - [R=403,L] </IfModule>
ОБРАТИТЕ ВНИМАНИЕ! site.cc.ua, в коде, нужно заменить на свой адрес, вместо Ваши IP указать нужные IP.