Защита админ панели WordPress при помощи файла .htaccess

Хаки
Инструкция, как при помощи простых манипуляций с файлом .htaccess раз и навсегда защитить свой блог от брутфорс атак на админ панель.

При помощи .htaccess можно установить http авторизацию или «двойную авторизазацию» для вашего сайта. Покажу на примере движка WordPress.

Вначале переходим сюда http://www.htaccesstools.com/htpasswd-generator/ и генерируем файл .htpasswd, указывая любые логин и пароль.

Генерируем файл .htpasswd

Сгенерированный файл помещаем в корень своего сайта.

Далее, в корневом файле .htaccess добавляем следующие строки:

AuthUserFile .htpasswd
AuthName "Private access"
AuthType Basic
<FilesMatch "wp-login.php">
Require valid-user
</FilesMatch>

Иногда, на некоторых хостинг провайдерах необходимо в первой строчке указывать полный путь до файла .htpasswd:

AuthUserFile /home/k/lucky/lucky-seo.com/public_html/.htpasswd

Чтобы узнать абсолютный путь от корня сервера нужно создать любой файл .php и вписать туда:

<?php
echo $_SERVER['DOCUMENT_ROOT'];
?>

и поместить в файл в корень, затем перейти на него.

Если все сделано правильно, то при переходе в админ панель сайта по адресу /wp-admin или /wp-login.php будет запрашиваться аутентификация:

Аутентификация

Запрет по IP

Также, при помощи .htaccess можно запретить доступ к админке wordpress по IP адресу.

Для того, чтобы сделать это, нужно в файл .htaccess, размещенном в корне, добавить специальный код:

<Files "wp-login.php">
    Order deny,allow
    Allow from All
    Deny from 00.00.00.00
</Files>

Где 00.00.00.00 — это IP адрес, которому вы хотите закрыть доступ к админке.

Но лучше закрыть доступ всем IP, кроме своего (если у вас постоянный IP), тогда код будет таким:

<Files "wp-login.php">
    Order deny,allow
    Deny from All
    Allow from 00.00.00.00
</Files>

Где вместо 00.00.00.00 — должен быть ваш IP адрес.

В случае, если вы хотите закрыть доступ всем, то нужно убрать строку Allow:

<Files "wp-login.php">
    Order deny,allow
    Deny from All
</Files>

Зачем это нужно?

Это самая простая и надежная защита от брутфорс атак на ваш сайт.

Если вы хотите защитить админ панель по максимуму, то дополнительно используйте плагин Сlearfy. Подробнее про плагин я писал в этом посте.

Оцените статью