Защита сайта с помощью .htaccess и .htpasswd: настройка пароля для wp-login.php

Защита сайта с помощью .htaccess и .htpasswd

Одним из способов защиты является установка пароля на сервер для дост��па к файлу wp-login.php.

Как это работает

Когда вы пытаетесь зайти на страницу wp-login.php, появляется дополнительное окно, где нужно будет ввести пароль. Если пароль введен правильно, сервер пропускает вас к файлу, и вы сможете войти в WordPress, как обычно.

Окно ввода пароля

Шаги по настройке защиты

Шаг 1: Создание файла .htpasswd

В корне вашего сайта создайте файл, в который запишите логины и пароли для доступа. Вы можете указать несколько пользователей:

kama:$apr1$Q9Gnetdv$pZyL9sGbN3ynC4k2oAZaQ.
andreas:$apr1$dHjB0/..$mkTTbqwpK/0h/rz4ZeN8M0
john:$apr1$IHaD0/..$N9ne/Bqnh8.MyOtvKU56j1

Количество пользователей не ограничено. Для генерации таких строк можете использовать специальные сервисы.

Шаг 2: Подключение файла .htpasswd

Откройте файл .htaccess, который должен находиться рядом с только что созданным файлом .htpasswd, и добавьте следующий код:


AuthName "Access Denied"
AuthType Basic
AuthUserFile /home/www/example.com/.htpasswd
require valid-user

Не забудьте изменить путь к файлу на /home/www/example.com.

Теперь попробуйте войти в WordPress. Вы увидите дополнительное окно для ввода логина и пароля. Эта защита предотвратит атаки методом перебора пароля.

Защита с помощью Nginx

Вы также можете настроить защиту на уровне Nginx. Для этого добавьте следующие директивы в файл конфигурации вашего домена:

  • auth_basic string | off;
  • auth_basic_user_file file;

Пример использования директив:

server {
    listen 443 ssl http2;
    server_name example.com;

    # другие директивы...

    location / {
        auth_basic "Restricted Access!";
        auth_basic_user_file /etc/nginx/htpasswd_example.com;

        index index.php;
        try_files $uri $uri/ /index.php?$args;
    }

    # другие директивы...
}

Теперь в файле /etc/nginx/htpasswd_example.com необходимо указать пароли. Формат файла следующий:

# комментарий
name1:password1
name2:password2:комментарий
kama:$wet1$F4HT89kL$f0gEMNpFKZNH4VggDMYTm0

Этот пример защитит ваш сайт паролем для всех запросов (за исключением статических файлов).


Таким образом, настройка пароля для доступа к странице входа в WordPress является эффективным способом повысить безопасность вашего сайта.

Leave a Reply

Ваш адрес email не будет опубликован. Обязательные поля помечены *